APP基于Frida脱壳

admin 2022年10月16日18:24:52评论175 views字数 2542阅读8分28秒阅读模式

1.Hook OpenMemory的导出方法名

适用于Android6、Android7、Android8、Android9的脱壳

/data/lib/libart.sonm libart.so |grep OpenMemory


Android7.1.2_ZN3art7DexFile10OpenMemoryEPKhjRKNSt3__112basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEjPNS_6MemMapEPKNS_10OatDexFileEPS9_
Android9.0_ZN3art7DexFile10OpenMemoryERKNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEjPNS_6MemMapEPS7_


Interceptor.attach(Module.findExportByName("libart.so", "_ZN3art7DexFile10OpenMemoryEPKhjRKNSt3__112basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEjPNS_6MemMapEPKNS_10OatDexFileEPS9_"), {    onEnter: function (args) {
//dex起始位置 var begin = args[1]                 //修改一下dex起始位置var begin = this.context.x0
//打印magic console.log("magic : " + Memory.readUtf8String(begin)) //dex fileSize地址 var address = parseInt(begin,16) + 0x20 //dex 大小 var dex_size = Memory.readInt(ptr(address))
console.log("dex_size :" + dex_size) //dump dex到/sdcard/目录下 var file = new File("/sdcard/xxx.xxx.xxx/" + dex_size + ".dex", "wb") file.write(Memory.readByteArray(begin, dex_size)) file.flush() file.close() }, onLeave: function (retval) { if (retval.toInt32() > 0) { /* do something */ } }});


2.Hook OpenCommon的导出方法名

/data/lib/libart.sonm libart.so |grep OpenCommon


Android8.1.0(方法的签名)_ZN3art7DexFile10OpenCommonEPKhmRKNSt3__112basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEjPKNS_10OatDexFileEbbPS9_PNS0_12VerifyResultE
Android9.0(方法的签名)_ZN3art13DexFileLoader10OpenCommonEPKhjS2_jRKNSt3__112basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEjPKNS_10OatDexFileEbbPS9_NS3_10unique_ptrINS_16DexFileContainerENS3_14default_deleteISH_EEEEPNS0_12VerifyResultE


nm libdexfile.so |grep OpenCommon


Android10libdexfile.so/apex/com.android.runtime/lib/libdexfile.so/apex/com.android.runtime/lib64/libdexfile.so_ZN3art13DexFileLoader10OpenCommonEPKhjS2_jRKNSt3__112basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEjPKNS_10OatDexFileEbbPS9_NS3_10unique_ptrINS_16DexFileContainerENS3_14default_deleteISH_EEEEPNS0_12VerifyResultE


APP基于Frida脱壳


https://github.com/chzphoenix/frida-unpackhttps://www.cnblogs.com/wuxianyu/p/14274667.html


3.定制Android10以上系统脱壳

APP基于Frida脱壳


推荐阅读

Frida逆向分析APP实战
Objection动态分析App
Frida Hook的使用方法
Android逆向分析基础(一)
Android逆向分析基础(二)
使用frida-net玩转frida-rpc
内置frida hook到Android系统
Objection高效对APP逆向分析实践
Android10系统内置frida相关工具实战
frida hook so导出或未导出函数的方法
Android APP开发之frida hook自吐算法
零基础培训课程+技术指导服务(技术交流社群)
定制Android系统(干掉Root检测和Frida检测)
Android渗透测试frida-Brida插件加解密实战
使用frida hook对app的常用关键代码进行定位
零基础学编程/学逆向/过检测(frida实战视频课程)
Linux+Windows安装r2Frida环境的配置及使用方法
内置frida-gadget so文件和frida-server可执行文件到系统(Android10)
Android10系统定制配置fridaserver后台进程(Moto Z2 Force机型-libqsap_sdk问题)


APP基于Frida脱壳


APP基于Frida脱壳

原文始发于微信公众号(哆啦安全):APP基于Frida脱壳

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年10月16日18:24:52
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   APP基于Frida脱壳https://cn-sec.com/archives/1352325.html

发表评论

匿名网友 填写信息