我试图使用PowerShell使用WMI查询来识别logging的会话:
$logon_sess = @(gwmi win32_logonsession -ComputerName $computername)
但是我看到这个命令也报告了较旧的会话,这些还是活动的吗? 我怎样才能重置它?
当我将结果与“查询用户”命令进行比较时,我看到了不同的结果,因为“查询用户”命令仅返回当前会话。
那么,如何使用WMI Win32_LogonSession方法获得现有会话的实际结果呢?
您正在观察此行为,因为Microsoft安全公告MS16-111包含一个更新,它更改了Windows处理login会话对象的方式。 现在,任何泄露访问令牌的服务或应用程序(Microsoft或第三方)现在也会泄露login会话对象。
每当用户注销系统时,都会泄漏login会话对象,除了让服务或应用程序供应商修复代码以便不再泄漏令牌之外,您无法做任何事情。