gpt4 book ai didi

c++ - 如何使用 LPSECURITY_ATTRIBUTES 参数不为空的 CreateEvent

转载 作者:行者123 更新时间:2023-11-28 06:39:23 26 4
gpt4 key购买 nike

我有一个 process-1 尝试使用以下方式打开事件:

LPCWSTR a = L"ShellReadyEvent";
HANDLE hEvent = OpenEvent ( EVENT_ALL_ACCESS , 0, a );

我正在尝试在后台创建一个进程来更改访问权限甚至一个。

我正在尝试在 process-2 下使用创建事件:

HANDLE hEvent = CreateEvent ( 0 , 1 , 1 , a );

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

最佳答案

使用与进程 2 不同的用户帐户运行进程 1,然后进程 2 可以创建 SECURITY_DESCRIPTOR拒绝访问该用户,并将其传递给 CreateEvent()使用 SECURITY_ATTRIBUTES结构。

要实际创建 SECURITY_DESCRIPTOR,您可以:

  1. 使用 InitializeAcl()AddAccessDeniedAce()创建一个 ACL 来拒绝进程 1 的用户帐户的 SID。使用 LookupAccountName()或相关函数来获取用户的 SID。使用 InitializeSecurityDescriptor()SetSecurityDescriptorDacl()创建一个 SECURITY_DESCRIPTOR使用 ACL。

  2. 使用 ConvertStringSecurityDescriptorToSecurityDescriptor()从描述 ACL 中所有内容的字符串创建 SECURITY_DESCRIPTOR。请参阅此示例:Creating a DACL .

关于c++ - 如何使用 LPSECURITY_ATTRIBUTES 参数不为空的 CreateEvent,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26225451/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com