目錄簡述(脫殼前學習的知識、殼的歷史、脫殼方法)
第一代殼
第二代殼
第三代殼
第N代殼
簡述Apk文件結構Dex文件結構殼史殼的識別Apk文件結構

Dex文件結構

殼史
第一代殼 Dex加密
Dex字符串加密資源加密對抗反編譯反調試自定義DexClassLoader
第二代殼 Dex抽取與So加固
對抗第一代殼常見的脫殼法Dex Method代碼抽取到外部(通常企業版)Dex動態加載So加密
第三代殼 Dex動態解密與So混淆
Dex Method代碼動態解密So代碼膨脹混淆對抗之前出現的所有脫殼法
第四代殼 arm vmp(未來)
vmp殼的識別
1.用加固廠商特征:
娜迦: libchaosvmp.so , libddog.solibfdog.so愛加密:libexec.so, libexecmain.so梆梆: libsecexe.so, libsecmain.so , libDexHelper.so360:libprotectClass.so, libjiagu.so通付盾:libegis.so網秦:libnqshield.so百度:libbaiduprotect.so
2.基于特征的識別代碼

第一代殼內存Dump法文件監視法Hook法定制系統動態調試法內存Dump法內存中尋找dex.035或者dex.036/proc/xxx/maps中查找后,手動Dump

android-unpacker https://github.com/strazzere/android-unpacker

drizzleDumper https://github.com/DrizzleRisk/drizzleDumper 升級版的android-unpacker,read和lseek64代替pread,匹配dex代替匹配odex

IDA Pro + dumpDEXdumpDex https://github.com/CvvT/dumpDex

文件監視法Dex優化生成odexinotifywait-for-Android https://github.com/mkttanabe/inotifywait-for-Android監視文件變化

notifywait-for-Android https://github.com/mkttanabe/inotifywait-for-Android監視DexOpt輸出


Hook法Hook dvmDexFileOpenPartial http://androidxref.com/4.4_r1/xref/dalvik/vm/DvmDex.cpp


定制系統修改安卓源碼并刷機

DumpApk https://github.com/CvvT/DumpApk只針對部分殼

動態調試法IDA Pro



gdb gcore法
.gdbserver :1234 主站蜘蛛池模板: 高平市| 利津县| 饶平县| 西宁市| 清远市| 五峰| 从江县| 庆阳市| 云浮市| 石屏县| 河间市| 庄河市| 河曲县| 无极县| 呼图壁县| 福安市| 尚志市| 白城市| 朝阳区| 尉犁县| 五河县| 巴中市| 漠河县| 新和县| 庆元县| 民权县| 托克逊县| 岚皋县| 广平县| 正镶白旗| 聊城市| 兰考县| 上蔡县| 长葛市| 淮滨县| 神木县| 平谷区| 榆树市| 赣州市| 江永县| 华蓥市|