web-dev-qa-db-ja.com

MySQLでLogjamの脆弱性を修正する方法

Debianサーバーでの最新のopensslアップグレード以降、mysqlクライアントが接続できず、次のメッセージが表示されます

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

これは Logjam 攻撃を防ぐためだと思います。

おかげで https://weakdh.org/sysadmin.html より強力なDiffie-Hellmanパラメーターを生成する方法を知っています。ただし、実際にそれらを使用するためのMySQL構成オプションは見つかりません。

誰か知っていますか?

5
Tonin

MySQL 5.7.6リリースノートには、次のものが含まれています。

セキュリティ修正:LogJamの問題( https://weakdh.org/ )により、OpenSSLはDiffie-を変更しましたopenssl-1.0.1n以降のヘルマンキーの長さパラメーター。 OpenSSLは、 http://openssl.org/news/secadv_20150611.txt で詳細な説明を提供しています。 MySQLでこの変更を採用するために、vio /viosslfactories.cでDiffie-Hellmanキーを作成するために使用されるキーの長さが512ビットから2,048ビットに増加しました。 (バグ#77275、バグ#21221862、バグ#18367167、バグ#21307471)

このことから、DHサイズは5.7.6より前のMySQLでは512ビットにハードコードされていたようです(永続的なlogjam?)。 OpenSSLの新しいバージョンはこれらの弱いキーを拒否するため、MySQLをアップグレードせずにOpenSSLをアップグレードすると問題が発生するようです。

3
Robert Kerr

非Diffie-HellmanSSL暗号の使用を強制することにより、接続の問題を修正することができました。

  • Mysql 5.5.42 Linuxクライアントでは、 this バグレポートで指定されているように、--ssl-cipher=AES256-SHAコマンドラインオプションを指定することに成功しました。

  • ただし、(Java7)MySQL 5.1.35 jdbcクライアントはその暗号を好みませんでしたが、推奨されるように、接続文字列にenabledSSLCipherSuites=TLS_RSA_WITH_AES_128_CBC_SHAを指定すると機能しました ここ

YMMV

2
billwanjohi