我们已经使用会话缓存启用了 SSL 会话恢复。根据内部性能报告,建议使用会话票证启用会话恢复。
从中获得的性能提升是否值得额外的安全风险?(据我了解,只有客户端受到攻击才会出现问题。一个/多个客户端的攻击是否会导致所有加密流量受到攻击?)
如果不是所有客户都支持这一点,会不会出现故障/问题?(据我所知,客户端会宣传它支持会话票证,然后服务器会做出相应的反应,不支持的客户端不会受到影响)
我们已经使用会话缓存启用了 SSL 会话恢复。根据内部性能报告,建议使用会话票证启用会话恢复。
从中获得的性能提升是否值得额外的安全风险?(据我了解,只有客户端受到攻击才会出现问题。一个/多个客户端的攻击是否会导致所有加密流量受到攻击?)
如果不是所有客户都支持这一点,会不会出现故障/问题?(据我所知,客户端会宣传它支持会话票证,然后服务器会做出相应的反应,不支持的客户端不会受到影响)
如果客户端受到威胁,则该客户端受到威胁。会话票不会以一种或另一种方式改变......
会话票据是 TLS 扩展,服务器通过它将会话上下文推送到客户端。从客户端的角度来看,票据是不透明的。为了防止恶意客户端伪造或更改票证,服务器应该在构建票证时使用一些加密和完整性检查。如果服务器正常工作(例如按照RFC 中的建议),那么会话票证不会引入任何额外的弱点。受感染的/恶意的客户端不会学习任何允许它解密其他客户端的 TLS 会话或伪造票证的东西。
唯一不建议使用会话票证的情况是,服务器希望对每个客户端的会话的最大持续时间进行细粒度控制,独立于其他客户端(例如,如果您的网站会话管理依赖于 TLS 会话而不是某些 HTTP-级别 cookie 或类似的东西)。当会话上下文保存在服务器端时,服务器很容易忘记该上下文。使用会话票证,您无法在客户端强制遗忘。但我们在这里不是在谈论弱点,而是在谈论功能。
由于 TLS 会话票证是TLS 扩展,因此它们不会影响不了解它们的客户端。仅当客户端在消息中明确宣布支持扩展时,给定的 TLS 连接才会使用票证ClientHello。如果客户端不支持 TLS 会话票证(例如,Windows 7 上的 IE),那么它不会在其ClientHello.
但是,结果是即使您激活会话票证,这也是一种机会主义优化。服务器必须仍然能够为不支持会话票证的客户端处理“正常”会话。在所有客户实施新支持之前,您不得禁用非票证会话。由于 Windows 7 中的 TLS 实现不知道会话票证,因此您可能还需要继续支持非票证会话数年。