近日随便下了一个软件练习,用PEID查壳ASP2.1,用脚本脱壳后能正常运行,点注册随意敲了几个字符点击确定后没有反应。
然后载入OD后查找ASC,找到了
005D9F30 |. BA 28A05D00 MOV EDX,Dumped_.005DA028 ; 恭喜!软件注册成功!
双击后到达这里
005D9F30 |. BA 28A05D00 MOV EDX,Dumped_.005DA028 ; 恭喜!软件注册成功!
005D9F35 |. E8 AEAAE2FF CALL Dumped_.004049E8
005D9F3A |. 6A 40 PUSH 40
005D9F3C |. B9 40A05D00 MOV ECX,Dumped_.005DA040 ; 完成功能
005D9F41 |. BA 4CA05D00 MOV EDX,Dumped_.005DA04C ; 恭喜!软件注册成功!
005D9F46 |. A1 D4396200 MOV EAX,DWORD PTR DS:[6239D4]
005D9F4B |. 8B00 MOV EAX,DWORD PTR DS:[EAX]
005D9F4D |. E8 A2DFE8FF CALL Dumped_.00467EF4
005D9F52 |. 6A 40 PUSH 40
005D9F54 |. B9 40A05D00 MOV ECX,Dumped_.005DA040 ; 完成功能
005D9F59 |. BA 64A05D00 MOV EDX,Dumped_.005DA064 ; 密码已经成功清除,下次进入不需要输入密码了!
往上跟到了,我自己分析(可能分析错了)
005D9D54 . 55 PUSH EBP
005D9D55 . 68 349E5D00 PUSH Dumped_.005D9E34
005D9D5A . 64:FF30 PUSH DWORD PTR FS:[EAX]
005D9D5D . 64:8920 MOV DWORD PTR FS:[EAX],ESP
005D9D60 . 33D2 XOR EDX,EDX
005D9D62 . 55 PUSH EBP
005D9D63 . 68 F49D5D00 PUSH Dumped_.005D9DF4
005D9D68 . 64:FF32 PUSH DWORD PTR FS:[EDX]
005D9D6B . 64:8922 MOV DWORD PTR FS:[EDX],ESP
005D9D6E . 8D55 F8 LEA EDX,DWORD PTR SS:[EBP-8]
005D9D71 . 8B83 04030000 MOV EAX,DWORD PTR DS:[EBX+304]
005D9D77 . E8 A4CFE6FF CALL Dumped_.00446D20
005D9D7C . 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8]
005D9D7F . 8D55 FC LEA EDX,DWORD PTR SS:[EBP-4]
005D9D82 . E8 61F6E2FF CALL Dumped_.004093E8--获得用户名
005D9D87 . 837D FC 00 CMP DWORD PTR SS:[EBP-4],0 检验用户名是否是0位
005D9D8B . 75 0C JNZ SHORT Dumped_.005D9D99
005D9D8D . A1 B8056300 MOV EAX,DWORD PTR DS:[6305B8]
005D9D92 . E8 35A8E8FF CALL Dumped_.004645CC
005D9D97 . EB 51 JMP SHORT Dumped_.005D9DEA
005D9D99 > 8D55 F0 LEA EDX,DWORD PTR SS:[EBP-10]
005D9D9C . 8B83 08030000 MOV EAX,DWORD PTR DS:[EBX+308]
005D9DA2 . E8 79CFE6FF CALL Dumped_.00446D20
005D9DA7 . 8B45 F0 MOV EAX,DWORD PTR SS:[EBP-10]
005D9DAA . 8D55 F4 LEA EDX,DWORD PTR SS:[EBP-C]
005D9DAD . E8 36F6E2FF CALL Dumped_.004093E8 获得注册码
005D9DB2 . 837D F4 00 CMP DWORD PTR SS:[EBP-C],0 ---检验注册码是否是0位
005D9DB6 . 75 0C JNZ SHORT Dumped_.005D9DC4
005D9DB8 . A1 B8056300 MOV EAX,DWORD PTR DS:[6305B8]
005D9DBD . E8 0AA8E8FF CALL Dumped_.004645CC
005D9DC2 . EB 26 JMP SHORT Dumped_.005D9DEA
005D9DC4 > 8BC3 MOV EAX,EBX
005D9DC6 . E8 C9020000 CALL Dumped_.005DA094 关键算法CALL F7跟进
005D9DCB . 84C0 TEST AL,AL -----标志位,相等就跳
005D9DCD . 74 09 JE SHORT Dumped_.005D9DD8 ---跳就OVER
005D9DCF . 8BC3 MOV EAX,EBX
005D9DD1 . E8 6E000000 CALL Dumped_.005D9E44
005D9DD6 . EB 12 JMP SHORT Dumped_.005D9DEA
005D9DD8 > B8 F4010000 MOV EAX,1F4
005D9DDD > 48 DEC EAX
005D9DDE .^ 75 FD JNZ SHORT Dumped_.005D9DDD
005D9DE0 . A1 B8056300 MOV EAX,DWORD PTR DS:[6305B8]
005D9DE5 . E8 E2A7E8FF CALL Dumped_.004645CC
005D9DEA > 33C0 XOR EAX,EAX
--------------------------------
关键CALL跟进后,由于我才刚接触破解,不会看算法。。。
005DA094 55 PUSH EBP
005DA095 8BEC MOV EBP,ESP
005DA097 83C4 E8 ADD ESP,-18
005DA09A |. 53 PUSH EBX
005DA09B |. 56 PUSH ESI
005DA09C |. 33D2 XOR EDX,EDX
005DA09E |. 8955 E8 MOV DWORD PTR SS:[EBP-18],EDX
005DA0A1 |. 8955 EC MOV DWORD PTR SS:[EBP-14],EDX
005DA0A4 |. 8955 F4 MOV DWORD PTR SS:[EBP-C],EDX
005DA0A7 |. 8945 FC MOV DWORD PTR SS:[EBP-4],EAX
005DA0AA |. 33C0 XOR EAX,EAX
直接修改
005DA094 B8 01000000 MOV EAX,1
005DA099 C3 RETN
保存修改后重进程序,点注册。。恭喜!软件注册成功!
把我高兴了一下,还以为成功了,结果进去一看还是提示未注册版,再注册再重进还是老样子,我想是软件爆破只是强制跳过了错误信息,但判断函数没有得到正确的返回值,所以还是未注册版,搞了快4天了,一点进展都没有,希望大家帮一下,
软件下载地址:http://www.newhua.com/soft/44083.htm
如果能有个破解方法, 就能帮我找到我不足的地方。。。拜托
[课程]FART 脱壳王!加量不加价!FART作者讲授!