
Émulateur de shellcode écrit avec Unicorn Framework avec Process Dump Emulation Environment
ShellcodeEmulator émule le shellcode Windows à l'aide de vidages mémoire de processus windbg. Vous pouvez fournir un shellcode à analyser avec n'importe quelle image de vidage de processus Windows. L'outil émule autant que possible le code en mode utilisateur en utilisant les octets du shellcode et l'image de vidage fournie.
Vous pouvez ajouter vos propres gestionnaires d'appels système ou tout gestionnaire entre les appels API utilisés par le shellcode et la couche noyau. Cela peut fournir une vue complète de la pile utilisateur. Cela vous permettra d'examiner les shellcodes qui contournent les hooks API laxistes à un niveau de pile d'appels plus élevé.
Installer WinDbg
Installer ShellcodeEmulator
pip install git+https://github.com/ohjeongwook/ShellcodeEmulator --upgrade
python -m pykdfix.fix_windbg_files
> python -m shellcode_emulator.run
Usage: run.py [options] args
Options:
-h, --help afficher ce message d'aide et quitter
-b IMAGE_BASE, --image_base=IMAGE_BASE
Adresse de base pour charger le shellcode dans la mémoire du processus
-d DUMP_FILENAME, --dump_filename=DUMP_FILENAME
Un fichier de vidage de processus provenant d'un processus Windows normal
-l LIST_FILENAME, --list_filename=LIST_FILENAME
Un nom de fichier liste généré par IDA (peut être utilisé
à la place du nom de fichier shellcode)
python -m shellcode_emulator.run wincalc.bin -d notepad.dmp