使用EOL版Java的安全漏洞

时间:2011-08-30 19:01:14

标签: java security

在我们的内部Intranet Web服务器上使用以下版本的Java是否存在任何安全漏洞?

java version "1.4.2", gij (GNU libgcj) version 4.1.2 20080704 (Red Hat 4.1.2-51)
I think this version was decommissioned in 2008

我们的Web服务器非常过时,我一直在推动升级到现代Java Application Server和Java 1.6,但是IT和我上面的能力还没有看到需要。

然后我收到一封电子邮件,他们发现了一个安全漏洞(工作中的热门话题)与网络服务器

SunOne 6.1, SP9

并且它的补丁需要升级到更新版本的Java。几周之后,不再需要一封后续电子邮件说明SunOne补丁,因为它不适用于我们,因此他们将不再升级JRE。

嗯,SunOne的漏洞可能不适用于我们,但我必须指出Java 1.4.2的一些漏洞并利用我的新应用服务器!! :)

4 个答案:

答案 0 :(得分:2)

有两种方法可以说服Powers That Be升级服务器。

  1. 表明现有会导致经济损失。
  2. 显示您需要所请求应用程序的新功能。
  3. 坦率地说,如果您不直接对相关服务器的运行状况和维护负责,那么第一条路是艰难的。有些人可能会看到你的请求侵占他们领土的原因,并指出了坚决防御黑客的历史。当然,你可能在这方面提出索尼最近的问题......你自担风险。哎呀,我去过一年需要在一些IIS盒子上安装服务包的地方。我甚至在一个地方展示了门,我证明现有的路由器设置意味着我可以轻松获取每个人的电子邮件密码。

    从开发人员的角度来看,第二个更容易。你真正需要的最新JDK中有什么东西吗?例如,只有通过使用新功能才能满足应用要求?如果没有,那就算了吧。如果有,那么您的经理将为您提供新的服务器。

    以下是基于纯粹意见的建议。

    从道德编码员的角度来看,如果您有安全问题,请直接(而非电子邮件)与负责人联系,然后继续。进一步采取行动的唯一时机是,如果您认为安全问题可能导致健康,财务或其他关键PII数据丢失。此时,您可以向负责人和管理人员发送带有适当CC的电子邮件。但是,一旦完成就放手,因为它完全不在您的手中。这将满足任何警告要求,如果数据丢失,您可以确定相应的法律机构将调查该电子邮件路径。

    我之所以做出区分,是因为第一条路径允许负责人克服其他人指出他们没有做好自己的工作并决定如何继续。第二个问题对于在发生严重问题时保护自己很重要。

    请记住,常规IT有几个问题。首先,该版本的JDK目前​​正在运行。基于它的应用程序是功能性的。 IT(一般情况下)因为更新可用而被提升太多次以便进行升级。由于这个原因,他们可以对抗任何变化。变化和IT并不能很好地融合在一起,从更广泛的公司角度来看,这是一件好事。

    其次,IT负责安全。但是,他们有很多工具供他们使用。从防火墙到活动监控,再到事件日志传送等。在执行这样的更改之前,他们需要知道新版本的问题(它们始终存在),以及知道它们是否还没有解决您的问题引起了人们的注意。换句话说,他们可能已经在JDK中解决了这个问题。此外,他们可能已经知道新JDK中存在的问题,而且还无法将这些问题搞砸......

    这让我想到了最后一条建议。忽略JDK安全问题并专注于您的工作。如果你真的需要新版本,我相信你的经理可以做到实现它所需的一切。以这种方式提倡变革只是为了一个新版本本身就是一个非首发。


    好的,最后一件事:

    想象一下你的开发经理(我们称他为bob),IT经理和他们的老板一起参加运营会议。

    IT经理说,“由于安全问题,杰夫一直在追逐我们升级服务器x,y和z。我们查看了它们,但我们的防火墙涵盖了这些问题。顺便说一下,这些内存错误修复工作如何进行?我们想退役几箱。“

    鲍勃:“我们正努力工作。我会让杰夫知道。”

    他们的老板:(思考)'鲍勃似乎没有处理他的团队......他们并不专注于手头的任务,而是花费我们真正的美元。'

    现在,您正处于老板 expletive 列表中。小心,否则你会被烧伤。

答案 1 :(得分:1)

你应该升级。请参阅HTTP Sun Java Calendar Deserialization Priv Escalation,其中描述了多个缓冲区溢出和浮点解析影响更新版本的DoS问题。

与运行Java服务器的人有关的是

  
      
  1. JRE以不安全的方式创建临时文件。攻击者可以利用此问题编写任意JAR文件并在受影响的计算机上执行受限操作。该问题在Sun Alert ID 244986和CVE-2008-5360中进行了跟踪。

  2.   
  3. 当JRE处理GIF图像(CR 6766136)和处理字体(CR 6733336和6751322)时,会发生多个缓冲区溢出漏洞。问题源于AWT库中的堆溢出,并且可能允许攻击者执行任意代码。在通过“ConvolveOp”操作进行转换期间将自定义图像模型用于源“Raster”时会出现问题。 Sun Alert ID 244987,CVE-2008-5356,CVE-2008-5357,CVE-2008-5358和CVE-2008-5359中跟踪了这些问题。

  4.   
  5. 存在安全绕过的弱点,因为JRE的“Java Update”机制在安装之前无法检查数字签名。这可能允许攻击者通过执行DNS欺骗攻击在受影响的计算机上安装恶意文件。该问题在Sun Alert ID 244989和CVE-2008-5355中进行了跟踪。

  6.   
  7. JRE中的安全漏洞可能允许不受信任的applet或应用程序将特权提升为运行恶意应用程序的用户的特权。在反序列化'sun.util.calendar.ZoneInfo'日历对象时,问题出现了。攻击者可以通过反序列化日历来在特权上下文中反序列化ZoneInfo对象。该问题在Sun Alert ID 244991和CVE-2008-5353中进行跟踪。

  8.   
  9. JRE UTF-8(Unicode Transformation Format-8)解码器出现弱点,因为它接受的编码长度超过“最短”格式。攻击者可能利用此问题欺骗使用解码器的应用程序接受无效输入。该问题在Sun Alert ID 245246和CVE-2008-5351中进行跟踪。

  10.   
  11. 发生拒绝服务漏洞是因为JRE不正确地处理Java应用程序的远程客户端提供的某些RSA公钥。该问题在Sun Alert ID 246286和CVE-2008-5349中进行了跟踪。

  12.   
  13. 由于JRE通过Kerberos对用户进行身份验证的方式,因此会发生拒绝服务漏洞。攻击者可能会利用此漏洞来耗尽操作系统资源并拒绝为合法用户提供服务。该问题在Sun Alert ID 246346和CVE-2008-5348中进行了跟踪。

  14.   
  15. JRE中的JAX-WS和JAXB包中的多个安全漏洞可能允许不受信任的applet以提升的权限执行操作。 Sun Alert ID 246366和CVE-2008-5347中跟踪了这些问题。

  16.   
  17. 出现安全绕过漏洞,因为允许从本地文件系统加载的代码访问localhost。这可能用于违反同源政策的攻击。该问题在Sun Alert ID 246387和CVE-2008-5345中进行了跟踪。

  18.   

答案 2 :(得分:0)

答案 3 :(得分:0)

http://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=java

选择适用于您的特定环境的漏洞