C程序逆向破解-实战WinRAR去广告(3)

如果没有看过我之前文章的,请点击传送门

 

开始进入正题,此篇开始实战将WinRaR去除广告,可以自行上官网下载WinRAR,此篇使用的版本如下

我们在使用WinRAR时候,总是有弹出广告如下:

那么我们该如何将广告去除呢?

首先经过前面的逆向学习了解,我们已经掌握了修改ds数据段,cs代码段的数据,那么我们要将WinRAR的广告去除,则是将WinRAR调用广告弹窗的函数给去除了即可。

在汇编中调用函数方法使用的是call(之前有call打印helloworld反汇编),

广告弹窗的逻辑:

1、请求广告链接(一般都是http协议的)

2、将数据在弹窗显示

而广告是一个url连接,我们查看窗口可以发现窗口名称为WinRAR,且这个是一个弹框函数createWindowExw,根据这些信息,可以找到如下:

这里我把WinRAR的广告链接都粘贴出来了:  http://ad.winrar.com.cn/show_2.html?L=7&bl=7&v=591personal&a=64&src=pe001%2

这里就不逐句分析汇编指令了,这段代码段无非就是请求http链接,得到广告,然后弹窗,这下逻辑已经很清晰了,只要将这些访问广告连接,弹框显示代码去除了,那么就OK了,那么开始动手,将00007FF7187D977C到00007FF7187D97C7的代码段使用nop填充(简单就是相当于删除了代码逻辑)

然后补丁导出保存为WinRAR1.exe(保存到原本的安装目录),此时双击打开WinRAR1.exe会发现没有广告了,将去除好广告的WinRAR1.exe重命名WinRAR.exe 替换原本的,你就可以使用无广告版本的WinRAR了。

但是会有以下弹框(如果是新下载安装的有试用期,所以没有以下弹框),

如果你是新安装的WinRAR那么可以调整系统时间,往前调2个月,那么再次启动WinRAR则可以看见会跳出该弹框,接下来则是该去除该弹框,

接下来直接使用x64Debug打开WinRAR1.exe,该弹框是模态框,我们可以在user32.dll下的DialogBoxParamW出下断点(如下图),那么程序执行到弹框时候就可以跟踪了

当程序运行到断点处时候,点击查看调用堆栈

可以找出上一个系统模块调用该弹框的地址00007FF6D0DF9842 | 48:8B8C24 70100000       | mov rcx,qword ptr ss:[rsp+1070]                |

接下来直接nop填充它,补丁保存WinRAR2.exe,双击打开WinRAR2.exe 是不是发现没有广告,没有弹框了。

另外title上的评估版本,什么版本之类的,同理只要找到资源文件,修改了即可。最后请大家支持正版~~~

看了我的文字如果喜欢我,那么请关注我,多多评论,你们关注就是我的动力,谢谢大家!

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

邓霖涛

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值