首页
社区
课程
招聘
[原创]SEH不起作用的问题跟踪
发表于: 2016-4-15 00:36 5053

[原创]SEH不起作用的问题跟踪

2016-4-15 00:36
5053
__try  
{  
    _asm int 3;  
}  
__except(1)  
{  
    printf("except\r\n");  
}  
012D1040 > $  55            push ebp
012D1041   .  8BEC          mov ebp,esp
012D1043   .  6A FF         push -1
012D1045   .  68 D8D02D01   push 012DD0D8
012D104A   .  68 B49A2D01   push _except_handler3igionObjecterr 'DLo>;  SE 处理程序安装
012D104F   .  64:A1 0000000>mov eax,dword ptr fs:[0]
012D1055   .  50            push eax
012D1056   .  64:8925 00000>mov dword ptr fs:[0],esp
012D105D   .  83EC 08       sub esp,8
012D1060   .  53            push ebx
012D1061   .  56            push esi
012D1062   .  57            push edi
012D1063   .  8965 E8       mov dword ptr ss:[ebp-18],esp
012D1066   .  C745 FC 00000>mov dword ptr ss:[ebp-4],0
012D106D   .  CC            int3
012D106E   .  C745 FC FFFFF>mov dword ptr ss:[ebp-4],-1
012D1075   .  EB 1D         jmp short 012D1094
012D1077   .  B8 01000000   mov eax,1
012D107C   .  C3            retn
012D107D   .  8B65 E8       mov esp,dword ptr ss:[ebp-18]
012D1080   .  68 2CCB2D01   push 012DCB2C                            ;  ASCII "except1
"
012D1085   .  E8 B7060000   call printfc_crttProcess4lockonFilterm_L>
012D108A   .  83C4 04       add esp,4
012D108D   .  C745 FC FFFFF>mov dword ptr ss:[ebp-4],-1
012D1094   >  33C0          xor eax,eax
012D1096   .  8B4D F0       mov ecx,dword ptr ss:[ebp-10]
012D1099   .  64:890D 00000>mov dword ptr fs:[0],ecx
012D10A0   .  5F            pop edi
012D10A1   .  5E            pop esi
012D10A2   .  5B            pop ebx
012D10A3   .  8BE5          mov esp,ebp
012D10A5   .  5D            pop ebp
012D10A6   .  C3            retn
012D9AB4 >/$  55            push ebp                                 ;  结构异常处理程序  
012D9AB5  |.  8BEC          mov ebp,esp  
012D9AB7  |.  83EC 08       sub esp,8  
012D9ABA  |.  53            push ebx  
012D9ABB  |.  56            push esi  
012D9ABC  |.  57            push edi  
012D9ABD  |.  55            push ebp  
012D9ABE  |.  FC            cld  
012D9ABF  |.  8B5D 0C       mov ebx,dword ptr ss:[ebp+C]  
012D9AC2  |.  8B45 08       mov eax,dword ptr ss:[ebp+8]  
012D9AC5  |.  F740 04 06000>test dword ptr ds:[eax+4],6  
012D9ACC  |.  0F85 C3000000 jnz 012D9B95  
012D9AD2  |.  8945 F8       mov dword ptr ss:[ebp-8],eax  
012D9AD5  |.  8B45 10       mov eax,dword ptr ss:[ebp+10]  
012D9AD8  |.  8945 FC       mov dword ptr ss:[ebp-4],eax  
012D9ADB  |.  8D45 F8       lea eax,dword ptr ss:[ebp-8]  
012D9ADE  |.  8943 FC       mov dword ptr ds:[ebx-4],eax  
012D9AE1  |.  8B73 0C       mov esi,dword ptr ds:[ebx+C]  
012D9AE4  |.  8B7B 08       mov edi,dword ptr ds:[ebx+8]  
012D9AE7  |.  53            push ebx  
012D9AE8  |.  E8 E3010000   call _ValidateEH3RNssAndSpinCountrr 'DLo>  
012D9AED  |.  83C4 04       add esp,4  
012D9AF0  |.  0BC0          or eax,eax  
012D9AF2  |.  0F8E 8F000000 jle 012D9B87  
012D9AF8  |>  83FE FF       /cmp esi,-1  
012D9AFB  |.  0F84 8D000000 |je 012D9B8E  
012D9B01  |.  8D0C76        |lea ecx,dword ptr ds:[esi+esi*2]  
012D9B04  |.  8B448F 04     |mov eax,dword ptr ds:[edi+ecx*4+4]  
012D9B08  |.  0BC0          |or eax,eax  
012D9B0A  |.  74 66         |je short 012D9B72  
012D9B0C  |.  56            |push esi  
012D9B0D  |.  55            |push ebp  
012D9B0E  |.  8D6B 10       |lea ebp,dword ptr ds:[ebx+10]  
012D9B11  |.  33DB          |xor ebx,ebx  
012D9B13  |.  33C9          |xor ecx,ecx  
012D9B15  |.  33D2          |xor edx,edx  
012D9B17  |.  33F6          |xor esi,esi  
012D9B19  |.  33FF          |xor edi,edi  
012D9B1B  |.  FFD0          |call eax  
012D9B1D  |.  5D            |pop ebp  
012D9B1E  |.  5E            |pop esi  
012D9B1F  |.  8B5D 0C       |mov ebx,dword ptr ss:[ebp+C]  
012D9B22  |.  0BC0          |or eax,eax  
012D9B24  |.  74 4C         |je short 012D9B72  
012D9B26  |.  78 58         |js short 012D9B80  
012D9B28  |.  6A 01         |push 1  
012D9B2A  |.  FF75 08       |push dword ptr ss:[ebp+8]  
012D9B2D  |.  E8 9B000000   |call CallDestructExceptionObjecterr 'DL>  
012D9B32  |.  83C4 08       |add esp,8  
012D9B35  |.  8B7B 08       |mov edi,dword ptr ds:[ebx+8]  
012D9B38  |.  53            |push ebx  
012D9B39  |.  E8 1EF3FFFF   |call __global_unwind2ion0tabionFilterm_>  
012D9B3E  |.  83C4 04       |add esp,4  
012D9B41  |.  8D6B 10       |lea ebp,dword ptr ds:[ebx+10]  
012D9B44  |.  56            |push esi  
012D9B45  |.  53            |push ebx  
012D9B46  |.  E8 76F3FFFF   |call __local_unwind2tcrit for 'DLog::m_>  
012D9B4B  |.  83C4 08       |add esp,8  
012D9B4E  |.  8D0C76        |lea ecx,dword ptr ds:[esi+esi*2]  
012D9B51  |.  6A 01         |push 1  
012D9B53  |.  8B448F 08     |mov eax,dword ptr ds:[edi+ecx*4+8]  
012D9B57  |.  E8 15F4FFFF   |call _NLG_Notifylized_serrlagstertePara>  
012D9B5C  |.  8B048F        |mov eax,dword ptr ds:[edi+ecx*4]  
012D9B5F  |.  8943 0C       |mov dword ptr ds:[ebx+C],eax  
012D9B62  |.  8B448F 08     |mov eax,dword ptr ds:[edi+ecx*4+8]  
012D9B66  |.  33DB          |xor ebx,ebx  
012D9B68  |.  33C9          |xor ecx,ecx  
012D9B6A  |.  33D2          |xor edx,edx  
012D9B6C  |.  33F6          |xor esi,esi  
012D9B6E  |.  33FF          |xor edi,edi  
012D9B70  |.  FFD0          |call eax  
012D9B72  |>  8B7B 08       |mov edi,dword ptr ds:[ebx+8]  
012D9B75  |.  8D0C76        |lea ecx,dword ptr ds:[esi+esi*2]  
012D9B78  |.  8B348F        |mov esi,dword ptr ds:[edi+ecx*4]  
012D9B7B  |.^ E9 78FFFFFF   \jmp 012D9AF8  
012D9B80  |>  B8 00000000   mov eax,0  
012D9B85  |.  EB 23         jmp short 012D9BAA  
012D9B87  |>  8B45 08       mov eax,dword ptr ss:[ebp+8]  
012D9B8A  |.  8348 04 08    or dword ptr ds:[eax+4],8  
012D9B8E  |>  B8 01000000   mov eax,1  
012D9B93  |.  EB 15         jmp short 012D9BAA  
012D9B95  |>  55            push ebp  
012D9B96  |.  8D6B 10       lea ebp,dword ptr ds:[ebx+10]  
012D9B99  |.  6A FF         push -1  
012D9B9B  |.  53            push ebx  
012D9B9C  |.  E8 20F3FFFF   call __local_unwind2tcrit for 'DLog::m_L>  
012D9BA1  |.  83C4 08       add esp,8  
012D9BA4  |.  5D            pop ebp  
012D9BA5  |.  B8 01000000   mov eax,1  
012D9BAA  |>  5D            pop ebp  
012D9BAB  |.  5F            pop edi  
012D9BAC  |.  5E            pop esi  
012D9BAD  |.  5B            pop ebx  
012D9BAE  |.  8BE5          mov esp,ebp  
012D9BB0  |.  5D            pop ebp  
012D9BB1  \.  C3            retn  

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 3
支持
分享
最新回复 (7)
雪    币: 248
活跃值: (3789)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
__try  
{  
    _asm int 3;  
}  
__except(1)  
{  
    printf("except\r\n");  
}

printf没有执行到,是因为int 3异常被调试器捕获了
2016-4-15 00:55
0
雪    币: 1040
活跃值: (1293)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
全文中出现了多次的shell,你懂的 类似词语,那么问题来了,每个你懂的代表什么含义?
2016-4-15 08:37
0
雪    币: 8188
活跃值: (2847)
能力值: ( LV9,RANK:180 )
在线值:
发帖
回帖
粉丝
4
shell for shellcode吧
2016-4-15 08:54
0
雪    币: 1981
活跃值: (771)
能力值: ( LV13,RANK:420 )
在线值:
发帖
回帖
粉丝
5
并不是,没有调试器也捕获不到,请看下结论部分
2016-4-15 10:34
0
雪    币: 1981
活跃值: (771)
能力值: ( LV13,RANK:420 )
在线值:
发帖
回帖
粉丝
6
你猜? 写shell通常是用来干啥的
2016-4-15 10:36
0
雪    币: 1981
活跃值: (771)
能力值: ( LV13,RANK:420 )
在线值:
发帖
回帖
粉丝
7
2016-4-15 10:40
0
雪    币: 199
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
驱动层呢
2016-4-28 13:37
0
游客
登录 | 注册 方可回帖
返回
//