
Malware-Mutation mit Reinforcement Learning und Generative Adversarial Networks

Der Zweck des Tools besteht darin, mithilfe künstlicher Intelligenz eine Malware (nur PE32) zu mutieren, um KI-gestützte Klassifikatoren zu umgehen, während die Funktionalität erhalten bleibt. In der Vergangenheit wurde auf diesem Gebiet bemerkenswerte Arbeit geleistet, wobei Forscher entweder Reinforcement Learning oder generative adversarial networks als ihre Waffen der Wahl einsetzten, um die Zustände einer Malware-Ausführungsdatei zu modifizieren und so Anti-Virus-Agenten zu täuschen. Unsere Lösung nutzt eine Kombination aus Deep Reinforcement Learning und GANs, um einige der Einschränkungen zu überwinden, die bei der unabhängigen Verwendung dieser Ansätze auftreten, wie unten dargestellt.
.png)
Finden Sie unsere vollständige Dokumentation für das Tool hier
⚠️ Da dieses Tool mit Malware-Dateien arbeitet, wird dringend empfohlen, eine virtuelle Maschine zu verwenden. Stellen Sie nach der Installation des Tools sicher, dass die Netzwerkverbindung getrennt ist.
Die folgenden Schritte führen Sie durch alle erforderlichen Installationen zur Einrichtung der Umgebung.
Klonen Sie das Repository.
git clone https://github.com/CyberForce/Pesidious
Wechseln Sie in das Projektverzeichnis.
cd Pesidious
Richten Sie eine virtuelle Umgebung mit Python 3.6 ein und aktivieren Sie sie
Es wird empfohlen, eine virtuelle Umgebung zu verwenden, um Konflikte zwischen Paketen zu vermeiden, die von verschiedenen Anwendungen genutzt werden.
Stellen Sie sicher, dass pip 8.1.1 installiert und eingerichtet ist.
Dies liegt daran, dass neuere Versionen von pip nicht gut mit der PyTorch-Bibliothek zusammenarbeiten.
pip install pip==8.1.1
Installieren Sie alle erforderlichen Bibliotheken, indem Sie die Datei requirements.txt installieren.
pip install -r pip_requirements/requirements.txt
Die Ausgabe des GAN wurde bereits gespeichert als (RL_Features/adverarial_imports_set.pk und RL_Features/adverarial_sections_set.pk), die verwendet werden, wenn Imports und Sections zur Malware für die Mutation hinzugefügt werden.
Sie können den Beispiel-Klassifikator testen, um Malware-Dateien zu bewerten.
python classifier.py -d /path/to/directory/with/malware/files
Führen Sie das Python-Skript mutate.py aus, um Ihre Malware-Beispiele zu mutieren.
python mutate.py -d /path/to/directory/with/malware/files
Die mutierten Malware-Dateien werden in einem Verzeichnis namens Mutated_malware im folgenden Format gespeichert:
Mutated_malware/mutated_<name-of-the-file>
Sobald die Malware-Dateien mutiert sind, können Sie den Klassifikator erneut ausführen, um die mutierte Malware zu bewerten.
python classifier.py -d Mutated_malware/
⚠️ WARNUNG: Dieser Abschnitt befindet sich derzeit im Aufbau. Wir entschuldigen uns für etwaige Unannehmlichkeiten. Bitte fahren Sie mit dem nächsten Abschnitt fort. hier klicken
pip install -r requirements.txt führt zu einem Fehler.
Lösung:
pip install tqdm
pip install sklearn
pip install lief
ModuleNotFoundError: No module named 'tensorboardX' Fehler beim Ausführen des Skripts python main_malgan.py.
Lösung:
pip install tensorboardX
Fehler bei der Ausführung von import-append, section-append (nicht gefunden)
Lösung Geben Sie diesen ausführbaren Dateien Ausführungsberechtigung mit den folgenden Befehlen in Ihrem Terminal:
cd portable-executable/
chmod 777 project-add-sections/bin/Debug/project-append-section
chmod 777 project-add-imports/bin/Debug/project-append-imports
Anderson, H., Kharkar, A., Filar, B., Evans, D. and Roth, P. (2018). Learning to Evade Static PE Machine Learning Malware Models via Reinforcement Learning. [online] arXiv.org. Available at: https://arxiv.org/abs/1801.08917.
Docs.microsoft.com. (n.d.). PE Format - Windows applications. [online] Available at: https://docs.microsoft.com/en-us/windows/win32/debug/pe-format#general-concepts.
Fang, Z., Wang, J., Li, B., Wu, S., Zhou, Y. and Huang, H. (2019). Evading Anti-Malware Engines With Deep Reinforcement Learning. [online] Ieeexplore.ieee.org. Available at: https://ieeexplore.ieee.org/abstract/document/8676031 [Accessed 25 Aug. 2019]. https://resources.infosecinstitute.com. (2019).
Malware Researcher’s Handbook (Demystifying PE File). [online] Available at: https://resources.infosecinstitute.com/2-malware-researchers-handbook-demystifying-pe-file/#gref.
Hu, W. and Tan, Y. (2018). Generating Adversarial Malware Examples for Black-Box Attacks Based on GAN. [online] arXiv.org. Available at: https://arxiv.org/abs/1702.05983.