AI时代-逆向工作者该如何用好这一利器
当你逆向一个新的app,你把目前的进度输入进去,可能遇到意外的惊喜。可能遇到的问题就是,知识过多无法索引的问题,但是随着大模型的发展,cursor等工具都可以索引到了40-50w行,所以这个不是特别大的问题,尤其是augment的mcp索引引擎能够索引几百万行。
当你逆向一个新的app,你把目前的进度输入进去,可能遇到意外的惊喜。
可能遇到的问题就是,知识过多无法索引的问题,但是随着大模型的发展,cursor等工具都可以索引到了40-50w行,所以这个不是特别大的问题,尤其是augment的mcp索引引擎
能够索引几百万行
脚本类知识
比如imyang大佬开源的多个脚本资源

我们可以给他clone下来,整理到一个文件夹,索引使用。
还有我们日常中写的一些功能性脚本,或者我们报了培训里面的课件,都可以作为整理输入。
有了这些索引输入,生成的脚本可以一键使用,没有幻觉。
如何去索引
本地索引推荐
cursor
别看他是一个代码工具,索引的效果非常好,也可以一键生成脚本。

Fastgpt
https://github.com/labring/FastGPT
具体搭建教程可以看他的readme 可以搭配线上的索引模型和问答模型,也可以自己本地部署,可以做成一个问答bot形式
自己手搓一个索引和问答
知识库无非就是,一群markdown,使用输入一定语言,使用索引模型进行索引,然后把结果喂给问答模型,我们完全可以自建。
可以给大家一个教程作为搭配 https://zhuanlan.zhihu.com/p/27947782392
假如我们觉得本地的索引模型难度比较高怎么办,那么就借用现成的。
https://github.com/yeuxuan/Ace-Mcp-Node
这个是逆向了augmentcode的索引,我们可以直接使用mcp协议调用索引引擎,是不是很酷,全世界最厉害的索引引擎给你助力。
如果后续大家有需求,我可以
Part2 MCP的使用技巧
自从MCP出来已经很久了,大家可能在平时用的不是特别多,在今年五月的时候,我做了一篇 https://bbs.kanxue.com/thread-286813.htm MCP的环境配置,其实里面讲的大部分都是偏基础的,随着发展,大部分mcp已经可以自己去识别你的电脑已经安装的工具,并且自动去配置。
但是我认为大家还是有必要懂的python环境的配置的,如果你想要开发一个你自己的MCP,这里是必不可少的一环。
我理解的MCP的概念: MCP就是自动向你的对话中自动添加上下文的工具,ai主动获取上下文的工具
比如你在索引你的知识库的时候,你使用了Ace-Mcp-Node,他会主动去索引好知识,输入回大模型
或者你在逆向so的时候,你使用了ida-pro-mcp,他会自动获取你要分析的函数的整个伪代码,输入回大模型,保持连贯性
技巧一 编写jeb ida Ninja等脚本
由于逆向领域比较冷门,ai并没有得到有效的训练(但是frida脚本我感觉表现还可以)
比如我们要解开java和native的混淆的时候,跑不掉要去写一些脚本,这时候困难就来了。
ai总是写一些不存在的api,自己胡编乱造,这不是智力问题,因为最新的Claude4.5opus也在乱写,这时候我们就需要一个有力的工具去帮他去开发了。
这里我推荐Context7这个MCP
https://context7.com/websites/api_binary_ninja
比如我们在写ninja的时候,就可以便捷配置了,具体配置教程可以参考我上面的ida-pro-mcp的教程,简单的更改即可
{
"mcpServers": {
"context7": {
"url": "https://mcp.context7.com/mcp",
"headers": {
"CONTEXT7_API_KEY": "YOUR_API_KEY"
}
}
}
}
技巧二 使用Sequential Thinking MCP Server 加强ai的能力
https://github.com/modelcontextprotocol/servers/tree/main/src/sequentialthinking
具体配置教程和上面一致
{
"mcpServers": {
"sequential-thinking": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-sequential-thinking"
]
}
}
}
当你的ai思考深度不够,思考质量不足时候,他会命令ai多思考,以此获得更好的回答质量
Part3 使用AI作为逆向分析的有力工具
Java部分
思路1 直接把apk转为源码,提供给ai分析
jadx-gui

或者也可以使用jadx命令
jadx -d output_folder xxx.apk
然后导入cursor进行分析

思路2 使用MCP作为输入
有著名的项目 jadx-mcp 可以参考之前的配置mcp的教程进行配置
https://github.com/zinja-coder/jadx-ai-mcp
两者的区别是,jadx-ai-mcp可以使用交叉引用等功能,而作为文本导入cursor的代码就丧失了这个功能
但是cursor的速度快于mcp,所以推荐优先尝试cursor,然后转为配置jadx-ai-mcp
混淆分析
提出一个简单的小思路,以java的角度去分析,反编译后,使用java-parser 作为ast解析,写相关的反混淆的脚本,效率要比写jadx和jeb的脚本效率高很多
并且可以让ai自动去分析混淆的模式

Native部分
使用ida-pro-mcp 或者binary ninja mcp 看自己的习惯来使用


混淆分析
尽管你不懂花指令等概念,也可以让ai给你手把手教学,逐步去解决

Part4 个人使用过程中的AI模型的推荐
我把ai分为执行类ai和探索类ai和搜索类ai,在不同场景区分使用
执行类ai
可以理解为,我下达了什么指令,你只需要按需的给我完成,不需要做多余的动作
这种ai适合做逆向工作、编码、去混淆等精准的操作
国外模型推荐:
- Claude sonnect系列 opus系列
国内模型推荐
-
kimi k2
-
GLM 4.6
探索类ai
这一类ai思考时间比较长,但是提出的观点和bug查找总是一针见血
国外模型推荐:
-
chatgpt5.1
-
Gemini3 pro
国内暂时没有模型推荐
各种ai产品的推荐
-
cursor 当之无愧的老大哥
具体可以去咸鱼买试用号 6块钱一个 10美金 可以选择多种模型 比较推荐
-
Claude code
Claude模型不会降智,使用非常丝滑,可以找拼车的中转站,价格从0.5一美元到1块钱一美元,自行寻找中转
-
codex
额度给的很足,20美元就够一个月用了,但是现在有team,咸鱼可以搜一下,5-10块钱一个月,非常实惠
-
kiro
最近有万圣节活动,Claude模型随便用
-
augmentcode
前一阵子最好用的ide 现在涨价了 不是很好用了
类似的产品层出不穷,其实本质都一样,如果公司给了,就用公司的就行,没有的话观察一下咸鱼,自己找一找相关的渠道
如果不想折腾,其实买一个chatgpt 20美金,是最有性价比的,其他的充值难度都比较高
更多推荐

所有评论(0)