利用OD实现对PC端微信防撤回功能的实现
文章最后有一键补丁工具哦~
准备工具
1.OD
2.PC微信客户端(3.1.0.67)
过程
1.运行微信客户端,不需要登录
2.运行OD,左上角选择附加进程
3.选中微信进程点击附加
4.附加后打开可执行模块界面
5.找到关键的DLL文件双击加载,微信的撤回函数就包含在这个DLL里。
DLL文件(Dynamic Linkable Library 即动态链接库文件),是一种不能单独运行的文件,它允许程序共享执行特殊任务所必需的代码和其他资源 比较大的应用程序都由很多模块组成,这些模块分别完成相对独立的功能,它们彼此协作来完成整个软件系统的工作。可能存在一些模块的功能较为通用,在构造其它软件系统时仍会被使用。
简单来说运行微信时候,就会把WeChatWin.dll的数据加载到内存当中去,
如果我们修改了WeChatWin.dll的数据,把相当于把我们的WeChatWin.dll的加载到内存当中去,就能现实某些功能了,也可以理解为打补丁...
6.到达DLL主窗口后右键》中文查找》智能搜索
7.到达中文字符串窗口后CTRL+F查找关键字‘revokemsg’,通过调试分析,通过这个关键字搜索可以定位到撤回函数位置
8.这里就是我们的撤回函数关键字的位置,双击进去
9.这里是撤回函数的关键call,撤回微信信息的话,会调用一个撤回的函数,我们直接把这个撤回的函数给取消掉
10.我们以NOP字节填充,这样当当撤回的时候,在dll中找不到这个函数,就可以做到防撤回的功能了
11.NOP完后我们保存所有修改
12.将文件保存到本地
13.这次将修改过的文件替换微信文件夹内原来的DLL文件,重新运行微信即可防撤回了。
演示
用小号发消息后撤回,已经无法撤回。
测试版本是目前最新版本