在SslStream中禁用不安全的重新协商

4
我在.NET中编写了一个支持HTTPS的Web服务器,使用了SslStream。不幸的是,ssllabs.com对我的实现输出以下消息:
该服务器容易受到MITM攻击,因为它支持不安全的重新协商。
这链接到一个有关漏洞的有趣博客文章
如何在.NET的SslStream中禁用重新协商?
2个回答

4

SslStream使用SChannel.dll作为底层实现。您可以通过修改注册表来配置可用的算法:

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

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

regedit

他们被称为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。对我来说,解决方案是修改注册表。谢谢! - Timwi

1

对于window2012,当"AllowInsecureRenegoClients"和"AllowInsecureRenegoServers"都设置为0时,它无法正常工作。

我将"AllowInsecureRenegoClients"更改为0,"DisableRenegoOnServer"更改为1,现在可以正常工作。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接