好友
阅读权限10
听众
最后登录1970-1-1
|
【文章标题】: 新手初写爆破文章
【文章作者】: aping331(锋少)
【软件名称】: PDF Password Cracker v3.2
【软件大小】: 1.8m
【下载地址】: http://www.crackpdf.com/
【加壳方式】: 无
【保护方式】: 无
【编写语言】: Microsoft Visual C++ 6.0
【操作平台】: WinXP SP3
【软件介绍】: NAG窗口注册方式
【作者声明】: 菜鸟一个,旨在对自己学习的一个总结。只是为了学习,没有其他目的。失误之处敬请诸位大侠赐教!如有雷同,纯属巧合。
--------------------------------------------------------------------------------
【爆破过程总结】
1、PEID查壳,无壳,Microsoft Visual C++ 6.0编写
1、OD载入程序F9(运行)出现NAG窗口后F12(暂停)按K(调用堆栈)
2、DialogBoxParamA鼠标右击点"显示调用"来到【00405623】点句首【00405600】鼠标右击点"显示调用"来到【00403F2C】
3、回溯代码到【00403F1A】关键跳,je->jmp,保存修改到文件爆破结束。
【爆破过程细节】
OD载入程序F9运行弹出NAG注册窗口F12暂停按K查看[调用堆栈]如下
调用堆栈
地址 堆栈 程序过程 / 参数 调用来自 结构
0012F1B4 77D19418 包含 ntdll.KiFastSystemCallRet USER32.77D19416 0012F1E8
0012F1B8 77D2770A USER32.WaitMessage USER32.77D27705 0012F1E8
0012F1EC 77D249C4 USER32.77D2757B USER32.77D249BF 0012F1E8
0012F214 77D24A06 USER32.77D2490E USER32.77D24A01 0012F210
0012F234 77D3B190 USER32.DialogBoxIndirectParamAorW USER32.77D3B18B 0012F230
0012F260 00405629 USER32.DialogBoxParamA crackpdf.00405623 0012F25C <--鼠标右
键"显示调用"
0012F264 00400000 hInst = 00400000
0012F268 000000A3 pTemplate = A3
0012F26C 000302F0 hOwner = 000302F0 ('PDF Password C
0012F270 00405200 DlgProc = crackpdf.00405200
0012F274 00000000 lParam = NULL
0012F278 00403F31 crackpdf.00405600 crackpdf.00403F2C
0012F690 00402605 crackpdf.00403F00 crackpdf.00402600
鼠标右键"显示调用"后停到这里
00405600 /$ 8B4424 04 mov eax,dword ptr ss:[esp+4]
00405604 |. A3 98954B00 mov dword ptr ds:[4B9598],eax
00405609 |. E8 B7B90700 call crackpdf.00480FC5
0040560E |. 8B4C24 08 mov ecx,dword ptr ss:[esp+8]
00405612 |. 8B40 08 mov eax,dword ptr ds:[eax+8]
00405615 |. 6A 00 push 0 ; /lParam = NULL
00405617 |. 68 00524000 push crackpdf.00405200 ; |DlgProc = crackpdf.00405200
0040561C |. 51 push ecx ; |hOwner
0040561D |. 68 A3000000 push 0A3 ; |pTemplate = A3
00405622 |. 50 push eax ; |hInst
00405623 |. FF15 FC834800 call dword ptr ds:[<&USER32.DialogBoxPar>; \DialogBoxParamA <--停
到这里,F2下断点以备观察并做注释"调用NAG窗口过程1",看首句
00405629 |. A1 98954B00 mov eax,dword ptr ds:[4B9598]
0040562E \. C2 0800 retn 8
00405600 /$ 8B4424 04 mov eax,dword ptr ss:[esp+4] <--点中这里,F2下断点以备观察,点中后显
示"局部调用来自 00403F2C",鼠标右键"前往CALL来自00403F2C",如下:
00403F00 /$ 81EC 08040000 sub esp,0x408
00403F06 |. C705 98954B00>mov dword ptr ds:[0x4B9598],0x1
00403F10 |. 56 push esi
00403F11 |. 8BF1 mov esi,ecx
00403F13 |. E8 88100000 call crackpdf.00404FA0 ; 算法CALL,结果看eax=0(成功)?
00403F18 |. 85C0 test eax,eax ; eax=0注册成功;非0则注册失败
00403F1A 74 1A je Xcrackpdf.00403F36 ; 爆破点je->jmp
00403F1C |. C705 98954B00>mov dword ptr ds:[0x4B9598],0x0
00403F26 |. 8B46 1C mov eax,dword ptr ds:[esi+0x1C]
00403F29 |. 50 push eax
00403F2A |. 6A 00 push 0x0
00403F2C |. E8 CF160000 call crackpdf.00405600 ; <--停在这里,F2下断点并注释"调用NAG窗口
过程2"
00403F31 |. A3 98954B00 mov dword ptr ds:[4B9598],eax
00403F36 |> A1 98954B00 mov eax,dword ptr ds:[4B9598]
00403F3B |. 85C0 test eax,eax
00403F3D |. 74 76 je short crackpdf.00403FB5
00403F3F |. 8D4C24 08 lea ecx,dword ptr ss:[esp+8]
|
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|