smali_emulator

by evilsocket

evilsocket / smali_emulator

This software will emulate a smali source file generated by apktool.

443 Stars 102 Forks Last release: Not found GNU General Public License v3.0 67 Commits 0 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

Smali Emulator

This software will emulate a smali source file generated by apktool, it is intended to be used as a quick and dirty way to defeat various types of encryption and obfuscation while reversing an APK.

This project is very much a work in progress, feel free to submit a patch.

As an example, you can run:

cd utils;
./exec.py -i decryptor.smali -m field5 \
-p '{"p0":[-62,-99,-106,-125,-123,-105,-98,-37,-105,-97,-103,-41,-118,-97,-113,-103,-109,-104,-115,111,98,103,35,52],"p1": 19}'

Testing

The project has recently be migrated to pytest for infrastructure of tests. To run tests, do:

pytest -v

The project is not Python 3 compatible yet, but should be in a near future.

Note

Explanation of the "why" and "how" can be found here.

This is highly experimental, a very small subset of the Dalvik opcodes is currently supported, see the

smali/opcodes.py
file for more details.

OpCodes List (Feel free to request access)

https://docs.google.com/spreadsheets/d/1RfB_LsBoYnJxOh-lDCSMR0mfLBl1UlwdW9eKw2p03DY/edit?usp=sharing

License

Copyright (c) 2016 Simone Margaritelli | Twitter | Blog
Released under the GPL 3 license.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.