如何检测Windows Server是否开启了远程桌面多用户多会话?

2024-08-12 19:46:02 浏览数 (1)

代码语言:txt复制
CVE-2024-38077咨询是一方面,更主要是end of life的系统(2008R2/2012R2)安装不上补丁

EOL的系统不支持安装补丁是微软的限制

不过我已经针对性总结了方案输出文档

不论打补丁还是重装为高版本系统或是就地升级,操作之前,先做快照,以备不时之需回滚之便
不论打补丁还是重装为高版本系统或是就地升级,操作之前,先做快照,以备不时之需回滚之便
不论打补丁还是重装为高版本系统或是就地升级,操作之前,先做快照,以备不时之需回滚之便

针对CVE-2024-38077的补丁,2008R2和2012R2应用补丁超慢且最终失败回滚的方案
https://cloud.tencent.com/developer/article/2443437

【背景】远程多用户多会话有重大安全漏洞,见各个安全厂商、云厂商发文

腾讯安全/腾讯云官方安全公告已经发布:

https://mp.weixin.qq.com/s/ZedO02nasU5HZCmQ7oQDkQ

https://cloud.tencent.com/announce/detail/2004

注意:微软的新补丁很多时候也有bug,可能为了解决一个隐患但不是马上受影响的问题而引入了当即影响系统或业务异常的新问题,建议打补丁之前先做快照,以备不时之需回滚之便。

代码语言:txt复制
建议打补丁之前先做快照,以备不时之需回滚之便
建议打补丁之前先做快照,以备不时之需回滚之便
建议打补丁之前先做快照,以备不时之需回滚之便

Windows Server 2008R2和2012R2,由于end of life,安装过程没问题,重启应用补丁非常慢,并且最终会失败回滚。2012R2早在2023年10月就end of life,还有更早的2020年1月 end of life的2008R2,都是一样的现象,对这种EOL的系统,微软提供的补丁应该得购买了微软ESU(扩展安全更新服务:Extended Security Updates(ESUs) )才能完全成功应用后续补丁。

深信服发文称:微软披露最新的远程代码执行超高危漏洞CVE-2024-38077, CVSS评分高达9.8 ,可导致开启了远程桌面许可服务的Windwos服务器完全沦陷。漏洞影响Windows Server 2000到Windows Server 2025所有版本,已存在近30年。该漏洞可稳定利用、可远控、可勒索、可蠕虫等,破坏力极大,攻击者无须任何权限即可实现远程代码执行。

如何检测Windows Server是否开启了远程桌面多用户多会话?

代码语言:txt复制
腾讯云Windows公共镜像默认都没有开启,就看用户自己有没有开启了
腾讯云Windows公共镜像默认都没有开启,就看用户自己有没有开启了
腾讯云Windows公共镜像默认都没有开启,就看用户自己有没有开启了

本人在Server2008R2~Server2025测试(powershell2.0、powershell高版本,英文版、中文版,不同的窗口宽度,这些都试了),比较通用的检测代码如下:

代码语言:powershell复制
$bufferSize = $Host.UI.RawUI.BufferSize
$bufferSize.Width = 1024
$Host.UI.RawUI.BufferSize = $bufferSize

$osInfo = Get-WmiObject -Class Win32_OperatingSystem
$osVersion = [version]$osInfo.Version

if ($osVersion -lt [version]"6.2") {
    # Windows Server 2008 R2 and older
    #936 chinese wrong, but 437 is ok
    
powershell -NoProfile -ExecutionPolicy Bypass -Command "chcp 437; ServerManagerCmd -query | findstr 'RSAT-RDS'"
powershell -NoProfile -ExecutionPolicy Bypass -Command "chcp 437; ServerManagerCmd -query | findstr 'Remote-Desktop-Services RDS' | findstr /v 'RSAT-RDS'"
    
} else {
    # Windows Server 2012 and newer
    #437 is not in alignment, but 936 is ok
    #powershell -NoProfile -ExecutionPolicy Bypass -Command "chcp 437; Get-WindowsFeature -name Remote-Desktop-Services, rds-*, *rds-licensing*, RSAT, RSAT-Role-Tools, rsat-rds-* | Format-Table -AutoSize"
    
powershell -NoProfile -ExecutionPolicy Bypass -Command "Get-WindowsFeature -name rsat-rds-*, RDS-Licensing-UI | Format-Table -AutoSize"
powershell -NoProfile -ExecutionPolicy Bypass -Command "Get-WindowsFeature -name Remote-Desktop-Services, RDS-Connection-Broker, RDS-Gateway, RDS-Licensing, RDS-RD-Server, RDS-Virtualization, RDS-Web-Access| Format-Table -AutoSize"

}

远程桌面服务/工具部分,没[X]也没1的就是没有启用,有[X]/有1的就是启用了,比如下图示例

没启用

2008R2

代码语言:txt复制
Active code page: 437
        [ ] Remote Desktop Services Tools  [RSAT-RDS]
            [ ] Remote Desktop Session Host Tools  [RSAT-RDS-RemoteApp]
            [ ] Remote Desktop Gateway Tools  [RSAT-RDS-Gateway]
            [ ] Remote Desktop Licensing Tools  [RSAT-RDS-Licensing]
            [ ] Remote Desktop Connection Broker Tools  [RSAT-RDS-Conn-Broker]
Active code page: 437
[ ] Remote Desktop Services  [Remote-Desktop-Services]
    [ ] Remote Desktop Session Host  [RDS-RD-Server]
    [ ] Remote Desktop Virtualization Host  [RDS-Virtualization]
        [ ] Core Services  [RDS-Virtualization-Core]
        [ ] RemoteFX  [RDS-RemoteFX]
    [ ] Remote Desktop Licensing  [RDS-Licensing]
    [ ] Remote Desktop Connection Broker  [RDS-Connection-Broker]
    [ ] Remote Desktop Gateway  [RDS-Gateway]
    [ ] Remote Desktop Web Access  [RDS-Web-Access]
PS C:UsersAdministrator>

2012-2025

代码语言:txt复制
PS C:UsersAdministrator> powershell -NoProfile -ExecutionPolicy Bypass -Command "chcp 936; Get-WindowsFeature -name Remote-Desktop-Services, RDS-Connection-Broker, RDS-Gateway, RDS-Licensing, RDS-RD-Server, RDS-Virtualization, RDS-Web-Access| Format-Table -AutoSize"
活动代码页: 936

Display Name               Name                    Install State
------------               ----                    -------------
[ ] 远程桌面服务           Remote-Desktop-Services     Available
    [ ] 远程桌面 Web 访问  RDS-Web-Access              Available
    [ ] 远程桌面会话主机   RDS-RD-Server               Available
    [ ] 远程桌面连接代理   RDS-Connection-Broker       Available
    [ ] 远程桌面授权       RDS-Licensing               Available
    [ ] 远程桌面网关       RDS-Gateway                 Available
    [ ] 远程桌面虚拟化主机 RDS-Virtualization          Available


PS C:UsersAdministrator> powershell -NoProfile -ExecutionPolicy Bypass -Command "chcp 936; Get-WindowsFeature -name rsat-rds-*, RDS-Licensing-UI | Format-Table -AutoSize"
活动代码页: 936

Display Name                         Name                            Install State
------------                         ----                            -------------
        [ ] 远程桌面服务工具         RSAT-RDS-Tools                      Available
            [ ] 远程桌面授权工具     RDS-Licensing-UI                    Available
            [ ] 远程桌面网关工具     RSAT-RDS-Gateway                    Available
            [ ] 远程桌面许可诊断程序 RSAT-RDS-Licensing-Diagnosis-UI     Available

启用了:但凡远程桌面服务/工具部分有[X]就是启用了

2008R2

代码语言:txt复制
powershell -NoProfile -ExecutionPolicy Bypass -Command "chcp 437; ServerManagerCmd -query | findstr 'RSAT-RDS'"
powershell -NoProfile -ExecutionPolicy Bypass -Command "chcp 437; ServerManagerCmd -query | findstr 'Remote-Desktop-Services RDS' | findstr /v 'RSAT-RDS'"

2012-2025

代码语言:txt复制
powershell -NoProfile -ExecutionPolicy Bypass -Command "Get-WindowsFeature -name rsat-rds-*, RDS-Licensing-UI | Format-Table -AutoSize"
powershell -NoProfile -ExecutionPolicy Bypass -Command "Get-WindowsFeature -name Remote-Desktop-Services, RDS-Connection-Broker, RDS-Gateway, RDS-Licensing, RDS-RD-Server, RDS-Virtualization, RDS-Web-Access| Format-Table -AutoSize"

除过直接过滤相关服务的安装状态外,还可以通过注册表过滤,2008R2的注册表没查到(机制跟高版本有所不同),2012-2025都有注册表可以查,值是1就说明启用了,值为0就说明没启用

代码语言:txt复制
reg query "HKLMSOFTWAREMicrosoftServerManagerServicingStorageServerComponentCacheRemote-Desktop-Services" /v InstallState
reg query "HKLMSOFTWAREMicrosoftServerManagerServicingStorageServerComponentCacheRDS-Connection-Broker" /v InstallState
reg query "HKLMSOFTWAREMicrosoftServerManagerServicingStorageServerComponentCacheRDS-Gateway" /v InstallState
reg query "HKLMSOFTWAREMicrosoftServerManagerServicingStorageServerComponentCacheRDS-Licensing" /v InstallState
reg query "HKLMSOFTWAREMicrosoftServerManagerServicingStorageServerComponentCacheRDS-RD-Server" /v InstallState
reg query "HKLMSOFTWAREMicrosoftServerManagerServicingStorageServerComponentCacheRDS-Virtualization" /v InstallState
reg query "HKLMSOFTWAREMicrosoftServerManagerServicingStorageServerComponentCacheRDS-Web-Access" /v InstallState
reg query "HKLMSOFTWAREMicrosoftServerManagerServicingStorageServerComponentCacheRDS-Licensing-UI" /v InstallState
reg query "HKLMSOFTWAREMicrosoftServerManagerServicingStorageServerComponentCacheRSAT-RDS-Gateway" /v InstallState
reg query "HKLMSOFTWAREMicrosoftServerManagerServicingStorageServerComponentCacheRSAT-RDS-Licensing-Diagnosis-UI" /v InstallState
代码语言:txt复制
CVE-2024-38077咨询是一方面,更主要是end of life的系统(2008R2/2012R2)安装不上补丁

EOL的系统不支持安装补丁是微软的限制

不过我已经针对性总结了方案输出文档

不论打补丁还是重装为高版本系统或是就地升级,操作之前,先做快照,以备不时之需回滚之便
不论打补丁还是重装为高版本系统或是就地升级,操作之前,先做快照,以备不时之需回滚之便
不论打补丁还是重装为高版本系统或是就地升级,操作之前,先做快照,以备不时之需回滚之便

针对CVE-2024-38077的补丁,2008R2和2012R2应用补丁超慢且最终失败回滚的方案
https://cloud.tencent.com/developer/article/2443437

0 人点赞