- UID
- 2198
注册时间2005-6-29
阅读权限255
最后登录1970-1-1
副坛主
该用户从未签到
|
软件重启验证 可惜字符串没有加密 根据提示来到这里:
009BC9BA E8 25F2C8FF CALL MyFilmCo.0064BBE4
009BC9BF 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8]
009BC9C2 8B55 F4 MOV EDX,DWORD PTR SS:[EBP-C]
009BC9C5 E8 C28AA4FF CALL MyFilmCo.0040548C ; 这里是明码比较
009BC9CA 75 1B JNZ SHORT MyFilmCo.009BC9E7
009BC9CC BA 30CE9B00 MOV EDX,MyFilmCo.009BCE30 ; 电影收藏大师
009BC9D1 8BC3 MOV EAX,EBX
009BC9D3 E8 7022ACFF CALL MyFilmCo.0047EC48
009BC9D8 33D2 XOR EDX,EDX
009BC9DA 8B83 48070000 MOV EAX,DWORD PTR DS:[EBX+748]
009BC9E0 8B08 MOV ECX,DWORD PTR DS:[EAX]
009BC9E2 FF51 3C CALL DWORD PTR DS:[ECX+3C]
009BC9E5 EB 19 JMP SHORT MyFilmCo.009BCA00
009BC9E7 BA 48CE9B00 MOV EDX,MyFilmCo.009BCE48 ; 电影收藏大师(未注册)
009BC9EC 8BC3 MOV EAX,EBX
纵使上边的加密算法再怎样复杂 一个明码比较或者爆破足以解决一切问题
我们不谈破解 简单的看一下程序的机器码固定问题
我们在重启验证部分F8的时候 看到了该函数中出现了机器码 不管他是否是在这里生成的机器码 因为启动时候的验证在这里 所以我们就从这里入手来分析
在句柄下断 中断后F8单步走
009BC88B 53 PUSH EBX
009BC88C 8BD8 MOV EBX,EAX
009BC88E 33C0 XOR EAX,EAX
到这里的时候 我们看到了机器码 呵呵 那就跟进去研究研究
F7进 0064B688
0064B9F3 E8 DCF7FFFF CALL MyFilmCo.0064B1D4 ; 注意了
0064B9F8 8B45 9C MOV EAX,DWORD PTR SS:[EBP-64] ; [EBP-64]存放的就是机器码的地址
0064B9FB 8D55 A0 LEA EDX,DWORD PTR SS:[EBP-60]
0064B9FE E8 A1E6DBFF CALL MyFilmCo.0040A0A4
JMP 出来 Patch 代码 :
009C5189 60 PUSHAD
009C518A BE 61519C00 MOV ESI,MyFilmCo.009C5161 ; ASCII "chinapygchinapygchinapygchinapyg"
009C518F 8B7D 9C MOV EDI,DWORD PTR SS:[EBP-64]
009C5192 B9 20000000 MOV ECX,20
009C5197 FC CLD
009C5198 F3:A4 REP MOVS BYTE PTR ES:[EDI],BYTE PTR DS:[ESI]
009C519A 61 POPAD
009C519B 8B45 9C MOV EAX,DWORD PTR SS:[EBP-64]
009C519E 8D55 A0 LEA EDX,DWORD PTR SS:[EBP-60]
009C51A1 ^ E9 5868C8FF JMP MyFilmCo.0064B9FE
这样就OK了 当然也可以不去脱壳 直接注入进去猥亵一下就可以了
|
|