admin管理员组

文章数量:1602084

一、问题描述

windows主机经基线加固处理后,重启主机再次mstsc远程连接时,报:内部错误,如下所示:


客户端侧报10013,服务器侧报10010;

二、分析处理

1、因现场环境是云主机,因此,我们需要首先通过移动云平台登录云主机,检查远程连接服务是否正常,端口是否正常;检查Remote Desktop Configuration(依存服务Workstation),Remote Desktop Services,Remote Desktop Services UserMode Port Redirector这些服务,检查是否启动正常;检查服务器的密码是否存在错误;检查是否安全软件配置修改,版本升级导致;

2、如果怀疑网络异常,可执行netsh winsock reset,重置网络(重置socket)后重启,尝试,现场验证无果。netsh int ip reset重新配置网络;

3、组策略编辑器(gpedit.msc)->管理模板->windows组件->远程桌面服务->远程桌面会话主机->安全->远程(RDP)连接要求使用指定的安全层,更改为“已启用”,下方安全层选择“RDP”。确定后,重启RDP服务,或者直接重启主机。----》跳过身份验证登录,现场验证未果。

4、问询/会议重启之前可能的配置,还原本地安全组策略相关配置项,尝试;现场因重启距离配置时间过长,无法准确确定修改项。

5、执行eventvwr.exe打开事件台,检查报错,可看到服务器测有报错:创建TLS客户端凭据时发生严重错误,内部错误状态为10010,如下所示:


6、、使用mstsc替代程序尝试替换:软件下载,该版本是20年前的mstsc,默认不走加密协议;

7、对比正常主机配置项,排除法消除怀疑项,尝试;


注:客户端检测上述注册表项,删除Default下,目标服务器的IP地址尝试。现场验证未果。

8、重新重新注册系统组件,执行如下命令,完成后重启尝试

for %1 in (%windir%\system32\*.dll) do regsvr32.exe /s %1

9、组策略修改,gpedit.msc,【管理模板】—【网络】找到ssl配置设置,双击ssl密码套件顺序,现场已启用,检查对应证书配置,发现未配置,后来恢复后,重新登录系统后,重新配置证书,如下所示:

注: 上图中密码套件分隔符有误,请用逗号替换。


注: 更多参看SSL/TLS协议信息泄露漏洞处理。

注:也可使用Windows自带的FIPS代替SSL加密,管理工具->本地安全策略->安全设置->本地策略->安全选项->找到“系统加密:将FIPS兼容算法用于加密、哈希和签名”选项->右键“属性”->在“本地安全设置”下,选择“已启用(E)”;

对于 Schannel 安全服务提供程序(SSP),此安全设置禁用较弱的安全套接字层(SSL)协议,并仅支持传输层安全性**(TLS**)协议作为客户端以及作为服务器(如果适用)。如果启用此设置,传输层安全性/安全套接字层(TLS/SSL)安全提供程序将仅使用 FIPS 140 批准的加密算法: 3DES(不安全) 和 AES 用于加密、RSA 或 ECC 公钥加密用于 TLS 密钥交换和身份验证,而安全哈希算法(SHA1、SHA256、SHA384 和 SHA512)仅用于满足 TLS 哈希要求。

对于加密文件系统服务(EFS),它支持三重数据加密标准(DES)和高级加密标准(AES)加密算法来加密 NTFS 文件系统支持的文件数据。默认情况下,EFS 在 Windows Server 2003 和 Windows Vista 系列中使用带 256 位密钥的高级加密标准(AES)算法而在 Windows XP 中使用 DESX 算法来加密文件数据。对于远程桌面服务,它仅支持使用三重 DES 加密算法来加密远程桌面服务网络通信。因此整体来说并不安全。

10、最小化启动尝试,msconfig打开系统配置,单击服务----勾选下面的“隐藏所有 Microsoft 服务”--------点击“全部禁用”。

11、如果怀疑服务器系统文件部分损坏,执行sfc /scannow检查文件系统,它会扫描所有受保护的系统文件,并用位于 %WinDir%\System32\dllcache 的压缩文件夹中的缓存副本替换损坏的文件。相关修复信息可在%WinDir%\Logs\CBS\CBS.log日志中看到;

Dism /Online /Cleanup-Image /CheckHealth

Dism /Online /Cleanup-Image /ScanHealth

Dism /Online /Cleanup-Image /RestoreHealth

sfc /scannow
findstr /c:"[SR]" %windir%\Logs\CBS\CBS.log >"%userprofile%\Desktop\sfcdetails.txt" 

筛选出系统文件检查器进程检查情况的信息。当你确定哪个系统文件已损坏且无法通过 Sfcdetails.txt 文件中的详细信息修复之后,查找损坏文件所在的位置,然后手动将损坏的文件替换为已知完好的文件副本。 从与你的计算机运行相同版本的 Windows 的另一台计算机获取系统文件的已知完好副本。

1、takeown /f Path_And_File_Name //获得损坏的系统文件的管理所有权。 Path_And_File_Name 占位符代表损坏文件的路径和文件名

2、 icacls Path_And_File_Name //授予管理员完全访问损坏的系统文件的权限

3、 copy E:\temp\完好副本 C:\windows\system32\损坏文件 //将损坏的系统文件替换为已知完好的文件副本

三、结论

综上,本次故障为SSL配置认证后,证书问题或客户端和服务端加密算法不一致所致,可借助IIS Crypto工具完成,如下所示:

脚本参考:

# Copyright 2016, Alexander Hass

# http://www.hass.de/content/setup-your-iis-ssl-perfect-forward-secrecy-and-tls-12

#

# Version 1.7

# - Windows Version compare failed. Get-CimInstance requires Windows 2012 or later.

# Version 1.6

# - OS version detection for cipher suites order.

# Version 1.5

# - Enabled ECDH and more secure hash functions and reorderd cipher list.

# - Added Client setting for all ciphers.

# Version 1.4

# - RC4 has been disabled.

# Version 1.3

# - MD5 has been disabled.

# Version 1.2

# - Re-factored code style and output

# Version 1.1

# - SSLv3 has been disabled. (Poodle attack protection)

Write-Host 'Configuring IIS with SSL/TLS Deployment Best Practices...'

Write-Host '--------------------------------------------------------------------------------'

# Disable Multi-Protocol Unified Hello

New-Item 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\Multi-Protocol Unified Hello\Server' -Force | Out-Null

New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\Multi-Protocol Unified Hello\Server' -name Enabled -value 0 -PropertyType 'DWord' -Force | Out-Null

New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\Multi-Protocol Unified Hello\Server' -name 'DisabledByDefault' -value 1 -PropertyType 'DWord' -Force | Out-Null

New-Item 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\Multi-Protocol Unified Hello\Client' -Force | Out-Null

New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\Multi-Protocol Unified Hello\Client' -name Enabled -value 0 -PropertyType 'DWord' -Force | Out-Null

New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\Multi-Protocol Unified Hello\Client' -name 'DisabledByDefault' -value 1 -PropertyType 

本文标签: 错误主机Windowsmstsc