|
|
最近逆了个带OLLVM+字符串加密+动态注册的so,气得我直接让AI写了个SO文件逆向分析器。
以前要么导出到电脑用IDA/Ghidra,要么用MT自带的Hex看半天也看不出个所以然,字符串搜不到引用,补丁还得记一堆偏移,烦得要死。
于是我肝了个星期,把so文件逆向分析这个插件给整出来了,直接在MT的插件中心就能安装使用(名为SO文件预览器),现在想分享给大家收集反馈,我不知道该发插件板块还是逆向板块,看这里人多比较活跃就发这里了。
目前实现了以下功能:
字符串+全局指针交叉引用:自动扫rodata,找出所有明文字符串,还能反向追踪谁引用了它(点一下直接跳到调用处的汇编)。这点目前移动端几乎没有工具能做到。
Capstone实时反汇编:支持ARM/ARM64/Thumb/x86/x64,点函数列表直接看汇编,支持SVC/syscall高亮,基本能当个轻量反汇编器用。
控制流图 (CFG):基于 Cytoscape/Dagre 自动绘制函数流程图,绿线/红线/蓝线直观区分条件分支,点击任意 点↔节 直接跳回反汇编高亮!
Hex视图+实时Patch:支持直接在Hex里改字节,改完有历史记录,一键导出patched.so,不用再切PC。
VA ↔ Offset、结构体解析、YARA特征搜索、位运算计算器、编码哈希工具箱全家桶。
安全特征一键扫描:PIE/NX/RELRO/CFI/Canary/OLLVM/字符串加密/反调试/Root检测/SSL Pinning……全给你标红,还附带“逆向难度评分”和推荐绕过思路。
内嵌资源识别:能把so里藏的PNG、ZIP、DEX、WebP之类的直接提取预览。
这比单纯的Hex强太多(人家只能看,我能分析+引用+patch)。
当然,和PC端的IDA Pro/Ghidra比,我肯定是弟弟——我没有F5伪代码,也没有符号自动重命名和动态调试。但它胜在就在MT里,打开so就能用,不用切设备。
缺点我也直接说
1. 完全基于WebView + Capstone,超大so(>50MB)分析会比较慢,首次加载Capstone需要下CDN(后面就缓存了)。
2. 反汇编是静态的,复杂控制流平坦化后可读性一般(OLLVM重灾区还是得配合IDA)。
3. 目前没有动态Hook功能(以后看情况能不能加Frida桥接)。
4. UI是移动端适配的,在平板上会舒服很多,小屏手机偶尔要横屏才舒服。
自然语言逆向还在开发中:直接对 AI 说“帮我定位 VIP 校验逻辑并给出低风险补丁方案”,AI 会自动调用底层工具检索、分析、甚至直接给出修改方案!准备内置严格的对齐校验、等长替换(自动NOP填充)、序言尾声风险检测。让AI 不会瞎改,改坏的概率降到最低!
总之,它不是要取代IDA,而是让你在MT里就能快速定位、快速验证、快速Patch,把80%的重复劳动干掉,剩下20%再上PC精调。
多亏MT的插件系统够开放(感谢@MT官方 一直给力),我才能这么为所欲为地把一大堆功能塞进去。要是插件系统不支持WebView+JS,我估计这玩意儿得再肝一个月。
插件文件我就不放了,直接在MT插件中心就能找到。
最后问个真心问题(求大佬指点):
你们平时逆so最烦的是哪一步?
是字符串找不到引用?是补丁要记一堆偏移?还是OLLVM+动态注册直接看吐?
我这个插件目前主要解决前两个痛点,第三个还在努力。
欢迎兄弟们直接测、直接骂、直接提需求,我接着肝。能帮到大家我就值了。
|
-
查看全部评分
总评分:好评 +2
金币 +2
|