【APP 逆向百例】某当劳 Frida 检测
💡
原文中文,约6800字,阅读约需16分钟。
📝
内容提要
本文介绍了如何使用Frida工具对某当劳APP进行逆向分析,重点在于hook动态库加载和线程创建。通过分析libDexHelper.so和libmsaoaidsec.so文件,成功绕过检测,完成Frida检测分析。
🎯
关键要点
- 文章内容仅供学习交流,不用于商业用途。
- 逆向目标为某当劳APP,版本为7.0.15.1。
- 使用Frida工具进行动态库加载和线程创建的hook分析。
- 首先hook dlopen方法以监控动态库加载情况。
- 分析libDexHelper.so文件,发现其用于Frida检测。
- 通过hook pthread_create监控线程创建情况。
- 使用GPT分析得知pthread_create最终调用clone方法。
- 直接hook clone函数以获取线程函数地址和模块信息。
- 成功输出libDexHelper.so的线程函数。
- 尝试nop掉相关函数以绕过检测。
- 最终成功绕过libmsaoaidsec.so的检测。
- 文章中相关hook脚本将分享给需要的读者,仅供学习交流。
❓
延伸问答
如何使用Frida工具对某当劳APP进行逆向分析?
使用Frida工具可以通过hook动态库加载和线程创建来进行逆向分析,首先hook dlopen方法监控动态库加载情况。
在逆向分析中,如何绕过Frida检测?
可以通过分析libDexHelper.so文件,hook pthread_create和clone方法,最终nop掉相关函数来绕过Frida检测。
libDexHelper.so文件的作用是什么?
libDexHelper.so文件用于Frida检测,是某梆加固的一部分。
如何监控动态库的加载情况?
可以通过hook dlopen方法来监控动态库的加载情况,记录加载的库文件路径。
在Frida分析中,如何获取线程函数的地址和模块信息?
通过hook clone函数,可以获取线程函数的地址和所属模块信息。
文章中提到的hook脚本有什么用途?
hook脚本用于学习和交流,帮助用户理解如何进行Frida检测分析。
➡️