[求助]dll插件类型软件破解的一般思路(个人分析已写出)
发表于:
2008-6-18 13:26
8154
[求助]dll插件类型软件破解的一般思路(个人分析已写出)
PDFcamp Printer,可以将doc、xls、ppt、txt文档直接“打印”成pdf文件,未注册版本试用30天,且转换后的pdf文件有水印。程序只有几百K,安装后在安装目录中没有主文件,经过半天的摸索才找到如何注册,汗,呵呵,随便打开一个word文档,选择“文件”——“打印(Ctrl+P)”,调出打印框后点“属性”可以看到它的界面,在About选项卡中就有注册框了,如图1
大家看到了,只有一个文本框,没有机器码和用户名输入提示,输入任意假码后点“Register”,弹出提示框“Your register number error ……”,用Wsyscheck查看word.exe加载的模块发现两个可疑dll——pdfui.dll和pdfprn.dll(而且这两个文件是加了UPX壳的),由此猜测它是dll文件注册类型
至此开始尝试之旅了:
OD附加word.exe,bp MessageBoxA下断后点注册,OD提示断下,Alt+F9返回后到此
7718A6E9 56 PUSH ESI
7718A6EA FF37 PUSH DWORD PTR DS:[EDI]
7718A6EC FF15 B0141877 CALL DWORD PTR DS:[<&USER32.IsDialogMess>; USER32.IsDialogMessageW
7718A6F2 F7D8 NEG EAX
7718A6F4 1BC0 SBB EAX,EAX ********停到此处*******
7718A6F6 F7D8 NEG EAX
7718A6F8 5F POP EDI
7718A6F9 5B POP EBX
7718A6FA 5E POP ESI
7718A6FB 5D POP EBP
7718A6FC C2 0800 RETN 8
F8单步走却发现一直都是在模块Comct132中来回绕,根本找不到任何有用信息。
没办法,只有换种思路,尝试使用PointH断点,点击注册后OD断下,F8单步步过,企图回到关键点,但是当F8到这里时却弹出了错误提示窗口,可是从断下到现在还一直都在USER32.dll里面转呢,都还没走出去,晕啊
77D2D2DA 6A 00 push 0
77D2D2DC 6A 0C push 0C
77D2D2DE 5A pop edx
77D2D2DF 8D8D F0F7FFFF lea ecx, dword ptr [ebp-810]
77D2D2E5 8985 F0F7FFFF mov dword ptr [ebp-810], eax
77D2D2EB E8 B4C1FEFF call 77D194A4 *****提示注册码错误*****
77D2D2F0 8B4D FC mov ecx, dword ptr [ebp-4]
77D2D2F3 5E pop esi
77D2D2F4 E8 7BB3FEFF call 77D18674
77D2D2F9 C9 leave
77D2D2FA C2 0400 retn 4
不得已,再换一种思路,用MFCSpy(经过研究发现此公司的软件一般都是VC++编写的),可是用了之后才发现只能找到注册按钮的ID号,却无法找到按钮的点击事件入口点,至此,彻底没思路了!
其实对于处理这类没有主程序,只是作为别的软件插件的东东,我一直都很迷茫,也几乎很少见到有人写这种类型软件破解的一般思路总结或者类似的教程等,所以,在此请教高手指点一二,如果有大侠觉得这个问题有代表性的话愿意为论坛贡献一篇类似教程或总结,我相信肯定是篇精华帖哦o(∩_∩)o...
注:
此程序网上注册码几年前早有流传,今天我拿它来举例,只是觉得它程序小又具有代表性,为了便于高手讲解也方便自己学习,请斑竹不要误会(*^__^*) 嘻嘻……
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!
上传的附件: