Firefox 39 - 安全连接失败 - 服务器密钥交换握手消息中的 Diffie-Hellman 密钥很弱

Firefox 39 - 安全连接失败 - 服务器密钥交换握手消息中的 Diffie-Hellman 密钥很弱

从 Firefox 39 开始,连接到某些第三方软件的旧管理界面会出现以下消息:

安全连接失败

连接到 backup.trinetsolutions.com 时发生错误。SSL 在服务器密钥交换握手消息中收到一个弱的临时 Diffie-Hellman 密钥。(错误代码:ssl_error_weak_server_ephemeral_dh_key)

  • 无法显示您尝试查看的页面,因为无法验证所接收数据的真实性。
  • 请联系网站所有者并告知他们此问题。

答案1

根据软件的不同,可能不需要升级。

我也遇到过这个问题。在我的例子中,应用程序使用的是 Tomcat,我能够更改文件中的配置设置server.xml。我找到了解决方案这里

引用相关部分:

Tomcat 默认启用了几种弱密码。SSL 在服务器密钥交换握手消息中收到一个弱的临时 Diffie-Hellman 密钥。如果您有 Tomcat 服务器(版本 4.1.32 或更高版本),您可以按照以下说明禁用 SSL 2.0 并禁用弱密码。打开您的server.xml 文件,将以下内容添加到您的 SSL 连接器

<connector port="443" maxhttpheadersize="8192" address="127.0.0.1" 
           enablelookups="false" disableuploadtimeout="true" acceptCount="100" 
           scheme="https" secure="true" clientAuth="false" SSLEnabled="true" 
           sslEnabledProtocols="TLSv1,TLSv1.1,TLSv1.2" 
           ciphers="TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, 
           TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384, 
           TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_RC4_128_SHA, 
           TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA256,
           TLS_RSA_WITH_AES_256_CBC_SHA,SSL_RSA_WITH_RC4_128_SHA" 
           keystoreFile="mydomain.key" keystorePass="changeit" 
           truststoreFile="mytruststore.truststore" truststorePass="changeit" />

就我的情况而言,我唯一需要修改的server.xml是文件中的ciphers="..."部分。

完成此操作后,重新启动您的应用程序。

答案2

我想让人们知道解决这个问题的办法,因为升级旧软件并不总是可行的。您可以安装 Fiddler,并在选项中启用解密 HTTPS 流量。然后在运行 Fiddler 的情况下访问网站。Fiddler 将为您代理流量,Firefox 会认为一切都很好(除了警告 Fiddler 为执行中间人 SSL 代理而创建的 SSL 证书,但它可以让您绕过该警告)。

缺点是 Firefox 发出此警告是有原因的,因此仅当安全风险大于好处时才使用此功能。您也可以使用其他浏览器(虽然在我的情况下,该网站在 Firefox 中运行效果最好),或者您可以安装旧版本的便携式/独立版 Firefox,并仅将其用于访问该网站(即不要访问其他网站,因为它缺少最新版本的 Firefox 中的安全更新)。

相关内容