【问题标题】:cipher suites spring high encryption (aes+camellia no aead)cipher suites spring 高加密(aes+camellia no aead)
【发布时间】:2020-09-14 19:03:37
【问题描述】:

我有一个包含两个漏洞的安全测试(aes+camellia no aead -> 不提供,logjam -> VULNERABLE)

安全测试是在一个 Spring Boot 应用程序上进行的,我的配置文件中有以下配置:

server:
  ssl:
    ciphers: EECDH+CHACHA20,EECDH+AESGCM,EECDH+AES+SHA384,EECDH+AES+SHA256,EECDH+AES,EDH+AES256,!EDH+AESGCM,!EDH+SHA256,HIGH,!aNULL,!eNULL,!EXPORT,!DES,!MD5,!PSK,!RC4,!ECDHE-RSA-AES256-GCM-SHA384,!SHA1,!SHA256,!SHA384

我删除了 CBC 算法,因为 CBC 算法像漏洞一样被报告给我。

在测试中也显示了logjam漏洞,但我遵循教程:

https://geekflare.com/test-logjam-attack-cve-2015-4000-and-fix/

我将 !EXPORT 包含在我的密码套件中

我不知道解决 logjam 需要什么(因为在所有页面中我发现相同的响应和 AES Camelia,因为我删除了 CBC 算法,因为其他漏洞)。

【问题讨论】:

    标签: spring-boot security cryptography


    【解决方案1】:

    EDH+AES256 可能负责检测logjam,这意味着您的JRE 正在使用1024 位或更少的DH 素数。删除该密码套件或更改素数。

    如果您使用的是 Oracle,以下可能有效 (reference):

    将 AlgorithmParameterGenerator 和 KeyPairGenerator 实现的默认密钥大小从 1024 位更改为 2048 位

    此更改将更新 JDK 提供程序,以在应用程序未使用密钥大小显式初始化 java.security.KeyPairGeneratorjava.security.AlgorithmParameterGenerator 对象时使用 2048 位作为 DSA、RSA 和 DiffieHellman 的默认密钥大小,而不是 1024 位。
    要测试此更改,请下载 JDK 9.0.1、8u151、7u161、6u171 或更高版本,并使用算法及其所需的默认密钥大小设置系统属性 jdk.security.defaultKeySize。例如,要测试 2048 的 DSA 默认密钥大小,请在 java 命令行中指定 "‑Djdk.security.defaultKeySize=DSA:2048"

    在您的情况下,添加 "‑Djdk.security.defaultKeySize=DiffieHellman:2048" 作为命令行标志应该可以工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-07-27
      • 1970-01-01
      • 2021-04-12
      • 1970-01-01
      • 2019-01-02
      • 2021-05-12
      • 1970-01-01
      相关资源
      最近更新 更多