第160篇:AI联动IDA Pro MCP 实战逆向分析加密混淆 APK的通信数据包解密

Part1 前言
大家好,我是ABC_123。最近听说 IDA Pro MCP 非常强大,一开始我其实是半信半疑的。于是索性亲自上手试了一下,我的认知又被刷新了,现在AI发展得真是太强了。我特意挑选了一个难度不低的 APK:Java 代码经过混淆处理,连 so 文件也做了加密和混淆;结果AI分析不到1个小时,竟然连加密数据包的解密函数都被还原并写了出来,不可思议。文末有知识星球二维码,欢迎大家扫码加入,一起学习进步。

Part2 技术研究过程
-
前期准备工作
首先,经过一系列折腾,成功抓到了apk的通信数据包,如下图所示。

使用jadx打开apk,然后将参数名r0SwHu作为关键字进行搜索,定位到关键java代码。

通过分析可以看到,核心逻辑被封装在 BeinasongTowerHelper 类中。

最终涉及的数据处理函数 drj 和 epj 都是通过 System.loadLibrary 调用 so 文件实现的。也就是说,加密解密逻辑实际被封装在 so 文件里。

最后,我以压缩包形式打开 APK 文件,定位到对应的 so 文件。这里很可能是加密算法的具体实现,而其他 so 文件基本都是官方标准库。

接下来使用IDA Pro 9.3 打开这个so文件,文件分析完毕后,在Plugins中开启MCP Server服务端。

随后,我配置好 Claude,并通过 Claude 调用 IDA Pro 对 so 文件进行逆向分析。在分析之前,需要确认 IDA Pro MCP 的配置是否正确,这一步非常关键。

-
构造AI提示词
配置确认无误后,开始对 APK 中的加密函数进行自动分析,提示词如下:“这个是apk反编译后的代码,epj是加密函数,drj是解密函数,请参考这段代码,从IDA Pro MCP中分析的so文件中,找到这两个函数的具体实现”。

接下来,使用 IDA Pro MCP 的 list_funcs 功能,快速定位 JNI 函数的调用情况。通过 decompile 功能,我逐步分析了函数调用流程,并定位到两个核心函数的实现。

最终经过几分钟Claude + IDA Pro + MCP的联动分析,成功找到了两个函数的实现。加密函数 epj,对应着JNI 入口:sub_1AF34;解密函数 drj JNI 入口:sub_1B534。

接下来,AI继续分析 sub_14B5C 函数的实现。通过 IDA Pro MCP,可以快速查看函数的 Base64 相关逻辑,进一步使用 MCP 的 analyze_function 和 decompile 功能,逐步解析了函数内部的处理流程,包括 sub_165D8 和 sub_177F0 等子函数。

接下来我们回到IDA Pro界面中,手工看一下sub_1B534函数的实现,可以看到加密过程完全是加密混淆的,基本上看不懂。对于这种情况一般只能动态调试,慢慢分析把算法解开。

但是有了AI就不一样了,我们不需要去理解它的具体实现,直接给出如下提示词:“使用python还原sub_1B534函数”。

最终还原出来的python代码并不能解密,最后修改提示词,"这个是需要解密的从apk中抓到的文本,可能需要url解码一次",并将前面我们抓包到apk通信加密数据包作为样本,供AI去试错解密。


最终,通过 Python 脚本执行解密逻辑,我成功将 APK 中的加密数据包还原为明文,并输出为可直接使用的 JSON 格式数据。

Part3 总结
1. 时代真的变了,AI 的发展速度已经超乎想象。
2. 本次案例通过结合 so 文件分析、Base64/Salt 处理解析及 JNI 调用追踪,实现加密函数 epj 与解密函数 drj 的完整还原。
3. 借助 Claude + IDA Pro + MCP,能够快速定位 APK 中的关键加密函数,节省手动逆向分析的大量时间。
4. 欢迎大家扫码加入知识星球,一起学习进步。

知识星球分为以下几个板块:

知识星球的每一篇PDF文档、PPT文档都细心整理,配有3到9张关键截图。

知识星球的每一个工具都是精心筛选,都附带有实测评价及使用说明。

欢迎大家扫码加入知识星球,一起学习进步!


公众号专注于网络安全技术分享,包括APT事件分析、红队攻防、蓝队分析、渗透测试、代码审计等,每周一篇,99%原创,敬请关注。
Contact me: 0day123abc#gmail.com
OR 2332887682#qq.com
(replace # with @)
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐


所有评论(0)