首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用带非空CreateEvent参数的LPSECURITY_ATTRIBUTES

如何使用带非空CreateEvent参数的LPSECURITY_ATTRIBUTES
EN

Stack Overflow用户
提问于 2014-10-06 21:51:12
回答 1查看 1.7K关注 0票数 1

我有一个进程-1试图使用以下方法打开事件:

代码语言:javascript
复制
LPCWSTR a = L"ShellReadyEvent";
HANDLE hEvent = OpenEvent ( EVENT_ALL_ACCESS , 0, a );

我试图在后台创建一个进程,以更改偶数a的访问权限。

我试图使用process-2下的create事件,使用:

代码语言:javascript
复制
HANDLE hEvent = CreateEvent ( 0 , 1 , 1 , a );

我想要将lpEventAttributes (第一个参数)替换为将阻止第一个进程但没有运气和想法的东西?

EN

回答 1

Stack Overflow用户

发布于 2014-10-06 22:49:41

使用与process-2不同的用户帐户运行process-1,那么process-2可以创建拒绝访问该用户的SECURITY_DESCRIPTOR,并使用SECURITY_ATTRIBUTES结构将其传递给CreateEvent()

要实际创建SECURITY_DESCRIPTOR,您可以:

  1. 使用InitializeAcl()AddAccessDeniedAce()创建一个否认Process-1用户帐户的SID的ACL。使用LookupAccountName()或相关函数获取用户的SID。使用InitializeSecurityDescriptor()SetSecurityDescriptorDacl()创建一个使用ACL的SECURITY_DESCRIPTOR
  2. 使用ConvertStringSecurityDescriptorToSecurityDescriptor()从描述ACL中所需的所有内容的字符串创建SECURITY_DESCRIPTOR。参见这个示例:创建DACL
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26225451

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档