乐于分享
好东西不私藏

手把手配置 JADX-AI-MCP:人人都能用AI给手机App动手术

手把手配置 JADX-AI-MCP:人人都能用AI给手机App动手术

由于公众号推送机制调整,未设置星标的账号将被降低权重。

大家关注的号都多,为了咱们这点技术交流不被淹没,麻烦动动手指标个星⭐。

操作只需3步,看图一秒搞定。


特别声明

本文仅为个人技术记录,旨在促进技术交流与学习。请严格遵守国家相关法律法规,严禁将文中所述方法用于侵权盗版或破坏他人软件权益等行为。因使用本文内容引发的法律后果,由使用者自行承担。


一、前言

前段时间,我尝试用 Trae 连接 IDA,配合 DeepSeek 的 API 来分析二进制程序。那种感觉简直“无往而不利”——以前需要熬几个通宵才能啃下的硬骨头,现在几块钱甚至几毛钱就能搞定,有些复杂的算法甚至是我手动分析根本无从下手的。

前文链接如下:

从Ollydbg到Deepseek:一个“人菜瘾大”业余逆向爱好者的AI辅助实战(附提示词)

这种效率的提升让我上瘾。

既然 IDA 能接 AI,那安卓逆向的神器 JADX 能不能也接入AI?

经过一番摸索,我成功配置了 JADX-AI-MCP,并用它去掉了一款数独 App 的开屏广告。

整个过程丝滑得像是在跟助手聊天。为了防止遗忘,特此记录。


二、装备清单

工欲善其事,必先利其器。

这次我们需要以下软件:

1.Trae CN

这是字节的 IDE,内置免费模型,支持 MCP。

下载地址:

https://www.trae.cn/

2.Jadx

安卓反编译神器

下载地址:

https://github.com/skylot/jadx

3.Python (3.10以上的版本)

下载地址:

https://www.python.org/

4.JADX-AI-MCP

连接 JADX 与 AI 的桥梁

下载地址:

https://github.com/zinja-coder/jadx-ai-mcp

5. apktool

解包、打包、签名三件套

下载地址:

https://github.com/iBotPeaches/apktool

6. apktool-mcp-server

连接 apktool与 AI 的桥梁

下载地址:

https://github.com/zinja-coder/apktool-mcp-server

7.uber-apk-signer

自动签名工具

下载地址:

https://github.com/patrickfav/uber-apk-signer


三、配置实战:搭建 AI 逆向流水线

这部分稍微繁琐,但一次配置,永久受益。

1. 基础环境

JADX:绿色版,解压即可。注意路径不要有中文(我放在 D:\jadx)。

Python:安装 3.10 以上版本,记得勾选 Add to PATH。

2. 部署 JADX-AI-MCP

分为服务端和插件端,分别对应着JADX MCP Server和JADX-AI-MCP。

从 Releases 页面下载这2个软件

地址为: https://github.com/zinja-coder/jadx-ai-mcp/releases

目前最新版本为6.4

服务端,也就是jadx-mcp-server-6.4.0.zip,解压后进入目录,我是放在D:\jadx\jadx-mcp-server,打开cmd窗口,切换到这个文件夹,然后输入以下命令,安装Python的依赖:

pip install -r requirements.txt

插件端,也就是jadx-ai-mcp-6.4.0.jar

打开Jadx.exe,点击菜单栏的“插件”“管理插件”,在弹出的窗口中,选择“安装插件”。

点击“选择插件jar”,找到刚才下载的jadx-ai-mcp-6.4.0.jar,点击“安装”即可。

3. 打通 Trae (MCP 配置)

打开 Trae 的设置,找到 MCP,手动添加以下配置(注意修改你的路径,路径使用双反斜杠):

{  "mcpServers": {    "jadx-mcp-server": {      "command""C:\\Users\\a\\.local\\bin\\uv.exe",      "args": [        "--directory",        "D:\\jadx\\jadx-mcp-server",        "run",        "jadx_mcp_server.py"      ]    }  }}

4. 配置 Apktool 工具链

将下载下来的apktool-mcp-server-v3.0.1.zip解压缩,得到以下几个文件。

在Trae配置MCP,代码如下:

{    "mcpServers": {        "apktool-mcp-server": {            "command""C:\\Users\\a\\.local\\bin\\uv.exe"            "args": [                "--directory",                "D:\\jadx\\apktool-mcp-server",                "run",                "apktool_mcp_server.py"            ]        }    }}

5.将下载的apktool_3.0.2.jar和uber-apk-signer-1.3.0.jar放在D:\jadx。

至此,火力准备完毕。


四、实战环节:让 AI 干掉数独 App 的广告

目标:某款手机数独软件。

痛点:开屏广告烦人,答错题还要看广告才能继续。

(其实,去广告是安卓逆向中属于入门级别的操作,基本上有手就行,这次主要是用它来验证AI破解是否可行。)

Step 1: 侦察

用 MT 管理器看了一眼,没加壳。很好,省去了脱壳的步骤。

直接把 APK 拖进 JADX。

Step 2: 自然语言攻击

打开 Trae,连接上 MCP。

先尝试提问,看AI能否看到代码。

看来是很轻松地就获取到了整个安装包的内容。

那就继续提问,让它开始逆向。

Step 3: AI 的思考与行动

AI 很快遍历了 AndroidManifest.xml和活动(Activity)代码,定位到了 SplashActivity和广告 SDK 的初始化函数,并给出了解决方案。

Step 4: 执行修改

我接着下令:“请帮我修改 Smali 代码,注释掉广告加载的逻辑,或者直接跳转到主界面。”

AI 生成了修改后的代码补丁,使用 apktool重新打包,并用 uber-apk-signer签名。

Step 5: 验收成果

把新生成的 APK 装进模拟器。

结果,启动秒进主界面,不再有任何广告弹窗。完美!


五、写在最后

以前去广告,需要手动翻Smali,找切入点,还要担心报错崩溃。

现在,只需要一句话:“帮我把广告去掉”。

这不仅仅是工具的升级,更是交互方式的革命。

从2004年对着Ollydbg死磕汇编,到如今对着AI发号施令,变的是手段,不变的是那份折腾的乐趣。

AI不会取代逆向工程师,但会用AI的人,一定会取代不用AI的人。

大家如果有难以逆向的样本,欢迎在评论区留言,我用AI试试能不能搞定。


再次声明

本文仅为个人技术记录,旨在促进技术交流与学习。请严格遵守国家相关法律法规,严禁将文中所述方法用于侵权盗版或破坏他人软件权益等行为。因使用本文内容引发的法律后果,由使用者自行承担。


如果觉得本文有用,欢迎小伙伴们点“”和“推荐”,谢谢大家!