一.加载型壳
二.代码抽取型壳
(一)、内存重组脱壳
https://github.com/zyq8709/DexHunter DexHunter ----->DumpClass()方法
此方法针对非一次性解密的Dex结构进行了遍历加载,从而有效实现内存重组。
三、代码混淆壳
LLVM 原生程序混淆 llvm:pass
Obfuscator-LLVM是基于LLVM pass的开源代码混淆壳
https://github.com/obfuscator-llvm/obfuscator
https://security.tencent.com/index.php/blog/msg/112
指令替换、控制流平坦化、伪照控制流
一、指令替换还原
dagger https://github.com/repzret/dagger
垃圾指令的消除、https://github.com/tkmru/nao nao
二、控制流平坦化混淆的还原
Obfuscator-LLVM逆向还原
http://blog.quarkslab.com/deobfuscation-recovering-an-ollvm-protected-program.html