- UID
- 35582
注册时间2007-8-28
阅读权限20
最后登录1970-1-1
以武会友
该用户从未签到
|
/*********************************************************
脱PEtitle手记
目标程序:记事本Notepad.exe
PEid查壳为:PEtite 2.x [Level 1/9] -> Ian Luck
日期:2007-11-06 12:24
*********************************************************/
设置OD选项:忽略所有异常
用OD载入程序:
=========================================================================
0040D042 > B8 00D04000 mov eax, 0040D000
//OD载入后,停在此处
0040D047 68 4C584000 push 0040584C
0040D04C 64:FF35 0000000>push dword ptr fs:[0]
0040D053 64:8925 0000000>mov dword ptr fs:[0], esp
0040D05A 66:9C pushfw
0040D05C 60 pushad //PEtile的关键名
0040D05D 50 push eax
//单步F8到此,ESP=0013FF9A
//下断:hr 0013FF9A,Shift+F9运行
0040D05E 68 00004000 push 00400000
=============>>>>>>>>>>
0040D03D 66:9D popfw
//运行后,程序中断在此
//删除硬件断点后,单步F8
0040D03F 83C4 08 add esp, 8
0040D042 >- E9 8540FFFF jmp 004010CC //这就是程序的OEP了,呵呵
0040D047 - E9 BBB16D7C jmp SHELL32.DragFinish
0040D04C - E9 C7B16D7C jmp SHELL32.DragQueryFileA
=============>>>>>>>>>>
004010CC 55 push ebp
//单步到此,就可以脱壳了
004010CD 8BEC mov ebp, esp
004010CF 83EC 44 sub esp, 44
004010D2 56 push esi
004010D3 FF15 E4634000 call dword ptr [4063E4] ; kernel32.GetCommandLineA
004010D9 8BF0 mov esi, eax
004010DB 8A00 mov al, byte ptr [eax]
004010DD 3C 22 cmp al, 22
004010DF 75 1B jnz short 004010FC
004010E1 56 push esi
004010E2 FF15 F4644000 call dword ptr [4064F4] ; notepad.0040D0BA
脱壳后,获取IAT时,会有许多无效指针,用等级一修复就可以了,^@^……
附加壳的记事本: |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?加入我们
x
|