You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何模拟身份线程调用CreateProcess创建的子进程运行在系统会话

原因解答

你关于CreateProcess()令牌选择逻辑的猜测是完全正确的,默认参数调用CreateProcess()时,系统确实会取用父进程的主令牌,而非调用线程的模拟令牌,这就是子进程始终运行在系统会话的核心原因。

具体逻辑如下:

  • Windows中进程和线程的安全上下文相互独立:每个进程有唯一的全局主令牌,记录进程的身份、权限、所属会话ID等核心属性,你的常驻系统进程主令牌默认关联系统会话(会话0)、SYSTEM身份,该属性不会因为个别线程做了身份模拟而变更。
  • 线程身份模拟只会给指定线程附加独立的模拟令牌,仅作用于该线程本身的资源访问操作,既不会修改所属进程的主令牌,也不会影响CreateProcess()的默认令牌选择逻辑。
  • 标准CreateProcess()的默认设计逻辑就是继承父进程的所有核心属性,没有显式指定额外令牌参数时,子进程的安全上下文、会话归属等配置全部从父进程读取,和调用线程的当前模拟状态无关。

内容的提问来源于stack exchange,提问作者Easwar Aiyer

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 23:09:04