【问题标题】:Impact/Risk on enable -DuseSunHttpHandler on Weblogic10.3.0在 Weblogic10.3.0 上启用 -DuseSunHttpHandler 的影响/风险
【发布时间】:2015-06-12 04:38:53
【问题描述】:

我正在开发一个通过代理向第三方服务发出请求的应用程序。

我的应用程序在 Weblogic10.3.0 上运行,我遇到了 BAD_CERTIFICATE 异常的问题,如下所示。

 javax.net.ssl.SSLKeyException: FATAL Alert:BAD_CERTIFICATE - A corrupt or unuseable certificate was received.
    at com.certicom.tls.interfaceimpl.TLSConnectionImpl.fireException(Unknown Source)
    at com.certicom.tls.interfaceimpl.TLSConnectionImpl.fireAlertSent(Unknown Source)
    at com.certicom.tls.record.handshake.HandshakeHandler.fireAlert(Unknown Source)
    at com.certicom.tls.record.handshake.HandshakeHandler.handleHandshakeMessages(Unknown Source)
    at com.certicom.tls.record.MessageInterpreter.interpretContent(Unknown Source)
    at com.certicom.tls.record.MessageInterpreter.decryptMessage(Unknown Source)
    at com.certicom.tls.record.ReadHandler.processRecord(Unknown Source)
    at com.certicom.tls.record.ReadHandler.readRecord(Unknown Source)
    at com.certicom.tls.record.ReadHandler.readUntilHandshakeComplete(Unknown Source)
    at com.certicom.tls.interfaceimpl.TLSConnectionImpl.completeHandshake(Unknown Source)
    at com.certicom.tls.record.WriteHandler.write(Unknown Source)
    at com.certicom.io.OutputSSLIOStreamWrapper.write(Unknown Source)

网上有很多建议说,加上-DuseSunHttpHandler=true有助于解决问题,因为第三方已经升级了他们的证书(128位到256位)。解决方案工作正常,但是,现在手头的问题是我找不到官方文章明确说 Certicom 仅支持最高 128 位,为了解决它,我们需要启用 JSSE,据我所知,它是由 SunHttpHandler 使用。

这里的另一个问题是,“使用 SunHttpHandler 会产生已知的影响吗?” 我知道从 10.3.3 或 10.3.5 开始,Certicom 将被弃用并默认使用 JSSE,但目前无法升级 weblogic。

【问题讨论】:

  • 我需要一个官方信息来进行影响分析和参考,这样这个东西才能上线。谢谢。
  • 我们在 weblogic 10.3.6 上。我得到了和上面一样的错误。我得到了使用 -DuseSunHttpHandler=true 的建议,但我检查了这里讨论的两个应用程序都有 256 位证书。只是想知道这是否是使用 SunHTTPHandler 的正确位置

标签: java weblogic-10.x


【解决方案1】:

Microsoft 和 Google 宣布了 SHA-1 弃用计划,该计划可能会影响 SHA-1 证书最早在 2015 年 12 月 31 日之后到期的网站。

可以使用不同的“哈希算法”创建证书,包括

1) SHA1:160 位散列

2) SHA2:两个相似的散列函数家族,具有不同的块大小,称为 SHA-256 和 SHA-512(这是一种较新的算法)

直到最近,WebLogic 仅支持 SHA1 算法。但从 WebLogic 10.3.3 开始,也支持 SHA2 算法。

如果您希望使用带有 SHA2 哈希算法的证书,则需要启用 JSSE SSL(它信任更强的证书,例如 SHA2)

Oracle 强烈建议您升级到最新的 WebLogic 维护包和最新的 JDK 补丁,因为 JSSE SSL 和较低的 WebLogic 维护包和 Java 补丁存在一些已知问题。 您应该至少使用 WebLogic 10.3.6

从 weblogic 11g(10.3.6) 起支持 SHA2(SHA256 等),但证书仅适用于 JSSE 实现 (-Dweblogic.security.SSL.enableJSSE=true)。

您可以在 Oracle Metalink(support.oracle.com) 上的上述官方文档中查看有关 WebLogic 上 SSL 证书的常见问题

【讨论】:

    猜你喜欢
    • 2013-08-29
    • 2013-06-24
    • 2010-11-24
    • 1970-01-01
    • 2016-06-09
    • 1970-01-01
    • 1970-01-01
    • 2011-01-16
    • 1970-01-01
    相关资源
    最近更新 更多