本帖最后由 以简 于 2026-5-13 10:34 编辑
全程基本无需自己分析,工具都是现成的,本帖子只是记录一下逆向过程,不涉及任何代码 。
好奇的我就好奇防撤回的机制是什么,于是就在Github上找,结果找到一个10年前的Xposed插件:NoWechatRevoke,把它丢给AI分析总结,得出一个关键词:revokemsg
有了关键词就有了分析的方向,接下来就全是AI的活了,我们就负责把结果、日志反馈给AI即可。
这里强推坛友一缕清风{}分享的工具:MCP工具,配合RikkaHub是真的很好用!
把WX安装包移到MCP工具的工作空间,然后可以在RikkaHub跟AI开启一次酣畅淋漓的交流。
把要求发给AI,AI会自动调用MCP工具进行分析,然后我们让AI生成Frida JavaScript Hook脚本,这里我用JsHook进行第一次尝试,结果在意料之中:完全没效果。
把报错日志发给AI,几轮下来,终于有个能用的脚本,但是能优化的地方有很多,比如防撤回之后没提示,不能确认哪一条信息被撤回了。
于是,开始第二波的分析,目标:要在被撤回的信息后面紧跟一条提示语。这个过程是最麻烦的 ,因为AI分析之后实现的方法有很多,但是哪个是最优解、最容易实现,还得靠我们自己慢慢试......(这期间开了好几轮新对话,遇到的问题也挺多的:比如我们自己撤回也有出现防撤回提示、提示没有紧跟在信息后面等等,此处省略AI对话详细过程,感兴趣自己去试一下)
最后终于终于终于生成一个能用的代码...
有了这个代码,我们就可以让AI把它转化为Xposed模块的Hook代码,因为用JsHook还是不太方便。
在整个实现的过程中,我发现防撤回方法有好几种,其中有一些实现方法XP模块可能是能够获取聊天记录的(未证实,看个热闹),所以如果有这样一个模块含有恶意代码的话不排除可能会窃取个人隐私(个人观点,大家理性看待),毕竟还是用自己的模块比较放心一些。
这个过程没有涉及任何Hook代码,只是记录一下这个过程,大家如果感兴趣可以自己去跟AI聊一聊。
不得不感叹一下,AI 技术的迭代升级,干啥都方便了很多,很多想法都能落地。
|