十二 发表于 2012-2-22 13:39:24

ExitProcess中的回调函数

在使用ExitProcess退出进程的时候,该函数会使用FastPebLock,和LrdpLoaderLock清理临界区。

同时还会在内部使用PebLdr结构中的InInitializationOrderModuleList链表来执行一次所有模块的入口点(具体调用函数为LdrpCallInitRoutine)

由此我们如果可以得到PebLdr中的InInitializationOrderModuleList,我们就可以在进程使用ExitProcess的时候调用任意函数和跳到任意流程。




潇先生 发表于 2012-2-23 12:38:00

能更详细点么。
让我研究这个我还是苦练去吧

十二 发表于 2012-2-23 16:20:00

潇先生 发表于 2012-2-23 12:38 static/image/common/back.gif
能更详细点么。
让我研究这个我还是苦练去吧

Ollydbg → F7 → ExitProcess

十二 发表于 2012-3-22 12:46:06

补一下 线程retn的时候也会调用LdrpCallInitRoutine执行一遍所有模块的入口点
页: [1]
查看完整版本: ExitProcess中的回调函数