微慑信息网

[原创] 对Pusillus Crackme1.0的分析

【文章标题】: 对Pusillus Crackme1.0的分析
【文章作者】: vulsee
【下载地址】: 附件
【作者声明】: 只是感兴趣,没有其他目的。失误之处敬请诸位大侠赐教!
——————————————————————————–
【详细过程】
<注册码当大于8位时.读取时只读取前八位..当小于八位时.会自动用“2”补填至八位,然后验证>
下断运行 断在这里
00401099 |. 6A 0A PUSH 0A ; /Count = A (10.)
0040109B |. 68 44304000 PUSH e.00403044 ; |Buffer = e.00403044
004010A0 |. 68 B80B0000 PUSH 0BB8 ; |ControlID = BB8 (3000.)
004010A5 |. FF35 54304000 PUSH DWORD PTR DS:[403054] ; |hWnd = 005E01FC (‘Pusillus Crackme 1.0′,class=’#32770’)
004010AB |. E8 D2000000 CALL <jmp.&USER32.GetDlgItemTextA> ; GetDlgItemTextA
004010B0 |. E8 14000000 CALL e.004010C9 ;CAll 跟进
—————————————————————————————–
004010D5 |. BE 44304000 MOV ESI,e.00403044 ; Serial 压入ESI
004010DA |> 8036 32 /XOR BYTE PTR DS:[ESI],32 ;依次取serial与32异或.X[n]
004010DD |. 46 |INC ESI
004010DE |.^ E2 FA LOOPD SHORT e.004010DA
004010E0 |. BE 44304000 MOV ESI,e.00403044 ; ASCII “123456789”
004010E5 |. B9 04000000 MOV ECX,4
004010EA |> 8A06 /MOV AL,BYTE PTR DS:[ESI]
004010EC |. 8A5E 01 |MOV BL,BYTE PTR DS:[ESI+1]
004010EF |. 32C3 |XOR AL,BL
004010F1 |. 8887 4C304000 |MOV BYTE PTR DS:[EDI+40304C],AL
004010F7 |. 83C6 02 |ADD ESI,2
004010FA |. 47 |INC EDI
004010FB |.^ E2 ED LOOPD SHORT e.004010EA ; 取刚刚异或的结果.每两数据异或..直到得出一个数据m
004010FD |. BE 4C304000 MOV ESI,e.0040304C
00401102 |. 8A06 MOV AL,BYTE PTR DS:[ESI]
00401104 |. 8A5E 01 MOV BL,BYTE PTR DS:[ESI+1]
00401107 |. 32C3 XOR AL,BL
00401109 |. 8A5E 02 MOV BL,BYTE PTR DS:[ESI+2]
0040110C |. 8A4E 03 MOV CL,BYTE PTR DS:[ESI+3]
0040110F |. 32D9 XOR BL,CL
00401111 |. 32C3 XOR AL,BL
00401113 |. B9 08000000 MOV ECX,8
00401118 |. BE 44304000 MOV ESI,e.00403044 ; ASCII “123456789”
0040111D |> 3006 /XOR BYTE PTR DS:[ESI],AL
0040111F |. 46 |INC ESI
00401120 |.^ E2 FB LOOPD SHORT e.0040111D ; 用刚得到的数据m分别与X[n]异或,计算出数值Y[n]
00401122 |. B9 08000000 MOV ECX,8
00401127 |. BE 44304000 MOV ESI,e.00403044 ; ASCII “123456789”
0040112C |. BF 08304000 MOV EDI,e.00403008
00401131 |> 8A06 /MOV AL,BYTE PTR DS:[ESI]
00401133 |. 3A07 |CMP AL,BYTE PTR DS:[EDI]
00401135 75 1D JNZ SHORT e.00401154
00401137 |. 46 |INC ESI
00401138 |. 47 |INC EDI
00401139 |.^ E2 F6 LOOPD SHORT e.00401131 ; Y[n]的值分别与EDI中的71、18、59、1B、79、42、45、4C比较.否则跳
0040113B |. 6A 40 PUSH 40 ; /Style = MB_OK|MB_ICONASTERISK|MB_APPLMODAL
0040113D |. 68 35304000 PUSH e.00403035 ; |Title = “Crackme 1.0”
00401142 |. 68 10304000 PUSH e.00403010 ; |Text = “Good Work Cracker”
00401147 |. FF35 54304000 PUSH DWORD PTR DS:[403054] ; |hOwner = 005E01FC (‘Pusillus Crackme 1.0′,class=’#32770’)
0040114D |. E8 3C000000 CALL <jmp.&USER32.MessageBoxA> ; MessageBoxA
00401152 |. EB 17 JMP SHORT e.0040116B
00401154 |> 6A 30 PUSH 30 ; /Style = MB_OK|MB_ICONEXCLAMATION|MB_APPLMODAL
00401156 |. 68 35304000 PUSH e.00403035 ; |Title = “Crackme 1.0”
0040115B |. 68 22304000 PUSH e.00403022 ; |Text = “Bad Serial, Sorry!”
00401160 |. FF35 54304000 PUSH DWORD PTR DS:[403054] ; |hOwner = 005E01FC (‘Pusillus Crackme 1.0′,class=’#32770’)
00401166 |. E8 23000000 CALL <jmp.&USER32.MessageBoxA> ; MessageBoxA
///////////////////////////////////////////////////////////////////////////////////
设:X1. X2. X3. X4. X5. X6. X7. X8. X9
m={[(X1.xor 32) xor (X2.xor 32)] xor [(X3. xor 32) xor (X4.xor 32)] } xor { [(X5.xor 32) xor (X6.xor 32)] xor [(X7.xor 32) xor ( X8.xor 32 )] }
m=[X1. xor X2. xor X3. xor X4. xor X5. xor X6. xor X7. xor X8. ]
m xor (X1.xor 32) =71
m xor (X2.xor 32) =18
m xor (X3.xor 32) =59
m xor (X4.xor 32) =1B
m xor (X5.xor 32) =79
m xor (X6.xor 32) =42
m xor (X7.xor 32) =45
m xor (X8.xor 32) =4C
—->>>
m xor X1.=43
m xor X2.=2A
m xor X3.=6B
m xor X4.=29
m xor X5.=4B
m xor X6.=70
m xor X7.=77
m xor X8.=7E
m xor m xor m xor m xor m xor m xor m xor m xor [X1. xor X2. xor X3. xor X4. xor X5. xor X6. xor X7. xor X8. ] =00000019=m
X1. X2. X3. X4. X5. X6. X7. X8. X9
5A 33 72 30 52 69 6E 67
Serial: Z3r0Ring
——————————————————————————–
【版权声明】: 本文纯属技术交流,.转载请注明作者并保持文章的完整, 谢谢!
2007年08月12日 23:20:52
点击下载此文件

本文标题:[原创] 对Pusillus Crackme1.0的分析
本文链接:
(转载请附上本文链接)
http://vulsee.com/archives/vulsee_2007/0813_499.html
转载请附本站链接,未经允许不得转载,,谢谢:微慑信息网-VulSee.com » [原创] 对Pusillus Crackme1.0的分析
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

微慑信息网 专注工匠精神

访问我们联系我们