如何修复 MySQL 的 Logjam 漏洞

如何修复 MySQL 的 Logjam 漏洞

自从我的 Debian 服务器上最新的 openssl 升级以来,我的 mysql 客户端无法连接并显示以下消息

SSL connection error: error:14082174:SSL routines:SSL3_CHECK_CERT_AND_ALGORITHM:dh key too small

我猜这是为了防止僵局攻擊。

谢谢https://weakdh.org/sysadmin.html我知道如何生成更强大的 Diffie-Hellman 参数。但是,我没有找到任何可以实际使用这些参数的 MySQL 配置选项。

有人知道吗?

答案1

MySQL 5.7.6 发行说明包含以下内容:

安全修复:由于 LogJam 问题(https://weakdh.org/), OpenSSL 已更改 openssl-1.0.1n 及更高版本的 Diffie-Hellman 密钥长度参数。OpenSSL 已在以下网址提供详细说明:http://openssl.org/news/secadv_20150611.txt。为了在 MySQL 中采用此更改,vio/viosslfactories.c 中用于创建 Diffie-Hellman 密钥的密钥长度已从 512 位增加到 2,048 位。(Bug #77275、Bug #21221862、Bug #18367167、Bug #21307471)

由此看来,在 MySQL 5.7.6 之前,DH 大小被硬编码为 512 位(永久僵局?)。由于 OpenSSL 的更高版本拒绝这些弱密钥,因此升级 OpenSSL 而不升​​级 MySQL 似乎会破坏一切。

答案2

我们可以通过强制使用非 Diffie-Hellman SSL 密码来解决连接问题。

  • 使用我们的 mysql 5.5.42 Linux 客户端,我们成功指定了--ssl-cipher=AES256-SHA命令行选项,如下所示错误报告。

  • 然而,我们的(Java7)MySQL 5.1.35 jdbc 客户端不喜欢该密码,但当我们enabledSSLCipherSuites=TLS_RSA_WITH_AES_128_CBC_SHA按照建议在连接字符串中指定时,它可以工作这里

年龄变化率

相关内容