首页
社区
课程
招聘
[原创]32位WinRAR的破解和修改标题
发表于: 2019-4-22 23:22 5710

[原创]32位WinRAR的破解和修改标题

2019-4-22 23:22
5710

这是我在看雪发的第一个帖子,记录一下自己的学习过程,因还在学习水平有限, 有不足之处还请各位大牛们多多指导 轻点鞭挞。

今天我们要破解的是32位的WinRAR

众所周知每当我们在用WinRAR解压文件的时候都会弹出这个讨厌的广告页面,今天我们要解决的就是这个广告页面。

破解工具:OD,SPY++

我们通过用spy++可以看到广告窗口的class为RarReminder,这个我们先记住等下用来筛选断点使用。


因为要弹出广告窗口,所以我们可以猜测创建窗口的API,然后下API断点,例如:我们可以猜测他使用的API为CreateWindowExW或CreateWindowExA等API,那么我们就可以根据我们的猜测来下API断点

打开OD调试winRAR,我们先在下方的Command命令窗口输入bp CreateWindowExW下API断点,按下回车观察断点列表窗口是否下断成功


点击查看断点窗口,发现下断成功,然后按F9运行程序


发现程序在此处断下来,然后我们通过栈回溯找到调用此函数的代码处,在下方箭头所指位置处按回车键进入


然后鼠标向上滑动看到CreateWindowExW函数,按CTRL+A系统分析出函数的参数数据



我们通过查看函数原型可知,第二个参数Class即为指向注册类名的指针。

根据我们上面用spy++查看的广告窗口的类名咱们可以用这个下条件断点来做出筛选,让程序在类名为RarReminder的地方断下来,我们返回刚才CreateWindowExW断点断下来的地方添加条件输入[UNICODE[ESP+0X8]]=="RarReminder"


然后按F9运行程序,程序就会断下来,此时堆栈显示如下


说明我们正确断到了广告窗口的创建,然后在通过栈回溯点到上面的CALL到CreateWindowExW按回车,返回调用此函数的地方然后按下Ctrl+A分析一下,如下图所示



此时我们就可以通过修改汇编代码让其不执行创建广告的CreateWindowExW,直接跳到CreateWindowExW的下一行指令 。在上图的13FA879处按下空格

直接输入下图的汇编指令然后确定,在修改后的的汇编指令上面点击会发现如下图椭圆形圈出来的地方,显示直接跳到了 CreateWindowExW函数的下一条指令


然后我们点击右键复制到可执行文件——》所有修改——》全部复制   在出来的窗口右键,点击保存


我起的名字是WinRAR去广告版,此时我们点击打开,已经看不到广告页面的弹出了,我们去广告就大功告成了。


但是此时我们的软件只是去掉了广告而已,并不是永久免费版的,随着时间的流逝软件会弹出一个这么令人讨厌的窗口如下图所示(PS:如果没有弹出的往后话修改下系统时间比如往后修改一年):


这就让人很难受啦,怎么办,搞掉它啊!!!!

因为通过观察可以知道,弹出的这个东西是模态的而且里面也有文本和很多按钮,所以我们猜测可能是使用了DialogBoxParamA/W然后我们可以通过和上面方式一样的API断点来试试

把我们去广告版的winRAR拖入OD:下API断点回车,然后F9运行


发现断点断下如图,在下图箭头所指位置按回车回溯到调用此函数的地方:


按回车后按Ctrl+A分析一下:


函数原型为此,5个参数和OD上面显示的对应。


[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

最后于 2019-4-22 23:24 被爆破鬼才编辑 ,原因:
上传的附件:
收藏
免费 2
支持
分享
最新回复 (6)
雪    币: 62
活跃值: (89)
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
2
https://rarlab.com/download.htm
下载英文版的就行了,不要下载中国版的
2019-4-23 08:19
0
雪    币: 9626
活跃值: (1838)
能力值: ( LV5,RANK:73 )
在线值:
发帖
回帖
粉丝
3
加精预定,前排占座
2019-4-23 09:11
0
雪    币: 29183
活跃值: (63681)
能力值: (RANK:135 )
在线值:
发帖
回帖
粉丝
4
感谢分享~
2019-4-23 09:24
0
雪    币: 125
活跃值: (16)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
学习了 通过SetWindowText 来做condition breakpoint
2019-4-25 00:02
0
雪    币: 437
活跃值: (119)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
第二种修改字符串的方式,软件本身是随机基址,为什么还可以call、jmp 绝对地址呢
2019-7-14 23:19
0
雪    币: 1613
活跃值: (2827)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
7
诗酒年华 第二种修改字符串的方式,软件本身是随机基址,为什么还可以call、jmp 绝对地址呢
一般 我们逆一个程序前,会先去掉随机基址 
2019-12-4 12:02
0
游客
登录 | 注册 方可回帖
返回
//