背景故事:偶然的机会,我发现了一个能在vscode里边就能反编译和重打包apk的工具-apklab(6adK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6m8f1p5E0x3j5h3u0Q4x3V1k6m8f1p5E0x3j5h3u0Q4x3U0W2Q4x3V1y4Q4c8e0g2Q4z5o6g2Q4b7U0k6Q4c8e0k6Q4b7f1y4Q4b7e0q4Q4x3V1y4Q4c8e0N6Q4z5f1y4Q4z5p5u0Q4c8e0g2Q4z5o6S2Q4b7U0m8Q4c8e0g2Q4b7V1g2Q4b7f1g2Q4c8e0c8Q4b7V1k6Q4b7e0q4Q4c8e0g2Q4z5o6g2Q4b7f1y4Q4c8e0c8Q4b7V1y4Q4z5e0N6Q4c8e0g2Q4z5p5k6Q4b7U0N6Q4c8e0c8Q4b7U0S2Q4z5p5q4Q4c8e0k6Q4z5f1y4Q4z5o6W2Q4c8e0c8Q4b7V1q4Q4b7V1q4Q4c8e0g2Q4z5p5k6Q4z5e0q4Q4c8e0g2Q4b7U0S2Q4z5e0k6Q4c8e0g2Q4b7f1c8Q4z5e0m8Q4c8e0c8Q4b7V1c8Q4b7V1k6Q4c8e0N6Q4z5e0c8Q4b7e0S2Q4c8e0g2Q4b7e0c8Q4b7e0N6Q4c8e0k6Q4b7e0S2Q4b7e0q4Q4c8e0g2Q4z5f1g2Q4z5p5u0Q4c8e0k6Q4z5f1c8Q4b7e0g2Q4c8e0S2Q4b7V1k6Q4z5f1u0Q4c8e0S2Q4b7e0q4Q4z5p5y4Q4c8e0k6Q4b7V1y4Q4z5p5k6Q4c8e0k6Q4b7U0c8Q4z5f1g2Q4c8e0g2Q4z5o6S2Q4z5o6k6Q4c8e0k6Q4z5f1g2Q4z5e0m8Q4c8e0y4Q4z5o6m8Q4z5o6u0Q4c8e0k6Q4z5o6S2Q4z5e0q4Q4c8e0g2Q4b7U0m8Q4b7U0q4Q4c8e0g2Q4z5f1y4Q4b7e0S2Q4c8e0k6Q4z5o6y4Q4b7U0y4Q4c8f1k6Q4b7V1y4Q4z5p5y4Q4c8e0S2Q4z5o6y4Q4b7V1c8Q4c8e0c8Q4b7U0S2Q4z5p5c8Q4c8e0S2Q4z5o6y4Q4b7V1c8Q4c8e0c8Q4b7V1c8Q4b7V1k6Q4c8e0N6Q4z5e0c8Q4b7e0S2m8d9g2!0q4y4g2!0m8y4q4!0m8y4#2!0q4y4W2!0m8z5q4!0m8x3g2!0q4y4g2)9&6c8g2)9^5b7W2!0q4y4W2)9&6c8q4!0m8y4g2!0q4y4g2!0m8c8g2)9^5b7#2!0q4y4W2)9^5z5q4)9&6x3q4!0q4y4W2)9&6y4g2!0n7y4q4!0q4y4q4!0n7z5q4!0m8b7g2!0q4y4W2!0n7y4g2)9^5x3g2!0q4y4#2!0m8z5q4)9^5b7W2!0q4y4#2)9&6b7g2)9^5y4q4!0q4z5g2)9^5x3q4)9^5y4W2!0q4y4g2)9&6x3q4)9&6x3g2!0q4y4g2)9^5z5q4)9^5y4W2!0q4y4W2)9&6c8g2)9&6x3q4!0q4y4g2)9&6x3g2!0m8x3W2)9K6c8R3`.`.
我发现,在目前AI编程软件顶多只能做静态分析,可以与电脑交互,但是无法与手机进行交互,更不用说进行动态分析。所以,要想让大模型进行逆向,要解决两个问题大模型应该能够控制手机大模型应该能够hook指定app这两个工具,想必大家都不陌生,一个是adb,一个是frida,那么如何让大模型使用这两个工具呢?答案就是MCP!MCP(Model Context Protocol,模型上下文协议) ,2024年11月底,由 Anthropic 推出的一种开放标准,旨在统一大模型与外部数据源和工具之间的通信协议。MCP 的主要目的在于解决当前 AI 模型因数据孤岛限制而无法充分发挥潜力的难题,MCP 使得 AI 应用能够安全地访问和操作本地及远程数据,为 AI 应用提供了连接万物的接口。当然,市面上已经存在各种各样的MCP工具,有没有能够直接用的工具呢?adb的mcp工具倒是有一些,但是各有各的不足,frida相关的mcp比较少,且基本不可用,比如说不支持自定义frida路径,不能自动端口转发,工具定义太复杂等,于是,基于以上背景,我们自定义了两个mcp,分别是adb-mcp和frida-mcp,用于手机控制以及动态调试。
至于如何开发以及调试属于自己的MCP工具,后续会专门出文章,我们先来看结果,这两个mcp分别有自己的函数,大模型可以根据当前的上下文,调用这些工具的组合比如安装一个app,大模型会先检查现在的连接的设备list_devices,拿到设备信息get_device_info,然后安装install_app,安装完成之后再次检查是否成功list_packages
这一切都不要我们关心,我们只需要发送一个指令,安装xxx就可以
在准备工作完成之后,来看看今天的案例实战案例某小众女权站点(x瓣)本来APP不难,主要看AI能做到什么程度我们这次挑战尽可能用cursor做一切操作,首先使用cursor安装app可以看到调用了一些工具,app以及成功安装了然后使用reqable进行抓包,可以看到import requests
headers = {
'User-Agent': 'Rexxar-Core/0.1.3 api-client/1 com.douban.frodo/7.89.0(307) Android/33 product/coral vendor/Google model/Pixel 4 XL brand/google rom/android network/wifi udid/748659a92430f1e85b21daae1949c5698fdab92f platform/mobile nd/1 com.douban.frodo/7.89.0(307) Rexxar/1.2.151 platform/mobile 1.2.151',
# 'Accept-Encoding': 'br,gzip',
params = {
'type': 'movie',
'start': '0',
'count': '10',
'udid': '748659a92430f1e85b21daae1949c5698fdab92f',
'rom': 'android',
'apikey': '0dad551ec0f84ed02907ff5c42e8ec70',
's': 'rexxar_new',
'channel':
...(已截断)
---
来源: 看雪论坛
原文链接: https://bbs.kanxue.com/thread-288219.htm
[原创]AI逆向-自定义mcp辅助cursor实现app逆向
459 浏览
15 回复
感谢分享
感谢分享
思路不错,感谢分享。
预测会火,火钳留名,以前只知道MCP 连接IDA 和JADX然后静态分析,frida部分都是自己手动的,然后反编译出来的APK目录也都是直接拉到cursor里直接让AI遍历去分析的,这样也可以做到。
mcp用户端选择的哪一款
一只笨猫
mcp用户端选择的哪一款
目前是cursor和claude code,模型claude4和gpt5混着用
mcp用户端选择的哪一款
目前是cursor和claude code,模型claude4和gpt5混着用
token太贵了
执着的猫
目前是cursor和claude code,模型claude4和gpt5混着用
我使用的是deepchat和deepchat 目前老是自己停掉让我处理方案
目前是cursor和claude code,模型claude4和gpt5混着用
我使用的是deepchat和deepchat 目前老是自己停掉让我处理方案
感谢分享
佬 出现ERROR: Could not find a version that satisfies the requirement mcp[cli,fastmcp] (from versions: none)
ERROR: No matching distribution found for mcp[cli,fastmcp]
ERROR: No matching distribution found for mcp[cli,fastmcp]
adb没必要写成mcp, aug会自己调的呀
这个感觉也太无敌了
期待大佬的MCP教程
期待
您的分享对我有很大的启发 感谢