Active Members Fi8sVrs Posted September 15, 2011 Active Members Report Posted September 15, 2011 reverse engineering framework in pythonThis is a meta repository for :miasm: miasm - reverse engineering framework - Google Project Hostingelfesteem: elfesteem: Summarygrandalf: https://github.com/bdcht/grandalf/What is Miasm?Miasm is a a free and open source (GPLv2) reverse engineering framework. Miasm aims at analyzing/modifying/generating binary programs. Here is a non exhausting list of features:opening/modifying/generating PE/ELF 32/64 le/be using ElfesteemAssembling/Disassembling ia32/ppc/armRepresenting assembly semantic using intermediate languageEmulating using jit (dynamic code analysis, unpacking, ...)Expression simplification for automatic de-obfuscationGraphic disassembler using Grandalf...How does it work?Miasm embed its own disassembler, intermediate language and instruction semantic. It is written in Python.To emulate code, it uses libtcc to jit C code generate from intermediate representation. It can emulate shellcodes, parts of binaries. Python callback can be executed to emulate library functions.DocumentationDocumentation can be found under =doc/=.Obtain Miasmclone repo: smiasm - reverse engineering framework - Google Project HostingSoftware requirementsMiasm uses:Grandalf (https://github.com/bdcht/grandalf) in order to render graphical disassembler.Modified libtcc (TCC : Tiny C Compiler) to Jit code for emulation mode. see belowpython-ply for parsingnumpypython-virtualenvpython-devpython-qt4ConfigurationThe libtcc needs a little fix in makefile to be used on 64bit systemsremove libtcc-dev from the system to avoid conflictsclone git://repo.or.cz/tinycc.gitedit makefileadd option -fPIC to the CFLAGS definition./configure && make && make installTo install:hg clone https://code.google.com/p/smiasm/ smiasm cd smiasmmakemake installTo install in virtual env:hg clone https://code.google.com/p/smiasm/ smiasm cd smiasmmakemake virtinstallsource vmiasm/bin/activateTo test (after install or virtual install):cd miasm/example/python disas_and_graph.py /bin/lsNote:retry on github fail...MiscMan, does miasm has a link with rr0d?Yes! crappy code and uggly documentation.Source Quote