好友
阅读权限10
听众
最后登录1970-1-1
|
新人尝试的第一个破x解,啥都不懂,就看了爱盘里那些视频教程,瞎几把摸索了好几天总算是搞定了
首先破x解这个的目的是平时每次打开一个rar文件总要弹出2个窗口,感觉很烦,也不想去下别人的破解版,怕有毒
为了确保破解后在win10环境下能够确实有效,所以就决定在win10下破解
环境:win10 x64 1709 虚拟机 (你没看错,就是win10里面虚拟win10,没有固态硬盘建议直接实机操作,否则卡成狗)
1.首先用stud pe载入winrar.exe,把 软件重定位 关闭,点save
( lordpe 64位 环境下用不了,把爱盘里的所有pe工具都试了遍,貌似在x64环境下,只有studpe有这个功能 )
2.去广告
用od载入,一步步傻瓜式跟,发现在
004E2CBC . E8 AF3FFCFF call WinRAR.004A6C70
广告启动,直接nop掉,保存之后发现没有广告,第一步搞定
3.去试用期弹窗
还是一步步傻瓜式的跟,以为会和广告窗口一样简单,但是我错了
这个弹窗竟然是嵌在主界面的消息循环里的
004E2D00 > 6A 00 push 0x0
004E2D02 . |6A 00 push 0x0
004E2D04 . |E8 A7EFFFFF call WinRAR.004E1CB0
004E2D09 . |84C0 test al,al
004E2D0B .^\75 F3 jnz short WinRAR.004E2D00
就是这个消息循环,你不能把它nop掉,因为它就是主界面的消息循环
而且弹窗随机在10-25次循环之后才会出现
然后跟进这一句
004E2D04 call WinRAR.004E1CB0
发现在运行到
004E202A push eax
004E202B call dword ptr ds:[<&USER32.DispatchMess>]
这个call的时候,第10-25个循环内,弹窗会随机出现(有够阴险的,不知道花了我多少时间跟)
此时注意到右边注释里显示
pMsg = WM_TIMER hw = CB04F4 ("Desktop (evaluation copy)") ID = 0xA Callback = 0x0
这一行注释每次循环里内容都不一样
但只有在弹窗的那一次小循环里 id = 0xA, 此时我有一个脑洞
经过几个小时的瞎几把摸索,堆栈窗口看到eax的地址下面有一行的内容是0000000A,心中大喜
随便在下面找一处长一点的空白处,我选在
004E552C
这一行开始添加一段代码
004E552C cmp dword ptr ss:[0x19CEC4],0xA 暴力对比之前在堆栈窗口找到的那个地址
004E5534 je WinRAR.004E2030 如果相同就跳回不执行那个call
004E553A nop (这一行可以去掉,不小心打错了)
004E553B call dword ptr ds:[0x516644] 如果不同就执行call (不同话必须执行,否则主界面直接卡死,试了n多小时)
004E5541 jmp WinRAR.004E2031 然后跳回
然后把
004E202B call dword ptr ds:[<&USER32.DispatchMess>; \DispatchMessageW
修改成
004E202B jmp WinRAR.004E552C
因为代码比原来的少一个字节,下面正好多出一个
004E2030 nop
然后把这行改成(当 cmp 对比相同后直接跳回就会产生出入栈不平衡,这里就手动加个出栈,如果直接跳转回来就走一步出栈)
004E2030 pop eax
完工,保存代码,打开winrar.exe
发现没有弹窗了,哦耶
然而。。。如果打开很多次,会有很小几率弹出一个弹窗
用od重新加载发现跟不到,算了,目的已经达到
最后有的人会问,为什么不直接搜索字符串
那是因为根本搜不到啊,字符串都加密的
我在论坛上搜怎么解密字符串,碰到加密字符串加密怎么办,但是根本搜不到解决办法
希望大神赐教,加密字符串应该怎么搞定
|
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|