Εντοπισμός Packer σε εκτελέσιμα αρχεία

Οι επιθέσεις κακόβουλων λογισμικών αποτελούν ένα συχνό φαινόμενο για πολλά χρόνια στην κοινωνία των υπολογιστών και εξελίσσονται μέρα με τη μέρα για να διαπεράσουν τις εύρωστες άμυνες των μοντέρνων αντιϊκών συστημάτων. Πολλοί συγγραφείς κακόβουλου λογισμικού, για να αποκρύψουν την κακόβουλη συμπεριφ...

Πλήρης περιγραφή

Λεπτομέρειες βιβλιογραφικής εγγραφής
Κύριος συγγραφέας: Σταγκίδης, Αθανάσιος
Άλλοι συγγραφείς: Παυλίδης, Γεώργιος
Μορφή: Thesis
Γλώσσα:Greek
Έκδοση: 2016
Θέματα:
Διαθέσιμο Online:http://hdl.handle.net/10889/9786
Περιγραφή
Περίληψη:Οι επιθέσεις κακόβουλων λογισμικών αποτελούν ένα συχνό φαινόμενο για πολλά χρόνια στην κοινωνία των υπολογιστών και εξελίσσονται μέρα με τη μέρα για να διαπεράσουν τις εύρωστες άμυνες των μοντέρνων αντιϊκών συστημάτων. Πολλοί συγγραφείς κακόβουλου λογισμικού, για να αποκρύψουν την κακόβουλη συμπεριφορά των προγραμμάτων τους και να προσπεράσουν την διάγνωση των αντιϊκών, χρησιμοποιούν τεχνικές για να περιπλέξουν τον κώδικα τους και να κάνουν τη διαδικασία της αντίστροφης μηχανικής περίπλοκη και δύσκολη. Μια από αυτές είναι η χρήση packers για να συμπιέσουν και/ή να κρυπτογραφήσουν το αυθεντικό πρόγραμμα, κάνοντας το έτσι δύσκολο να αναλυθεί. Ο παραδοσιακός τρόπος άμυνας πολλών εμπορικών και ελεύθερων αντιϊκών εφαρμογών είναι η διάγνωση υπογραφών, η οποία αν και είναι γρήγορη και αποτελεσματική για κακόβουλο λογισμικό που είναι ήδη γνωστό, δεν μπορεί να χρησιμοποιηθεί για νέες απειλές και μπορεί να νικηθεί εύκολα από τις δυνατότητες μεταμόρφωσης των packers. Η πλειονότητα των εργαλείων διάγνωσης packer που έχει αναπτυχθεί έως τώρα, χρησιμοποιεί επίσης διάγνωση υπογραφών και υποφέρει από τα ίδια προβλήματα. Μια άλλη μέθοδος που έχει προταθεί βασίζεται στην δυναμική ανάλυση του πακεταρισμένου αρχείου με σκοπό τον εντοπισμό του αλγορίθμου πακεταρίσματος κατά τη διάρκεια της εκτέλεσης του προγράμματος (συγκεκριμένα κατά την φάση ξεπακεταρίσματος-unpacking). Έχουν δημοσιευτεί μερικές εργασίες οι οποίες μελετούν frameworks και λύσεις με τη μορφή λογισμικού προς αυτή τη κατεύθυνση. Παρ’ όλα αυτά η δυναμική ανάλυση μπορεί να γίνει χρονοβόρα και επικίνδυνη αν το κακόβουλο αρχείο ξεφύγει από το περιβάλλον του αναλυτή. Σε αυτή την διατριβή προτείνουμε ένα εργαλείο διάγνωσης packer, το οποίο εξάγει χαρακτηριστικά από το επιλεγμένο αρχείο με στατική ανάλυση και τότε με τη βοήθεια κάποιων ευρετικών μπορεί να διαγνώσει αν είναι πακεταρισμένο ή όχι και αν είναι πακεταρισμένο προχωρά στην διαδικασία αναγνώρισης του λογισμικού packer που χρησιμοποιήθηκε. Επιπλέον διεξαγάγαμε μερικά πειράματα με κανονικά πακεταρισμένα και μη πακεταρισμένα αρχεία καθώς και με πακεταρισμένο και μη πακεταρισμένο κακόβουλο λογισμικό. Σε αυτή τη πειραματική μελέτη αποδεικνύουμε ότι το εργαλείο μας, με όνομα PackDetect, μπορεί να πετύχει υψηλά ποσοστά διάγνωσης σε σύγκριση με δυο δημοφιλείς διαγνώστες packer.