我如何知道可以禁用哪些密码套件?

信息安全 tls 密码选择 密码
2021-08-18 18:56:18

我刚刚通过 SSLlabs.com 在我的个人网站上进行了测试,显然我支持一些较弱的密码。我设法改进了几个设置(如 CAA),但我被困在密码上。
我一直在环顾四周,但真的找不到一种方法来确定哪些可以禁用,哪些应该保持允许。

有没有我可以应用的方法,或者一些检查,或者当前智能配置的列表?如果我至少想要市长支持,我假设我不能只关闭所有标记为“弱”的密码(它是一些小型项目的私人服务器,您可能会假设现代硬件/软件可以访问它)。


如果有帮助,这是列表:

TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 (0xcca8)    ECDH x25519 (eq. 3072 bits RSA)   FS            256
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (0xc02f)          ECDH x25519 (eq. 3072 bits RSA)   FS            128
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (0xc030)          ECDH x25519 (eq. 3072 bits RSA)   FS            256
TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 (0x9e)              DH 2048 bits   FS                               128
TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 (0x9f)              DH 2048 bits   FS                               256

// All below are weak
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 (0xc027)          ECDH x25519 (eq. 3072 bits RSA)   FS   WEAK     128
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 (0xc028)          ECDH x25519 (eq. 3072 bits RSA)   FS   WEAK     256
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA (0xc013)             ECDH x25519 (eq. 3072 bits RSA)   FS   WEAK     128
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA (0xc014)             ECDH x25519 (eq. 3072 bits RSA)   FS   WEAK     256
TLS_DHE_RSA_WITH_AES_128_CBC_SHA256 (0x67)              DH 2048 bits   FS   WEAK                        128
TLS_DHE_RSA_WITH_AES_128_CBC_SHA (0x33)                 DH 2048 bits   FS   WEAK                        128
TLS_DHE_RSA_WITH_AES_256_CBC_SHA256 (0x6b)              DH 2048 bits   FS   WEAK                        256
TLS_DHE_RSA_WITH_AES_256_CBC_SHA (0x39)                 DH 2048 bits   FS   WEAK                        256
TLS_RSA_WITH_AES_128_GCM_SHA256 (0x9c)   WEAK                                                           128
TLS_RSA_WITH_AES_256_GCM_SHA384 (0x9d)   WEAK                                                           256
TLS_RSA_WITH_AES_128_CBC_SHA256 (0x3c)   WEAK                                                           128
TLS_RSA_WITH_AES_256_CBC_SHA256 (0x3d)   WEAK                                                           256
TLS_RSA_WITH_AES_128_CBC_SHA (0x2f)   WEAK                                                              128
TLS_RSA_WITH_AES_256_CBC_SHA (0x35)   WEAK                                                              256
1个回答

所需的密码套件完全取决于预期使用该服务的客户端。由于Qualys SSL Labs 的SSL 服务器测试旨在测试可公开访问的 Web 服务器,我们可以假设这是一个 Web 应用程序。所有当前版本的主要浏览器都能够使用RFC 7525, 4.2中推荐的密码套件处理 TLS 1.2+ ,使其成为高度安全配置的良好起点:

TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (0xc02f)
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (0xc030)
TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 (0x9e) 
TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 (0x9f)

然后,根据 SSL Labs 报告,握手模拟部分是检测无法单独使用这些密码套件服务的常见客户端的便捷工具:

握手模拟

例如,如果您希望使用 Safari 为较旧的 Apple 设备提供服务,那么可供它们使用的最佳密码套件是:

TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 (0xc028)  ECDH secp256r1 (eq. 3072 bits RSA)   FS  WEAK

添加了 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384

从剩下的列表中……无论如何,谁在使用 Windows 8.1 Phone。;)

同样,如果您需要支持其他浏览器或设备,您可以使用浏览器测试来找出合适的密码套件。另请注意,使用(密码块链接)CBC 模式的变体本身并不弱,但 SSL Labs 认为它​​们很弱,因为存在许多易受攻击的实现