使用x64dbg+VS2015 Spy++去除广告弹框
◆ WinRAR5.40(64位)的弹框广告去除。由于我的系统为x64版本,所以安装了WinRAR(x64)版本。
◆ OD无法调试64位的程序,可以让我熟悉x64dbg进行调试的界面。
◆ 其次是这玩意儿真是太蛋疼了,无休止弹广告。
1)偷梁换柱
修改汇编函数段首为返回值(本次逆向破解采用的方法)
2)NOP掉整个函数内容
x64dbg工具快捷键与OD无异
F9:运行
bp CreateWindowExW:在x64dbg底部输入这行命令,对使用CreateWindowExW函数的位置断点。
CreateWindowExW:该函数创建一个层叠式窗口、弹出式窗口或子窗口。
参数:
【软件名称】:WinRar
【软件版本】:5.4
【外壳保护】:无
【操作系统】:Windows 10
既然是弹出窗口,首先要知道弹窗窗口的窗口类名,我使用的是VS2015里自带的工具Spy++ x64。
图1 调出Spy++ x64
图2 使用Spy++64查看WinRAR弹出的窗口类名为RarReminder
通过上诉步骤得到WinRAR的类名为RarReminder后,使用x64dbg工具载入WinRAR.exe。在命令的地方使用断点命令【bp CreateWindowExW】,在CreateWindowEx函数断下断点。F9运行到各个断点时观察广告窗口弹出的状态变化。
图3 使用断点命令【bp CreateWindowExW】
F9运行到出现RarReminder字样的地方,x64dbg这款工具还具备查看断点触发的次数的功能,通过【断点】选项卡看到断点共触发了30次才到这里。
图4 断点触发的次数
在堆栈窗口在call指令的地方按回车键返回到用户层函数。
图5 堆栈窗口信息
返回到00007FF6780AD4E8这个地址处,向上看会看到“http://ad.winrar.com.cn/show_40.html?L=7&bl=7&v=540&a=64&src=wrr”这个很明显的广告地址。
汇编函数的代码如下:
可以看到:
函数头部地址为:00007FF6780AD078 | mov qword ptr ss:[rsp+8],rbx
函数尾部地址为:ret
修改之后,函数头部地址为:00007FF6780AD078 | ret
图6 修改函数头部反汇编指令
修改之后,鼠标右键选择补丁-修补文件。
图7 选择补丁
图8 修补文件
小功告成!再次打开rar弹窗广告已经消失了。可是评估版本字样还在,追求完美可以选择使用资源管理工具去除字样。
图9 去除弹窗
我使用了Restorator这款资源修改软件,不过使用这款软件的少侠们可就小心了。因为这款资源软件会自动修改.exe扩展名的关联,请切记在虚拟机下运行。
图10 导出资源文件.rc
导出资源文件.rc后,用notepad++打开.rc后缀的文件。修改【评估版本】为你想要修改的文字。然后再导入到资源中。操作比较简单,就不赘述了!
图11 大功告成!
本文由看雪论坛 lipss 原创,转载请注明来自看雪社区
热门阅读
点击阅读原文/read,还有更多干货等着你~