Windows内存攻击概览

S.E.H.狙击

S.E.H.异常处理结构体放在系统栈中,每次压入以下结构体:

1
2
1dword Next S.E.H. recoder 栈顶
1dword Exception handler 栈底

每次S.E.H. unwind展开操作即为将之前处理异常失败的Handler进行清场。

攻击U.E.F.

UnhandledExceptionFilter是系统默认的异常处理函数,即“终极异常处理函数”。

攻击C++虚函数

C++中一个类的多个虚函数地址保存在虚表中,通过成员变量进行溢出到虚表并触发,原虚函数地址改为成员变脸中的shellcode。