dc.contributor.advisor | Νταντογιάν, Χριστόφορος | |
dc.contributor.author | Μπαλαούρα, Σωτηρία | |
dc.contributor.author | Balaoura, Sotiria | |
dc.date.accessioned | 2018-11-19T11:49:19Z | |
dc.date.available | 2018-11-19T11:49:19Z | |
dc.date.issued | 2018-11 | |
dc.identifier.uri | https://dione.lib.unipi.gr/xmlui/handle/unipi/11578 | |
dc.description.abstract | Τα κακόβουλα λογισμικά συνήθως περιλαμβάνουν μηχανισμούς αποφυγής της ανίχνευσής τους. Η εισαγωγή (injection) σε διεργασία είναι μία τεχνική η οποία προκαλεί την εκτέλεση κακόβουλου κώδικα μέσω της εισαγωγής του κώδικα σε μια άλλη ενεργή διεργασία εξαναγκάζοντας την διεργασία να τον εκτελέσει με ένα τρόπο που δεν είναι προφανής στο χρήστη. Το πρόγραμμα που εισάγει τον κακόβουλο κώδικα ονομάζεται εισαγωγέας (injector).
Ο σκοπός αυτής της μεταπτυχιακής διατριβής είναι να προτείνει μεθοδολογίες ανίχνευσης κακόβουλου λογισμικού στη μνήμη. Όσο αφορά τον τύπο του κακόβουλου λογισμικού επικεντρώνεται σε δύο τεχνικές εισαγωγής σε διεργασία : Δημιουργία κοιλότητας στη διεργασία (Hollow process) και εισαγωγή απομακρυσμένου DLL (Remote DLL- Dynamic Link Library injection). Προκειμένου να επιτευχθεί η εισαγωγή, χρησιμοποιήθηκαν διάφορα προγράμματα (injector). Τα κακόβουλα λογισμικά εκτελέστηκαν σε εικονικές μηχανές με Windows 10 και πάρθηκαν αντίγραφα της μνήμης τους. Εκτελέστηκε Δυναμική Ανάλυση Μνήμης χρησιμοποιώντας το εργαλείο Volatility.
Η δημιουργία κοιλότητας στη διεργασία (Hollow process) παρουσιάζεται με λεπτομέρεια και εφαρμόστηκε παράγοντας διάφορα αντίγραφα μνήμης για δοκιμή. Προτείνεται μία πλήρης μεθοδολογία ανίχνευσης χρησιμοποιώντας το εργαλείο Volatility, η οποία αποκαλύπτει και ανιχνεύει τις ανωμαλίες που προκαλεί αυτή η τεχνική στη μνήμη. Αυτή η μεθοδολογία περιλαμβάνει και οργανώνει σε διακριτά βήματα την περισσότερη από τη βιβλιογραφία, σχετικά άρθρα στον παγκόσμιο ιστό και έρευνα πάνω στο θέμα. Εκτελέστηκε στα παραχθέντα αντίγραφα μνήμης και τα αποτελέσματά της επιβεβαιώθηκαν.
Η εισαγωγή απομακρυσμένου DLL (remote DLL injection) αναλύθηκε και εφαρμόστηκε σε διάφορα συστήματα παράγοντας διάφορα αντίγραφα μνήμης. Μια εντελώς νέα μεθοδολογία ανίχνευσης προτάθηκε, ελέγχθηκε, υλοποιήθηκε και δοκιμάστηκε. Η ιδέα υλοποιήθηκε με ένα script περίπου 200 γραμμών κώδικα δημιουργημένο με python. Αυτό εκτελείται μέσω του περιβάλλοντος του Volatility volshell πρόσθετου. Τα αποτελέσματα του κώδικα που δοκιμάστηκε σε 12 αντίγραφα μνήμης, τα οποία παρουσιάζονται σε σχετικό πίνακα, αποδεικνύουν ότι ο κώδικας λειτουργεί ικανοποιητικά. | el |
dc.format.extent | 90 | el |
dc.language.iso | en | el |
dc.publisher | Πανεπιστήμιο Πειραιώς | el |
dc.rights | Attribution-NonCommercial-NoDerivatives 4.0 Διεθνές | * |
dc.rights.uri | http://creativecommons.org/licenses/by-nc-nd/4.0/ | * |
dc.title | Process injection techniques and detection using the Volatility Framework | el |
dc.title.alternative | Τεχνικές εισαγωγής σε διεργασία και ανίχνευσή τους με τη χρήση του εργαλείου Volatility | el |
dc.type | Master Thesis | el |
dc.contributor.department | Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών. Τμήμα Ψηφιακών Συστημάτων | el |
dc.description.abstractEN | Malware usually incorporate mechanisms to avoid their detection. Process Injection is a technique that causes malicious code execution by injecting the code into a remote running process and forcing the process to execute it, in such a way that is concealed from the user. The program that performs the injection is called injector.
The purpose of this thesis is to propose methodologies to detect malware in memory. Regarding the malware type, it focuses on two different process injection techniques: Hollow process and Classic DLL (Dynamic Link Library) or otherwise called, Remote DLL. Various injectors are used. The malwares are executed on Windows 10 VMware virtual machines and their memory is acquired. Dynamic malware analysis is performed using the Volatility Framework.
The Hollow process injection technique is presented in detail and applied producing various testing memory images. A complete methodology of detection using the Volatility Framework is proposed that reveals and detects the anomalies that hollow process injection causes to the memory. This methodology has incorporated and organized in distinct steps most of the current literature, relevant articles on the web and research on the subject. The described steps are performed on the test images and the results are confirmed.
The Remote DLL injection is analyzed and injections are performed in various systems resulting various test memory images. A completely new methodology of detection is proposed, verified, implemented and tested. The whole idea is implemented in a python script of approximately 200 lines of code that has to be executed inside Volatility’s volshell plugin environment. The results of the script executed on 12 distinct memory images, presented in the relative table, indicate that the script works satisfactory. | el |
dc.contributor.master | Ασφάλεια Ψηφιακών Συστημάτων | el |
dc.subject.keyword | Remote or Classic DLL Injection | el |
dc.subject.keyword | Hollow Process Injection | el |
dc.subject.keyword | Volatility Framework | el |
dc.subject.keyword | PE file | el |
dc.subject.keyword | IAT (Import Address Table) | el |
dc.subject.keyword | Process injection | el |
dc.subject.keyword | Process replacement | el |
dc.subject.keyword | Memory analysis | el |
dc.subject.keyword | Injection detection | el |
dc.date.defense | 2018-11-05 | |