记录实践PC端微信防撤回实现过程(基于3.1.0.67版本)


利用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文件,重新运行微信即可防撤回了。

演示

用小号发消息后撤回,已经无法撤回。

测试版本是目前最新版本

补丁下载地址

本站声明:网站内容来源于网络,如有侵权,请联系我们,我们将及时处理。

  • 分享:
评论
还没有评论
    发表评论 说点什么