Ερευνητές προσθέτουν bugs σε λογισμικό για λογισμικό με λιγότερα bugs

Η ιδέα είναι να χρησιμοποιήσετε ορισμένα γνωστά τρωτά σημεία στον κώδικα, για να δείτε πόσα από αυτά ανακαλύπτονται από τα εργαλεία ανεύρεσης .

Αν με την ανάλυση υπάρχουν σφάλματα που αποφεύγουν τον εντοπισμό, οι προγραμματιστές θα μπορούν να δημιουργήσουν πιο αποτελεσματικά εργαλεία, σύμφωνα με τους ερευνητές στο Πανεπιστήμιο της Νέας Υόρκης, σε συνεργασία με άλλους από το Εργαστήριο του Lincoln MIT και το Πανεπιστήμιο του Northeastern.bugs

Οι ερευνητές δημιούργησαν μια νέα τεχνική με αυτοματοποιημένες ευπάθειες μεγάλης κλίμακας (large-scale automated addition ή LAVA), η οποία είναι μια τεχνική χαμηλού κόστους που προσθέτει τα τρωτά σημεία.

“Ο μόνος τρόπος για να αξιολογήσει κανείς ένα εργαλείο εύρεσης σφαλμάτων είναι να ελέγχει τον αριθμό των σφαλμάτων σε ένα πρόγραμμα, κάτι το οποίο κάνουμε με το LAVA”, αναφέρει ο Dolan-Gavitt, καθηγητής του τμήματος επιστήμης των υπολογιστών και μηχανικής στο NYU Tandon School of .

Η έρευνα έδειξε ότι τα εργαλεία ανεύρεσης σφαλμάτων που εξετάστηκαν είχαν ελάχιστα ποσοστά συνολικής ανίχνευσης (-2%). Συχνά δε τα σφάλματα δεν υπήρχαν καν εκεί, δημιουργώντας περιττές εργασίες καθώς οι ομάδες διασφάλισης ποιότητας προσπαθούσαν να καθορίσουν τα σφάλματα πριν κυκλοφορήσει το λογισμικό.

Η ομάδα προσθέτει σε προγράμματα ένα γνωστό αριθμό σφαλμάτων που αποκαλεί συνθετικά τρωτά σημεία και μιμούνται τις ιδιότητες των πραγματικών τρωτών σημείων που έχουν ανακαλυφθεί κατά καιρούς. Η δημιουργία αυτών των συνθετικών τρωτών σημείων είναι αυτοματοποιημένη και διεξάγεται κάνοντας “συνετές επεξεργασίες” (judicious edits) στον πηγαίο κώδικα των πραγματικών προγραμμάτων. Η αυτοματοποιημένη πλατφόρμα τους ήταν πολύ λιγότερο δαπανηρή από εναλλακτικές λύσεις με ειδικά σχεδιασμένα τρωτά σημεία που κοστίζουν δεκάδες χιλιάδες δολάρια.

  Προσοχή: Απάτες στην αρχική σελίδα του Edge

Με μια προσεκτική τοποθέτηση των bugs, οι ερευνητές μπορούσαν να δουν πόσο αξιόπιστοι ήταν οι ανιχνευτές ανάλογα με τα bug που ανακάλυπταν σε διάφορα τμήματα του κώδικα.

Να αναφέρουμε ότι μια σημαντική πρόκληση στο ήταν η δημιουργία εκατοντάδων χιλιάδων μοναδικών τρωτών σημείων (bugs) που δεν θα μπορούσαν να αναγνωρίσουν τα εργαλεία ανεύρεσης σφαλμάτων, για να μπορούν να εκτιμήσουν οι ερευνητές με ακρίβεια πόσο καλά λειτουργούν τα εργαλεία.

Η ερευνητική ομάδα σχεδιάζει να πραγματοποιήσει ένα διαγωνισμό το φετινό καλοκαίρι στον οποίο οι προγραμματιστές του λογισμικού ανεύρεσης σφαλμάτων θα μπορούν να κερδίσουν με βάση το πόσες πολλές ευπάθειες μπορούν να εντοπίσουν τα εργαλεία τους σε ένα κομμάτι του λογισμικού που είναι ευάλωτο με το LAVA. Η ιδέα είναι να βοηθήσουν τους προγραμματιστές να παράγουν καλύτερα προϊόντα.

Written by giorgos

Ο Γιώργος ακόμα αναρωτιέται τι κάνει εδώ....

Αφήστε μια απάντηση

Η ηλ. διεύθυνση σας δεν δημοσιεύεται. Τα υποχρεωτικά πεδία σημειώνονται με *

Το μήνυμα σας δεν θα δημοσιευτεί εάν:
1. Περιέχει υβριστικά, συκοφαντικά, ρατσιστικά, προσβλητικά ή ανάρμοστα σχόλια.
2. Προκαλεί βλάβη σε ανηλίκους.
3. Παρενοχλεί την ιδιωτική ζωή και τα ατομικά και κοινωνικά δικαιώματα άλλων χρηστών.
4. Διαφημίζει προϊόντα ή υπηρεσίες ή διαδικτυακούς τόπους .
5. Περιέχει προσωπικές πληροφορίες (διεύθυνση, τηλέφωνο κλπ).