
Mutación de malware mediante aprendizaje por refuerzo y redes generativas adversariales

El propósito de la herramienta es usar inteligencia artificial para mutar una muestra de malware (solo PE32) para evadir clasificadores impulsados por IA mientras se mantiene su funcionalidad intacta. En el pasado, se ha realizado un trabajo notable en este dominio con investigadores que utilizan el aprendizaje por refuerzo o las redes generativas adversariales como armas de elección para modificar los estados de un ejecutable de malware con el fin de engañar a los agentes antivirus. Nuestra solución utiliza una combinación de aprendizaje por refuerzo profundo y GANs para superar algunas de las limitaciones que se enfrentan al usar estos enfoques de forma independiente, como se muestra a continuación.
.png)
Encuentra nuestra documentación completa para la herramienta aquí
⚠️ Dado que esta herramienta maneja archivos de malware, se recomienda encarecidamente usar una máquina virtual. Después de la instalación de la herramienta, asegúrate de desconectarte de la red.
Los siguientes pasos te guiarán a través de todas las instalaciones necesarias para configurar el entorno.
Clona el repositorio.
git clone https://github.com/CyberForce/Pesidious
Muévete al directorio del proyecto.
cd Pesidious
Configura y activa un entorno virtual con Python 3.6
Se recomienda usar un entorno virtual para evitar conflictos entre paquetes utilizados por diferentes aplicaciones.
Asegúrate de tener pip 8.1.1 instalado y configurado.
Esto se debe a que las versiones posteriores de pip no funcionan bien con la biblioteca PyTorch.
pip install pip==8.1.1
Instala todas las bibliotecas requeridas, instalando el archivo requirements.txt.
pip install -r pip_requirements/requirements.txt
La salida de la GAN ya ha sido almacenada como (RL_Features/adverarial_imports_set.pk y RL_Features/adverarial_sections_set.pk) que se usarán para agregar importaciones y secciones al malware para la mutación.
Puedes probar el clasificador de muestras para puntuar archivos de malware.
python classifier.py -d /path/to/directory/with/malware/files
Ejecuta el script de Python mutate.py para mutar tus muestras de malware.
python mutate.py -d /path/to/directory/with/malware/files
Los archivos de malware mutados se almacenarán en un directorio llamado Mutated_malware en el siguiente formato
Mutated_malware/mutated_<name-of-the-file>
Una vez que los archivos de malware estén mutados, puedes ejecutar el clasificador nuevamente para puntuar el malware mutado.
python classifier.py -d Mutated_malware/
⚠️ ADVERTENCIA: Esta sección está actualmente en construcción. Nos disculpamos por cualquier inconveniente causado. Por favor, continúa a la siguiente sección. haz clic aquí
pip install -r requirements.txt te da un error.
Solución:
pip install tqdm
pip install sklearn
pip install lief
Error ModuleNotFoundError: No module named 'tensorboardX' al ejecutar el script python main_malgan.py.
Solución:
pip install tensorboardX
Error con la ejecución de import-append, section-append (no encontrado) Solución Dale permiso de ejecución a estos ejecutables usando los siguientes comandos en tu 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. y Roth, P. (2018). Learning to Evade Static PE Machine Learning Malware Models via Reinforcement Learning. [en línea] arXiv.org. Disponible en: https://arxiv.org/abs/1801.08917.
Docs.microsoft.com. (s.f.). PE Format - Windows applications. [en línea] Disponible en: https://docs.microsoft.com/en-us/windows/win32/debug/pe-format#general-concepts.
Fang, Z., Wang, J., Li, B., Wu, S., Zhou, Y. y Huang, H. (2019). Evading Anti-Malware Engines With Deep Reinforcement Learning. [en línea] Ieeexplore.ieee.org. Disponible en: https://ieeexplore.ieee.org/abstract/document/8676031 [Consultado el 25 de agosto de 2019].
https://resources.infosecinstitute.com. (2019). Malware Researcher’s Handbook (Demystifying PE File). [en línea] Disponible en: https://resources.infosecinstitute.com/2-malware-researchers-handbook-demystifying-pe-file/#gref.
Hu, W. y Tan, Y. (2018). Generating Adversarial Malware Examples for Black-Box Attacks Based on GAN. [en línea] arXiv.org. Disponible en: https://arxiv.org/abs/1702.05983.