【软件名称】Snooperv1.40.1
【下载地址】见附件
【应用平台】Win9x/NT/2000/XP
【软件大小】http://mydown.yesky.com/soft/355/33519355.shtml
【破解声明】破解只是感兴趣,无其它目的。失误之处敬请诸位大侠赐教!
【破解难度】入门新手
【破解工具】OD
【软件简介】Snooper是声音录制软件,使用先进快速的mp3技术,录制一小时只需要不到4mb的空间,还可以自动通过电子邮件来发送完成的录音,功能繁多。
看看最新的Snooper吧,录音倒是很好,这个相对来说明比较简单的,大牛飘过...;可能写的有点乱,我自己还是看懂了,就拿出来和大家分享一下,不要喷我..
我是把系统时间修改了一下才出现这种情况的。我们当取消,后来发现是-1天了,大概意思是说试用的30天已经结束的意思吧。
顺利安装上之后,试用运行了一下,发现在我们打开注册框的时候,鼠标图标发生了变化,等了一会儿时间才关闭窗口,我就在想是不是可以用sleep函数处下断点,结果验证了这一点鼠标图标变了,我就想是不是可以用SetCursor来下断点,找关键位置呢。当然可以,下面我们就用这个断点来试试吧。
思路一:OD载入,下bp SetCursor断点。
0012F130 00489EC8 /CALL 到 SetCursor 来自 snpr.00489EC3
往上回溯,ALT +F9 运行起来后,我们才发现0050DBF5 . 42 74 6E 4F 4>asciiBtnOKClick"
原来我们可以搜索 "BtnOKClick" 或者 搜索"BitBtn2Click",看到这个字符串,让我想到了DELPHI,后来一看还真是delphi编写的,特征明显呀。。
0050DC06 . 42 69 74 42 7>ascii "BitBtn2Click"
0050DC19 . 46 6F 72 6D 5>ascii "FormShow"
0050DC21 . 10 db 10
0050DC22 . 54 66 72 6D 5>ascii "TfrmRegistration"
现在先不管了,咱们就是要不直寻常走!否则,对强检测强加密的就不好使了,我们的思维好活跃一点点嘛。
到段首下断点0050DC78,输入注册名:DevilMayCry,注册码:0123456随便吧,反正咱们输入的都是假,真的咱们又不知道,点确定,断了下来0050DC78。这里就是我们要找的按钮事件吧。
0050DC78 /. 55 push ebp
0050DC79 |. 8BEC mov ebp,esp
0050DC7B |. 33C9 xor ecx,ecx
0050DC7D |. 51 push ecx
0050DC7E |. 51 push ecx
0050DC7F |. 51 push ecx
半步往下走,到这里就出现我们的注册名,注册码了
0050DCB1 |. 8D55 F8 lea edx,[local.2]
0050DCB4 |. 8B45 FC mov eax,[local.1]
0050DCB7 |. 8B80 0C030000 mov eax,dword ptr ds:[eax+0x30C]
0050DCBD |. E8 8EE1F5FF call snpr.0046BE50 注册码
0050DCC2 |. 8B45 F8 mov eax,[local.2]
***************
0050DCC5 |. 50 push eax
0050DCC6 |. 8D55 F4 lea edx,[local.3]
0050DCC9 |. 8B45 FC mov eax,[local.1]
0050DCCC |. 8B80 00030000 mov eax,dword ptr ds:[eax+0x300]
0050DCD2 |. E8 79E1F5FF call snpr.0046BE50 注册名
0050DCD7 |. 8B55 F4 mov edx,[local.3]
中间这个空行,才发现这两断代码是如此的相似....
0050DCD7 |. 8B55 F4 mov edx,[local.3]
0050DCDA |. A1 44395200 mov eax,dword ptr ds:[0x523944]//
0050DCDF |. 8B00 mov eax,dword ptr ds:[eax]//
0050DCE1 |. 8B80 44040000 mov eax,dword ptr ds:[eax+0x444]//525FF84
0050DCE7 |. 59 pop ecx
到这里,我们看里面不仅出下神密的地址、假码、用户名,相必要干点什么了吧,下的jnz又跳过了很多代码。比较的是al里面的,我想要到了函数里面去修改起始行mov eax,1, retn,后来一看还定入注册表了。CALL 004D7020前面的参数在寄存器里面了。
EAX 00C3A008
ECX 00C656C0 ASCII "0123456"
EDX 00C85B14 ASCII "DevilMayCry"
0050DCE8 |. E8 3393FCFF call snpr.004D7020
进入到004D7020里面去看一看,有下面几个关键的地方
004D7040 |. 8B45 F8 mov eax,[local.2]
004D7043 |. E8 1CE0F2FF call snpr.00405064 ; 增加 Ansi 字符串的引用计数
004D7048 |. 33C0 xor eax,eax
004D704A |. 55 push ebp
004D704B |. 68 0A714D00 push snpr.004D710A
004D7050 |. 64:FF30 push dword ptr fs:[eax]
004D7053 |. 64:8920 mov dword ptr fs:[eax],esp
004D7056 |. 8D45 F4 lea eax,[local.3]
004D7059 |. E8 46DBF2FF call snpr.00404BA4 ; 清空字符串
004D705E |. 8D55 F0 lea edx,[local.4]
004D7061 |. 8B45 F8 mov eax,[local.2]
004D7064 |. E8 071FF3FF call snpr.00408F70 ; 转换成大写、
004D7069 |. 8B55 F0 mov edx,[local.4]
004D706C |. 8D45 F8 lea eax,[local.2]
004D706F |. E8 C8DBF2FF call snpr.00404C3C ; 复制 Ansi 字符串
004D7074 |. 68 F4010000 push 0x1F4 ; /Timeout = 500. ms
004D7079 |. E8 2A86F3FF call <jmp.&kernel32.Sleep> ; \Sleep
004D707E |. 8D4D F4 lea ecx,[local.3]
004D7081 |. 8B55 FC mov edx,[local.1]
004D7084 |. 8BC6 mov eax,esi
004D7086 |. E8 C1070000 call snpr.004D784C ; 这里是关键位置
004D708B |. 68 F4010000 push 0x1F4 ; /Timeout = 500. ms
004D7090 |. E8 1386F3FF call <jmp.&kernel32.Sleep> ; \Sleep
004D7095 |. 8B45 F8 mov eax,[local.2] ;假的注册码
004D7098 |. 8B55 F4 mov edx,[local.3] ;我们的真注册码
004D709B |. E8 20DFF2FF call snpr.00404FC0 ;Ansi 字符串比较
004D70A0 |. 75 31 jnz Xsnpr.004D70D3
可以[local.3]即[ebp-0xc],[local.2]即[ebp-0x8].
$-C > 00C540A4 ASCII "C0AE8163B56"
$-8 > 00C9DFC0 ASCII "0123456"
$-4 > 00C85B14 ASCII "DevilMayCry"
$ ==> >/0012F174
进去之后喃,只发现字符串的,没有明确的其它计算,实质在这之前00C3A008+4A...进行了处理,这一点可以在你的注册表里面得到验证,当然那里还有其它的设置,我已经粘在后面了,这里已经出现在堆栈里面[ebp-c]了。不用去修改004D70A0或者0050DCEF了,它会重启验证的。
0050DCED |. 84C0 test al,al
0050DCEF |. 75 67 jnz Xsnpr.0050DD58
如果不跳走,这下面的就是修改注册版一些设置,比如说把文件框设置成灰色、修改menu菜单、修改注册表的键值,其它功能修改。这个软件从分析上来看只有三层CALL所以还有其它很多种方法去破解它、比如说在程序启动地时候修改注册表。
来看看其它思想吧:1:我们点完确定之后,注册窗体就没了,因此我们还可以设置bp ShowWindow.
2:按常规的获取文本GetWindowTextA.
3:中间缓冲时间比较长,可以下bp sleep
[HKEY_LOCAL_MACHINE\SOFTWARE\Snooper\Info]
"Data"=hex:26,89,e1,07,0b,44,65,76,69,6c,4d,61,79,43,72,79,1d,25,40,00,7c,e9,\
12,00,08,a0,c2,00,64,00,00,00,04,e7,12,00,d0,17,c1,00,00,00,00,00,00,00,00,\
00,84,bc,48,00,3c,ef,c7,00,a8,d0,c8,00,98,d0,c8,00,10,00,00,00,ed,24,40,00,\
74,e7,12,00,16,25,40,00,1d,25,40,00,01,00,00,00,14,11,40,00,28,3f,c2,00,aa,\
21,40,00,40,e7,12,00,fb,0b,43,30,41,45,38,31,36,33,42,35,36,23,40,00,74,e7,\
12,00,5c,e7,12,00,00,f0,fd,7f,84,e7,12,00,40,24,80,7c,48,e7,12,00,13,24,80,\
7c,7c,e9,12,00,08,a0,c2,00,00,00,00,00,14,00,00,00,01,00,00,00,00,00,00,00,\
00,00,00,00,10,00,00,00,c0,b4,b3,ff,ff,ff,ff,ff,00,00,00,00,5c,e7,12,00,3c,\
e7,12,00,c5,4b,40,00,a0,e7,12,00,dc,0a,a5,09,0b,4f,31,6f,00,00,c0,c2,53,cc,\
db,41,fa,83,44,0e,f4,01,00,00
在这里面有我们的用户名和注册码,重启会验证的。
附件: reg.rar
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!