-
-
[原创]一种新的异常接管方式
-
发表于: 2016-8-5 23:43 4604
-
最近翻了翻前几年的代码,发现有好多东西都存在记忆的边缘了,所以翻出来复习一下。
(新的)接管异常方式:
【Win7x64下测试通过】
这样当前进程的异常处理的完全控制权就得到了。
(新的)接管异常方式:
【Win7x64下测试通过】
// //Wow64SetupExceptionDispatch函数的目的便是将32位上下文中的程序指针放到全局变量wow64!Ntdll32KiUserExceptionDispatcher //以便飞到32位NTDLL中的KiUserExceptionDispatcher。 // //so, 只需要改掉这里的 wow64!Ntdll32KiUserExceptionDispatcher (00000000`7460af80) 就可以控制64位线程的飞往方向 // 00000000`745dc707 8b0d73e80200 mov ecx,dword ptr [wow64!Ntdll32KiUserExceptionDispatcher (00000000`7460af80)] ds:00000000`7460af80=773c0124 00000000`745dc70d ff151d58ffff call qword ptr [wow64!_imp_CpuSetInstructionPointer (00000000`745d1f30)] //-> x86汇编: 745dc707 - 8B 0D 73E80200 - mov ecx,[0002E873] //经过换算 745dc707 + 5 + 0002E873 + 1 即可得出 wow64!Ntdll32KiUserExceptionDispatcher_addr所在地址 // //最后它修改指向地址即可 *wow64!Ntdll32KiUserExceptionDispatcher_addr = xxxxxx #直接特征码: DWORD Ntdll32KiUserExceptionDispatcher_addr = _Seach("8b0d73e80200"); *(DWORD*)Ntdll32KiUserExceptionDispatcher_addr = MyExceptionDispatch
这样当前进程的异常处理的完全控制权就得到了。
赞赏
他的文章
- [原创]一种新的异常接管方式 4605
- [讨论]PsSetLoadImageNotifyRoutine 2947
- [求助]TP在x64下的OD检测 4334
看原图
赞赏
雪币:
留言: