WEB开发网
开发学院网络安全黑客技术 脱壳教程---天然码输入法的(2) 阅读

脱壳教程---天然码输入法的(2)

 2006-07-03 20:26:15 来源:WEB开发网   
核心提示:用dump出的trm32.ime替换原来的文件,再次运行输入法管理器,脱壳教程---天然码输入法的(2),选天然码,点“属性”,点“确定”可来到注册窗口,我的机器码为123456789012,将弹出MESSAGEBOX说没有指纹盘或disk serial不对,contro

用dump出的trm32.ime替换原来的文件。再次运行输入法管理器。选天然码,点“属性”,将弹出MESSAGEBOX说没有指纹盘或disk serial不对。control-n激活trw2k,“pmodule”,“确定”后,回到trw2k:

:00401514 89442410 mov dword ptr [esp+10], eax
:00401518 8B442434 mov eax, dword ptr [esp+34]
:0040151C 50 push eax
:0040151D E88EFCFFFF call 004011B0 〈=====进入
:00401522 8BD8 mov ebx, eax
:00401524 3BDE cmp ebx, esi
:00401526 7528 jne 00401550
:00401528 56 push esi
* Possible StringData Ref from Data Obj ->"DiskSerial"
|
:00401529 68DC704000 push 004070DC
:0040152E B8847F4000 mov eax, 00407F84
* Possible StringData Ref from Data Obj ->"Disk not exists or process failed "
->"!"
|
:00401533 68B8704000 push 004070B8
:00401538 56 push esi
:00401539 89442424 mov dword ptr [esp+24], eax
:0040153D 89442428 mov dword ptr [esp+28], eax
:00401541 89442420 mov dword ptr [esp+20], eax
* Reference To: USER32.MessageBoxA, Ord:01BEh
|
:00401545 FF15C8604000 Call dword ptr [004060C8]
:0040154B E9A1000000 jmp 004015F1

注意这时是在getdiskserial.exe的领空。(也就是说trm32.ime产生getdiskserial.exe进程)。往上看,注意0040151D处的call 004011B0,在此处下断点,再次运行进入“call 004011B0”来到这:

017F:00401439 50 PUSH EAX
017F:0040143A 8D8C2488030000 LEA ECX,[ESP+0388]
017F:00401441 6A04 PUSH BYTE +04
017F:00401443 51 PUSH ECX
017F:00401444 6A00 PUSH BYTE +00
017F:00401446 6A00 PUSH BYTE +00
017F:00401448 6A01 PUSH BYTE +01
017F:0040144A 56 PUSH ESI
017F:0040144B FF1514604000 CALL `KERNEL32!DeviceIoControl` 〈=调用vxd
017F:00401451 56 PUSH ESI
017F:00401452 FF151C604000 CALL `KERNEL32!FindCloseChangeNotification`
017F:00401458 8BB42490130000 MOV ESI,[ESP+1390]
017F:0040145F 8A843484030000 MOV AL,[ESP+ESI+0384]
017F:00401466 84C0 TEST AL,AL 〈==是否有指纹盘或disk serial ?
017F:00401468 744D JZ 004014B7 〈==没有就跳
017F:0040146A 8BC6 MOV EAX,ESI

017F:0040144B处调用diskserial.vxd绝对读磁盘,017F:00401468处是判断。因为没有指纹盘,将此处改为nop;nop;替换getdiskserial.exe(在window的system下)。

再次运行,这次可以来到“属性”窗口,点“确定”可来到注册窗口,我的机器码为123456789012,输入用户名leo_cyl,注册码12121212。下断点hmemcpy,跟踪来到这里:

:10001FC2 8D4C240C lea ecx, dword ptr [esp+0C]
:10001FC6 8D542414 lea edx, dword ptr [esp+14]
:10001FCA 51 push ecx
:10001FCB 8D442434 lea eax, dword ptr [esp+34]
:10001FCF 52 push edx
:10001FD0 50 push eax
:10001FD1 E85A5E0000 call 10007E30
:10001FD6 83C40C add esp, 0000000C
:10001FD9 E822600000 call 10008000 《=====注意
:10001FDE A1ACF90110 mov eax, dword ptr [1001F9AC]
:10001FE3 6A00 push 00000000
:10001FE5 85C0 test eax, eax
:10001FE7 7425 je 1000200E 〈===跳的话就注册失败
:10001FE9 6878F10010 push 1000F178
:10001FEE 686CF10010 push 1000F16C
:10001FF3 56 push esi
* Reference To: user32.MessageBoxA, Ord:01B7h
|
:10001FF4 FF15A0D10010 Call dword ptr [1000D1A0]
:10001FFA 6A01 push 00000001
:10001FFC 56 push esi
* Reference To: user32.EndDialog, Ord:00B9h
|
:10001FFD FF1590D20010 Call dword ptr [1000D290]
:10002003 5F pop edi
:10002004 5E pop esi
:10002005 33C0 xor eax, eax
:10002007 5B pop ebx
:10002008 83C438 add esp, 00000038
:1000200B C21000 ret 0010

Tags:脱壳 教程 天然

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接