最新消息:送波老司机福利

简单破解QQ消息防撤回功能

聊天软件 雨过天晴 371浏览 0评论

很多人看到发布修改版QQ都有消息防撤回功能,那别人是怎么实现的的?下面正好有网上教程,供大家学习脱壳破解都有一定帮助,先看看人家如何操作实现的!

大家好,之前看一位大牛实现了TIM的防消息撤回功能,于是自己逆向了一下QQ发现逻辑相同,所以对QQ的防消息撤回复现,具体如下:

版本截图:

简单破解QQ消息防撤回功能

首先逆向思路还是从搜索字符串开始,撤回的英文单词有:revoke,cancel,recall。使用notepad++的搜索功能,在文件中查找。

简单破解QQ消息防撤回功能

指定文件夹,搜索revoke

简单破解QQ消息防撤回功能

搜索完看下结果发现:

简单破解QQ消息防撤回功能

看到两个dll文件与消息撤回有关,IM.dll和MsgMgr.dll。优先分析IM.dll和MsgMgr.dll,其他的根据查询到的字符串,并没有涉及消息,所以暂不看。具体分析之IM.DLL与MsgMgr.DLL使用PEID查看DLL的导出,发现这两个DLL的导出函数都有以下四个函数: DllCanUnloadNowDllGetClassObjectDllRegisterServerDllUnregisterServer这四个函数是COM组件的标配。所以可以确定是COM组件。(COM组件是windows下抽象于二进制层的API接口,可以适应各种编程语言,包括C++,C#,VB等,比SDK API适应性更强)

简单破解QQ消息防撤回功能

通过比对IM.DLL和MsgMgr.DLL的导出表发现,IM.DLL多了一个PostTask_Session的函数应该是与通讯相关的函数,所以我们接下来重点分析IM.DLL。 使用x32dbg详细分析IM.DLL将QQ运行起来,然后用附加进去x32dbg(快捷键alt+a)。

简单破解QQ消息防撤回功能

点击符号à搜索im.dllà找到IM.DLL模块,点击进去其代码空间

简单破解QQ消息防撤回功能

右键à搜索à当前模块à字符串àrevoke

简单破解QQ消息防撤回功能

搜索撤销的字符串revoke。

简单破解QQ消息防撤回功能

由于搜索到的结果比较多,所以直接右键在所有命令上下断点

简单破解QQ消息防撤回功能

寻找撤销的CALL再启动一个QQ,给被调试的QQ发消息,然后再撤销,发现会断到以下代码处,分析附近的代码。

简单破解QQ消息防撤回功能

测试附近的每一个CALL,找到起作用的CALL。 经过测试附近代码,发现关键函数是以下CALL。

简单破解QQ消息防撤回功能

最终绕过了撤回函数。记得保存修改,右键à补丁à修补文件

简单破解QQ消息防撤回功能

把修改过的模块保存后,替换原来的IM.DLL。简单破解QQ消息防撤回功能

 

测试结果:左边撤销发送后,右边接收到的消息依然存在。

简单破解QQ消息防撤回功能

总结:

QQ的聊天记录在本地和服务器都应该有保存,而撤销功能,服务器我们没有办法阻止,本地我们有机会做到不撤销,最后结果可以验证我们所想,防撤销的原理就是patch掉修改本地聊天信息的代码,让对方撤销之后,本地依然显示即可。腾讯的产品逻辑都差不多,TIM也是一样的方法,攻破一个,其它的也能尝试。

转载请注明:破解网 » 简单破解QQ消息防撤回功能

本站说明:
  1. 本站将持续更新去广告绿色清爽等版本软件,建议大家Ctrl+D收藏本站方便以后需要,如果你感觉有用请在下面留下您的脚印,网站持久离不开大家的鼓励和支持!。
  2. 本软件源自互联网,只做参考学习用途,请勿在未经本软件版权所有者书面授权的情况下用于商业用途。
  3. 如果您喜欢本软件并准备长期使用,请购买正版,支持软件开发者继续改进和增强本软件的功能。
  4. 本软件不保证能兼容和适用于所有Windows、Android等系统,有可能引起冲突和导致不可预测的问题出现。
  5. 转载本软件,请注明作者及出处。
  6. 如果您是本游戏或软件的开发者,不想作品被分享或修改,或涉及版权等问题请在联系方式中发送邮件。

您必须 登录 才能发表评论!

  • 书签