【破解作者】 jsliyangsj
【作者邮箱】 sjcrack@yahoo.com.cn
【使用工具】 peid OllyDbg1.10
【破解平台】 Winxp
【软件名称】 还原精灵2003版的“设置密码”算法分析
还原精灵2003版的“设置密码”算法分析(不是注册码)
还原精灵5.5版本,是明码比较,在内存中能找到密码的!
还原精灵2003版不是明码比较了,所以在内存中不能直接找到密码了!!!
开始我们的寻找之路:
首先有OD的附加功能附加还原精灵2003版的进程!
F9以后,右击还原精灵,“设置”只要换一个选项,确定,就出来输入密码对话框
随便输入,出现错误信息,暂停,用堆栈中的返回,一步一步来到关键点:
004082E7 . 52 PUSH EDX ; /Arg1
004082E8 . E8 F3FEFFFF CALL HDDGMon.004081E0 算法,于比较的地方了
004082ED . 85C0 TEST EAX,EAX
004082EF . 75 7B JNZ SHORT HDDGMon.0040836C
…………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………
进入004082E8 . E8 F3FEFFFF CALL HDDGMon.004081E0
…………………………………………………………………………………………………………………………
004081E0 /$ 83EC 64 SUB ESP,64
004081E3 |. 33C0 XOR EAX,EAX
004081E5 |. 53 PUSH EBX
004081E6 |. 56 PUSH ESI
004081E7 |. 8BD9 MOV EBX,ECX
004081E9 |. 57 PUSH EDI
004081EA |. B9 19000000 MOV ECX,19
004081EF |. 8D7C24 0C LEA EDI,DWORD PTR SS:[ESP+C]
004081F3 |. F3:AB REP STOS DWORD PTR ES:[EDI]
004081F5 |. 8B4C24 74 MOV ECX,DWORD PTR SS:[ESP+74]
004081F9 |. 8B01 MOV EAX,DWORD PTR DS:[ECX]
004081FB |. 8B40 F8 MOV EAX,DWORD PTR DS:[EAX-8]
004081FE |. 40 INC EAX
004081FF |. 50 PUSH EAX
00408200 |. E8 D7400000 CALL
00408205 |. 8BF8 MOV EDI,EAX
00408207 |. 83C9 FF OR ECX,FFFFFFFF
0040820A |. 33C0 XOR EAX,EAX
0040820C |. 8D5424 0C LEA EDX,DWORD PTR SS:[ESP+C]
00408210 |. F2:AE REPNE SCAS BYTE PTR ES:[EDI]
00408212 |. F7D1 NOT ECX
00408214 |. 2BF9 SUB EDI,ECX
00408216 |. 8BC1 MOV EAX,ECX
00408218 |. 8BF7 MOV ESI,EDI
0040821A |. 8BFA MOV EDI,EDX
0040821C |. 8D5424 0C LEA EDX,DWORD PTR SS:[ESP+C]
00408220 |. C1E9 02 SHR ECX,2
00408223 |. F3:A5 REP MOVS DWORD PTR ES:[EDI],DWORD PTR DS>
00408225 |. 8BC8 MOV ECX,EAX
00408227 |. 83E1 03 AND ECX,3
0040822A |. F3:A4 REP MOVS BYTE PTR ES:[EDI],BYTE PTR DS:[>
0040822C |. 8D4C24 0C LEA ECX,DWORD PTR SS:[ESP+C]
00408230 |. 51 PUSH ECX
00408231 |. 52 PUSH EDX
00408232 |. E8 D9A2FFFF CALL HDDGMon.00402510 ; 处理输入码
00408237 |. 83C4 08 ADD ESP,8
0040823A |. 8D73 64 LEA ESI,DWORD PTR DS:[EBX+64]
0040823D |. 8D4424 0C LEA EAX,DWORD PTR SS:[ESP+C]
00408241 |> 8A10 /MOV DL,BYTE PTR DS:[EAX] ; 下面一个循环就是比较了
00408243 |. 8A1E |MOV BL,BYTE PTR DS:[ESI]
00408245 |. 8ACA |MOV CL,DL
00408247 |. 3AD3 |CMP DL,BL
00408249 |. 75 2E |JNZ SHORT HDDGMon.00408279
0040824B |. 84C9 |TEST CL,CL
0040824D |. 74 16 |JE SHORT HDDGMon.00408265
0040824F |. 8A50 01 |MOV DL,BYTE PTR DS:[EAX+1]
00408252 |. 8A5E 01 |MOV BL,BYTE PTR DS:[ESI+1]
00408255 |. 8ACA |MOV CL,DL
00408257 |. 3AD3 |CMP DL,BL
00408259 |. 75 1E |JNZ SHORT HDDGMon.00408279
0040825B |. 83C0 02 |ADD EAX,2
0040825E |. 83C6 02 |ADD ESI,2
00408261 |. 84C9 |TEST CL,CL
00408263 |.^ 75 DC \JNZ SHORT HDDGMon.00408241
00408265 |> 33C0 XOR EAX,EAX
00408267 |. 33C9 XOR ECX,ECX
00408269 |. 85C0 TEST EAX,EAX
0040826B |. 0F94C1 SETE CL
0040826E |. 5F POP EDI
0040826F |. 5E POP ESI
[注意]看雪招聘,专注安全领域的专业人才平台!