试图了解进程特权属性

试图了解进程特权属性,第1张

概述试图了解进程特权属性

我正在写一个日志服务,可能会收集一个进程的权限,我想了解每个进程权限的属性。 让我来解释一下这个代码:

HANDLE hToken; if(OpenProcesstoken(::GetCurrentProcess(),TOKEN_query,&hToken)) { DWORD DWSize = 0; if(!GetTokeninformation(hToken,TokenPrivileges,NulL,DWSize,&DWSize) && ::GetLastError() == ERROR_INSUFFICIENT_BUFFER) { BYTE* pb = new (std::nothrow) BYTE[DWSize]; if(pb) { TOKEN_PRIVILEGES* pTPs = (TOKEN_PRIVILEGES*)pb; DWORD DWSize2; if(GetTokeninformation(hToken,pTPs,&DWSize2) && DWSize2 <= DWSize) { for(UINT i = 0; i < pTPs->PrivilegeCount; i++) { //Analyze privilege attributes to understand if it's enabled or Disabled? DWORD DWPrivAttr = pTPs->Privileges[i].Attributes; //... } } delete[] pb; } } CloseHandle(hToken); }

所以我们来看看TOKEN_PRIVILEGES和LUID_AND_ATTRIBUTES的结构:

#define SE_PRIVILEGE_ENABLED_BY_DEFAulT (0x00000001L) #define SE_PRIVILEGE_ENABLED (0x00000002L) #define SE_PRIVILEGE_REMOVED (0X00000004L) #define SE_PRIVILEGE_USED_FOR_ACCESS (0x80000000L)

它看起来像被定义为一个位掩码,但是会带来以下解释这些标志的问题:

ENABLED和ENABLED_BY_DEFAulT什么区别?

用gcc静态编译错误

如何防止显示“程序意外终止”窗口?

valIDation过程的方法不再有控制terminal

窗户被破坏时HDC会发生什么?

linux – 放弃键盘input

什么是SE_PRIVILEGE_USED_FOR_ACCESS ,如何使用?

如果同时设置了SE_PRIVILEGE_ENABLED和SE_PRIVILEGE_REMOVED ,该怎么办? 或者重置?

我只是运行一个简单的testing,对于我的进程SeShutdownPrivilege权限有这些属性设置为0 。 那么这是什么意思呢?

我对这个结构更加困惑,但是现在我只保留这些点。

谢谢!

什么是由dumpbin / imports显示的input地址表和input名称表?

使用纯粹的linux crypto API在C中创buildHMAC SHA1

使用EFAulT将mprotect系统调用注入到跟踪进程失败

如何将IWICBitmapSource转换为HBITMAP?

Environment.SpecialFolder.ApplicationData返回错误的文件夹

按顺序提出您的问题:

ENABLED_BY_DEFAulT表示权限是进程启动时启用的权限之一。 如果您有ENABLED但没有ENABLED_BY_DEFAulT那么进程已明确启用了权限。 如果您有ENABLED_BY_DEFAulT但未ENABLED则该进程已明确禁用该权限。

根据文档, SE_PRIVILEGE_USED_FOR_ACCESS被设置,只要实际使用权限。 您可以将其用于故障排除,例如,检测您是否设置了您实际上未使用的权限,或通过实验确定特定系统调用需要哪些权限。 (我从来没有检查过这个实际上是否按照文件记录,尽管我没有理由不这么认为)。

如果同时设置了SE_PRIVILEGE_ENABLED和SE_PRIVILEGE_REMOVED则在windows中发现了一个错误。 总结

以上是内存溢出为你收集整理的试图了解进程特权属性全部内容,希望文章能够帮你解决试图了解进程特权属性所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1287047.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-09
下一篇 2022-06-09

发表评论

登录后才能评论

评论列表(0条)

保存