我想推出一个高度完整的程序。 父进程作为系统服务,LocalSystem帐户运行。 在一台Windows 2008计算机中,subprocess是高级别的,而在另一台2008计算机上,进程是“中等”级别。 它看起来像CreateProcessAsUser在不同的机器上获得不同的级别。
if (!WTSQueryUserToken(sessionID,&hToken)) {//The admin user logged in the rdp session of "sessionID". return; } BOOL fSuccess = CreateProcessAsUser(hToken,NULL,cmdLine,TRUE,CREATE_NEW_CONSOLE,workdir,&si,&pi);
什么导致差异? 有configuration或程序的方式来解决它?
如何检索python中的进程开始时间(或正常运行时间)
使用ChildProcess启动进程时,“系统找不到指定的文件”
我的程序应该如何决定在“Program Files(x86)”下安装?
32位进程可以在64位Windows操作系统上访问更多的内存吗?
如何获得所有后裔在Linux中的cid的subprocessID
不要指望用户的ACL。 当然,LocalSystem帐户可能包含高完整性级别ACL,但这不是获取该IL ACL的可靠方法。 高IL SID是众所周知的( SID: S-1-16-12288 )。 把它放在一个安全描述符中,并将其传递给CreateProcess。
在启动新进程之前,您应该能够通过调用SetToken@R_172_4045@ion并将TOKEN_@R_172_4045@ION_CLASS参数设置为TokenIntegrityLevel来更改检索到的令牌的完整性级别。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。