
Shellcode-Emulator, geschrieben mit Unicorn Framework, mit Process Dump Emulation Environment
ShellcodeEmulator emuliert Windows-Shellcode mithilfe von WinDbg-Prozessspeicherabbildern. Sie können Shellcode zur Analyse mit einem beliebigen Windows-Prozessabbild bereitstellen. Das Werkzeug emuliert so viel des Benutzermodus-Codes wie möglich, wobei es die Shellcode-Bytes und das bereitgestellte Abbild nutzt.
Sie können eigene Syscall-Handler oder beliebige Handler zwischen den vom Shellcode verwendeten API-Aufrufen und der Kernel-Ebene hinzufügen. Dies bietet eine vollständige Ansicht des Benutzer-Stacks und ermöglicht die Untersuchung von Shellcode, der lockere API-Hooks auf einer höheren Aufrufstack-Ebene umgeht.
Installieren Sie WinDbg
Installieren Sie 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 show this help message and exit
-b IMAGE_BASE, --image_base=IMAGE_BASE
Image base to load the shellcode inside process memory
-d DUMP_FILENAME, --dump_filename=DUMP_FILENAME
A process dump file from normal Windows process
-l LIST_FILENAME, --list_filename=LIST_FILENAME
A list filename generated by IDA (this can be used
instead of shellcode filename)
python -m shellcode_emulator.run wincalc.bin -d notepad.dmp