Rob*_*ler 3 winapi process createprocess access-control dacl
我的Windows XP/7程序使用Windows API CreateProcess()函数作为其操作的一部分启动子进程.我希望能够以一种特定方式"沙箱化"应用程序.我不想让子进程生成自己的进程(孙子进程).有没有办法做到这一点,而无需进行任何挂钩或DLL注入(或IAT修补)?
我在Process Security和Access Rights上看到了这个MSDN页面:
http://msdn.microsoft.com/en-us/library/windows/desktop/ms684880(v=vs.85).aspx
我注意到以下特定于进程的访问权限:
PROCESS_CREATE_PROCESS (0x0080) Required to create a process.
Run Code Online (Sandbox Code Playgroud)
我可以在挂起状态下启动子进程,通过XOR操作删除该访问权限,使用SetSecurityDescriptor()更新子进程的访问权限,并恢复它以防止它创建自己的子进程吗?或者我应该将它应用于磁盘上的EXE文件吗?这会有用吗?
如果是这样,我会很感激使用SetSecurityDescriptor()的一个很好的代码示例,它会告诉我这样做的细微差别.如果这种方法不起作用,那么您可能会有任何想法或提示.