好友
阅读权限10
听众
最后登录1970-1-1
|
疯子韩
发表于 2010-4-12 21:07
【文章标题】: 某某加速器去自校验+去时间限制+一些疑问
【文章作者】: 疯子韩
【软件名称】: 某某加速器
【软件大小】: 574KB
【下载地址】: 自己搜索下载
【保护方式】: UPX 0.89.6 - 1.02 / 1.05 - 1.24 -> Marku
【使用工具】: Peid,OD
【操作平台】: windows xp
【作者声明】: 只是感兴趣,没有其他目的。失误之处敬请诸位大侠赐教!
--------------------------------------------------------------------------------
【详细过程】
拿到软件,先查下壳呗。一查,UPX 0.89.6 - 1.02 / 1.05 - 1.24 -> Markus & Laszlo,哈哈,这个简单啊,用工具手动
我正好都会,为了保险,我手动了(会的跳过啊)。
00495100 > $ 60 pushad ; 停这里了
00495101 . BE 00204900 mov esi,wjbsbs.00492000
00495106 . 8DBE 00F0F6FF lea edi,dword ptr ds:[esi+FFF6F000]
0049510C . 57 push edi
0049510D . 83CD FF or ebp,FFFFFFFF
00495110 . EB 10 jmp short wjbsbs.00495122
直接往下拉
0049523B . 57 push edi
0049523C . 48 dec eax
0049523D . F2:AE repne scas byte ptr es:[edi]
0049523F . 55 push ebp
00495240 . FF96 70101200 call dword ptr ds:[esi+121070]
00495246 . 09C0 or eax,eax
00495248 . 74 07 je short wjbsbs.00495251
0049524A . 8903 mov dword ptr ds:[ebx],eax
0049524C . 83C3 04 add ebx,4
0049524F .^ EB D8 jmp short wjbsbs.00495229
00495251 > FF96 74101200 call dword ptr ds:[esi+121074]
00495257 > 61 popad
00495258 .- E9 13F7F6FF jmp wjbsbs.00404970 ; 跳往OEP,F4
0049525D 00 db 00
0049525E 00 db 00
0049525F 00 db 00
00495260 00 db 00
00495261 00 db 00
00495262 00 db 00
在00495258处F4以后,再单步一下就到OEP了
00404970 55 push ebp ; OEP
00404971 8BEC mov ebp,esp
00404973 6A FF push -1
00404975 68 605A4000 push wjbsbs.00405A60
0040497A 68 F64A4000 push wjbsbs.00404AF6 ; jmp 到 msvcrt._except_handler3
0040497F 64:A1 00000000 mov eax,dword ptr fs:[0]
00404985 50 push eax
00404986 64:8925 0000000>mov dword ptr fs:[0],esp
0040498D 83EC 68 sub esp,68
00404990 53 push ebx
00404991 56 push esi
00404992 57 push edi
00404993 8965 E8 mov dword ptr ss:[ebp-18],esp
00404996 33DB xor ebx,ebx
00404998 895D FC mov dword ptr ss:[ebp-4],ebx
0040499B 6A 02 push 2
然后我们就可以脱壳了,呵呵。打开,糟糕,他说“文件已损坏,可能感染病毒,提示不要使用来历不明的文件或者小。。。”
难道是壳没脱好??可是如果没脱好应该提示是来自windows的啊,怎么是来自软件,后面还有广告呢,让去他官方网站上下载。
应该是软件的自校验吧,OD载入看下关键字符,未果。在同目录下还有两个dll文件,查下发现都没加壳,那都用OD载入看
关键字符。发现了kinguard.dll这个文件里面有提示信息,而且不止一处。
10001E36 |. 8D8D 08FEFFFF lea ecx,[local.126]
10001E3C |. E8 9F1D0000 call <jmp.&MFC42.#800>
10001E41 |. 83BD 0CFEFFFF>cmp [local.125],0
10001E48 |. 74 16 je short kinguard.10001E60
10001E4A |. 6A 00 push 0
10001E4C |. 6A 00 push 0
10001E4E |. 68 34610010 push kinguard.10006134 ; 文件已损坏,可能感染病毒,提示不要使用来历不明的文件或者小网站下载的文件均没有保障\r\n请到官方网站http://www.wylbw.cn重新下载文件!!!
10001E53 |. E8 901E0000 call <jmp.&MFC42.#1200>
10001E58 |. 6A 01 push 1 ; /ExitCode = 1
10001E5A |. FF15 1C500010 call dword ptr ds:[<&KERNEL32.ExitProces>; \ExitProcess
10001E60 |> EB 16 jmp short kinguard.10001E78
10001E62 |> 6A 00 push 0
10001E64 |. 6A 00 push 0
10001E66 |. 68 B8610010 push kinguard.100061B8 ; 文件已损坏,可能感染病毒,提示不要使用来历不明的文件或者小网站下载的文件均没有保障\r\n请到官方网站http://www.wylbw.cn重新下载文件!
10001E6B |. E8 781E0000 call <jmp.&MFC42.#1200>
10001E70 |. 6A 01 push 1 ; /ExitCode = 1
10001E72 |. FF15 1C500010 call dword ptr ds:[<&KERNEL32.ExitProces>; \ExitProcess
10001E78 |> EB 16 jmp short kinguard.10001E90
10001E7A |> 6A 00 push 0
10001E7C |. 6A 00 push 0
10001E7E |. 68 3C620010 push kinguard.1000623C ; 文件已损坏,可能感染病毒,提示不要使用来历不明的文件或者小网站下载的文件均没有保障\r\n请到官方网站http://www.wylbw.cn重新下载文件!
10001E83 |. E8 601E0000 call <jmp.&MFC42.#1200>
10001E88 |. 6A 01 push 1 ; /ExitCode = 1
10001E8A |. FF15 1C500010 call dword ptr ds:[<&KERNEL32.ExitProces>; \ExitProcess
10001E90 |> 8D4D FC lea ecx,[local.1]
再向上找下,发现有关键跳转,
10001D5A |. 8D8D 20FEFFFF lea ecx,[local.120]
10001D60 |. E8 7B1E0000 call <jmp.&MFC42.#800>
10001D65 |. 8B8D 24FEFFFF mov ecx,[local.119]
10001D6B |. 81E1 FF000000 and ecx,0FF
10001D71 |. 85C9 test ecx,ecx
10001D73 |. 0F84 01010000 je kinguard.10001E7A 关键跳转
10001D79 |. B9 10670010 mov ecx,kinguard.10006710
10001D7E |. E8 7D0C0000 call kinguard.10002A00
10001D83 |. 50 push eax
10001D84 |. 6A 09 push 9
10001D86 |. 8D95 10FEFFFF lea edx,[local.124]
10001D8C |. 52 push edx
10001D8D |. A1 40670010 mov eax,dword ptr ds:[10006740]
把je直接jmp了。保存。
现在来看下脱壳的文件,OK,可以运行。打开要弹出个未注册提醒,然后点是,会弹出他的官方主页,很讨厌。
关键题目那里总显示“剩余XX秒体验”,而且时间在不停掉。。。
OD载入,查看ASCII,找到了“剩余%d秒体验”,双击进入代码
004034CA 57 push edi
004034CB 85C0 test eax,eax
004034CD 8BF1 mov esi,ecx
004034CF 0F85 C1000000 jnz Unpack_.00403596 ; 这里JMP
004034D5 8B15 20704000 mov edx,dword ptr ds:[407020]
004034DB 8D4C24 18 lea ecx,dword ptr ss:[esp+18]
004034DF 4A dec edx
004034E0 8915 20704000 mov dword ptr ds:[407020],edx
004034E6 E8 35120000 call <jmp.&mfc42.#540>
004034EB A1 20704000 mov eax,dword ptr ds:[407020]
004034F0 8D4C24 18 lea ecx,dword ptr ss:[esp+18]
004034F4 50 push eax
004034F5 68 F8734000 push Unpack_.004073F8 ; 剩余%d秒体验
004034FA 51 push ecx
004034FB C74424 1C 00000>mov dword ptr ss:[esp+1C],0
改好以后,还得把弹出网页干掉啊,还是在ASCII里面找
00401877 E8 06300000 call <jmp.&mfc42.#4224>
0040187C 83F8 06 cmp eax,6
0040187F 6A 01 push 1
00401881 75 15 jnz short Unpack_.00401898
00401883 6A 00 push 0
00401885 6A 00 push 0
00401887 68 8C714000 push Unpack_.0040718C ; http://www.wylbw.cn/?wjbsbs
0040188C 6A 00 push 0
0040188E 6A 00 push 0
00401890 FF15 FC325200 call dword ptr ds:[<&shell32.ShellExecut>; shell32.ShellExecuteA
在命令输入: dd 40718c,回车,直接把网址刷掉,然后把修改的保存,打开,发现时间限制去掉了,网址也去掉了,但是
打开的窗口搞不定啊。。。这个我搞了一阵子了,还是没搞定,呵呵,基础不行,嘻嘻
--------------------------------------------------------------------------------
【经验总结】
没啥经验总结的,都是菜鸟手段,呵呵
--------------------------------------------------------------------------------
【版权声明】: 本文原创于疯子韩, 转载请注明作者并保持文章的完整, 谢谢!
2010年04月12日 21:01:16 |
免费评分
-
查看全部评分
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|