如何禁用 CBC 模式密码

信息安全 openssl 密码选择
2021-09-06 06:37:22

在使用 openssl 密码套件列表的应用程序中,是否有一种简单的白名单式方法来禁用 CBC 模式密码套件?!RC4但是,我希望 . 风格的东西!CBC没有效果,并且仍然允许TLS_DHE_RSA_WITH_AES_128_CBC_SHA256.

到目前为止,我发现的唯一解决方案是使用更详细的允许列表,其中仅包含非 CBC 密码。有没有更简单的选择?

4个回答

您可以使用!SHA1:!SHA256:!SHA384禁用所有 CBC 模式密码。有一些非 CBC 误报也将被禁用 ( RC4, NULL),但您可能还想禁用它们。

请注意,虽然GCMCHACHA20密码SHA*在他们的名字中有,但它们并没有被禁用,因为它们使用自己的 MAC 算法。他们的SHA*名字是针对PRF,而不是 MAC

在过去的几天里,我花了相当多的时间试图获得一个完美的 ssllabs 列表。部分归功于这一点,这是有效的:

SSLCipherSuite ALL:!RSA:!CAMELLIA:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!SRP:!DSS:!RC4:!SHA1:!SHA256:!SHA384

根据文档(man ciphers)中给出的密码字符串列表,没有描述所有 CBC 密码的字符串。这意味着没有简单的方法可以通过简单的!CBC或类似的方法来禁用所有这些(并且只有这些)。

我在https://cipherli.st/找到的最佳 SSL 密码和协议设置

有了这个,您将获得 Qualys A+ 评级:

SSLCipherSuite EECDH+AESGCM:EDH+AESGCM
# Requires Apache 2.4.36 & OpenSSL 1.1.1
SSLProtocol -all +TLSv1.3 +TLSv1.2