Internet Explorer(IE11)如何在没有CreateProcess调用的情况下创建低Integrity子进程

时间:2014-06-20 17:08:12

标签: windows debugging winapi windbg

我想知道Internet Explorer如何在不调用CreateProcess API的情况下创建低完整性不受信任的沙盒子进程。

这是我试过的:

在Windbg中打开可执行文件(iexplore.exe)。在初始BP命中时,我在Kernel32!Cre​​ateProcessA设置了一个断点。然后我让主要的IE进程运行。我可以在进程资源管理器/进程黑客实用程序中看到它创建了沙箱子进程(低完整性子进程iexplore.exe),但它没有触及CreateProcess断点。

enter image description here

我想知道IE是如何做到的。

1 个答案:

答案 0 :(得分:1)

Kernel32!CreateProcessA位于链的顶端,是进一步调用链的包装器

以api形式穿越usermode kernelmode border is ntdll!NtCreateProcessEx的最终调用和黑客可以通过设置堆栈和calling sysenter directly

来挖掘更深的边界并越过边界

尝试在kernel32!CreateProcessW / kernel32!CreateProcessInternal Advapi32!CreateProcessAsUser / ntdll!ntCreateProcessEx等设置断点