【问题标题】:Disable insecure renegotiation in SslStream在 SslStream 中禁用不安全的重新协商
【发布时间】:2013-08-29 11:38:00
【问题描述】:

我使用SslStream 在.NET 中编写了一个支持HTTPS 的网络服务器。

不幸的是,ssllabs.com 输出以下有关我的实施的消息:

此服务器容易受到 MITM 攻击,因为它支持不安全的重新协商。

这链接到关于漏洞的interesting blog entry

如何在 .NET 的 SslStream 中禁用重新协商?

【问题讨论】:

    标签: c# .net ssl


    【解决方案1】:

    SslStream 在后台使用 SChannel.dll。您可以通过修改注册表来配置可用的算法:

    http://support.microsoft.com/kb/245030

    特别是,以下屏幕截图中突出显示的两个条目将禁止 TLS 重新协商:

    它们被称为AllowInsecureRenegoClientsAllowInsecureRenegoServers,都是DWORD值,都设置为0,并且位于HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL

    显然,您可以安装一个修补程序,也可以禁用不安全的 TLS/SSL 重新协商(仅适用于 Windows XP/Windows2003 服务器):

    http://support.microsoft.com/kb/980436/en-us

    【讨论】:

    • 该修补程序仅适用于 Windows XP 和 Windows Server 2003。我的解决方案是修改注册表。谢谢!
    【解决方案2】:

    对于 window2012,它不适用于“AllowInsecureRenegoClients”,并且“AllowInsecureRenegoServers”设置为 0。

    我已将 AllowInsecureRenegoClients" 更改为 0,将 "DisableRenegoOnServer" 更改为 1,并且正在为我工​​作。

    【讨论】:

      猜你喜欢
      • 2020-12-01
      • 1970-01-01
      • 2022-11-09
      • 2021-05-03
      • 1970-01-01
      • 1970-01-01
      • 2014-07-30
      • 2018-07-25
      • 1970-01-01
      相关资源
      最近更新 更多