如何获取Windows的S-1-5-5格式会话SID 验证RMF SC-23会话真实性
获取Windows中S-1-5-5格式的会话SID(RMF SC-23验证需求)
需求说明
受ISSO指派,需验证Windows环境下RMF控制项SC-23的会话真实性,需提供截图证明每个Windows会话拥有唯一标识符。目标为获取S-1-5-5-X-Y格式的会话SID:
- 该SID是会话的唯一标识,区别于以S-1-5-21开头的用户SID
- 会话存续期间SID保持不变,完全注销再登录(锁定/解锁无效)后SID会变更
已尝试的不可靠方法
以下方法均无法满足需求,存在各类问题:
get-wmiobject Win32_LoggedOnUser:返回的LogonId输出随执行用户变化,无法稳定获取会话唯一标识get-wmiobject Win32_session:返回信息与前者基本一致,存在相同问题query user:返回的ID非唯一,通常为1,无法区分不同会话[System.Diagnostics.Process]::GetCurrentProcess().SessionId:结果与query user相同,所有登录会话均返回1[Security.Principal.WindowsIdentity]::GetCurrent().User.Value:返回当前登录用户SID,而非目标会话SIDGet-CimInstance -Class Win32_LUID:在目标系统上无输出- SysInternals
logonsessions64.exe -p:可返回唯一登录会话标识(如Logon session 00000000:000003e7),但缺乏官方文档支持
核心问题
- 是否存在可程序化获取S-1-5-5格式会话SID的PowerShell脚本或命令行工具?
- 能否找到支持SysInternals
logonsessions工具或相关WMI信息的官方文档?
补充:已在Windows事件日志中发现该格式SID,且注意到
Logon ID与S-1-5-5格式SID存在数值关联,但不同实例的偏移量不固定,希望无需依赖事件查看器即可获取目标SID。
内容的提问来源于stack exchange,提问作者duct_tape_coder
相关产品推荐
相关产品推荐

