我注意到许多指南都说您应该在 Web 服务器上设置 SSL 时禁用 SSL v2 支持。
我不明白其中的原因。有人能告诉我为什么吗?
答案1
维基百科:
SSL 2.0 存在多种缺陷:1
- 相同的加密密钥用于消息认证和加密。
- SSL 2.0 具有较弱的 MAC 构造,它使用带有秘密前缀的 MD5 哈希函数,因此容易受到长度扩展攻击。
- SSL 2.0 对握手没有任何保护,这意味着中间人降级攻击无法被发现。
- SSL 2.0 使用 TCP 连接关闭来指示数据结束。这意味着截断攻击是可能的:攻击者只需伪造 TCP FIN,让接收者不知道数据消息的非法结束(SSL 3.0 通过显式关闭警报解决了此问题)。
- SSL 2.0 假设单一服务和固定域证书,这与 Web 服务器中的虚拟托管标准功能相冲突。这意味着大多数网站实际上因使用 SSL 而受到影响。TLS/SNI 解决了这个问题,但尚未在 Web 服务器中部署。
1:http://en.wikipedia.org/wiki/Transport_Layer_Security#SSL_1.0.2C_2.0_and_3.0