前言
暴力破解法 frida-dexdump 的使用介紹
提示:以下是本篇文章正文內容,下面案例可供參考
一、殼的發展
⼀代整體型殼:採⽤ Dex 整體加密,動態加載運⾏的機制;
⼆代函數抽取型殼:粒度更細,將⽅法單獨抽取出來,加密保存,解密執⾏;
三代 VMP、Dex2C 殼:獨⽴虛擬機解釋執⾏、語義等價語法遷移,強度最⾼。
先說最難的 Dex2C ⽬前是沒有辦法還原的,只能跟蹤進⾏分析; VMP 虛擬機解釋執⾏保護的是映射表,只要⼼思細、功夫深,是可以將映射表還原的;⼆代殼函數抽取⽬前是可以從根本上進⾏還原的, dump 出所有的運⾏時的⽅法體,填充到 dump 下來的 dex 中去的,這也是的核⼼原理。
二、frida-dexdump使用步驟
1.安裝庫
pip install frida-dexdump
2.原理
利用frida hook libart.so中的OpenMemory方法,拿到內存中dex的地址,計算出dex文件的大小,從內存中將dex導出。
ps:查看OpenMemory的導出名稱,可以將手機中的libart.so通過adb pull命令導出到電腦,然後利用: nm libart.so |grep OpenMemory命令來查看到出名。 其中android 10爲/apex/com.android.runtime/lib/libdexfile.so方法爲OpenCommon。
3.上手
frida-dexdump -FU //直接注入前臺應用
frida-dexdump -U -f com.app.pkgname //指定包名
總結
frida-dexdump 基本上脫殼還是比較方便的!非常簡單
————————————————