对PECompact.exe v1.34的手动脱壳
2007-01-12 20:10:30 来源:WEB开发网核心提示: 0030:0040D4A0 4E52454B 32334C45 6C6C642E 49444700 KERNEL32.dll.GDI0030:0040D4B0 642E3233 55006C6C 33524553 6C642E32 32.dll.USER32.dl0030:0040D4C0
0030:0040D4A0 4E52454B 32334C45 6C6C642E 49444700 KERNEL32.dll.GDI
0030:0040D4B0 642E3233 55006C6C 33524553 6C642E32 32.dll.USER32.dl
0030:0040D4C0 4441006C 49504156 642E3233 49006C6C l.ADVAPI32.dll.I
0030:0040D4D0 4547414D 2E504C48 006C6C64 646D6F63 MAGEHLP.dll.comd
0030:0040D4E0 3233676C 6C6C642E 45485300 32334C4C lg32.dll.SHELL32
0030:0040D4F0 6C6C642E 41434A00 2E31474C 006C6C64 .dll.JCALG1.dll.
0030:0040D500 696C7061 6C642E62 00F4006C 4C746547 aplib.dll...GetL
0030:0040D510 45747361 726F7272 01A70000 65766F4D astError....Move
0030:0040D520 656C6946 01160041 50746547 41636F72 FileA...GetProcA
0030:0040D530 65726464 00007373 655201CB 6F436461 ddress....ReadCo
可以看到偏移地址为40D4A0,根据我们对输入表的知识,(具体原理说明可以看看雪教学中的"脱壳高级篇"中的文章,那里面比我说得清楚多了)我们可以搜索内存映象中的字节A0,D4,00,00。(即00D4A0=40D4A0-400000)来确定输入表的位置。下指令
s 30:400000 l ffffffff A0,D4,00,00
7、搜索的结果显示
Pattern found at 0030:0040D00C (0000D00C)
我们用如下指令来定位到输入表的起始位置(当然目前还不能确定就是输入表)
dd 0040D00C-C
如下为数据窗口的显示结果。
0030:0040D000 0000D0C8 00000000 00000000 0000D4A0 ................
0030:0040D010 0000D2B4 0000D1A0 00000000 00000000 ................
0030:0040D020 0000D4AD 0000D38C 0000D1CC 00000000 ................
0030:0040D030 00000000 0000D4B7 0000D3B8 0000D260 ............`...
现在我们来看看到底是否我们要找的输入表。下指令
更多精彩
赞助商链接