甲骨文公司在2013年为某个JAVA关键漏洞发布了补丁,而安全研究人员最近发现这个补丁是无效的,可以很容易的被绕过。这使得漏洞可以被再次利用,运行最新版本JAVA的个人电脑和服务器可能因为这个无效的补丁而遭受到攻击。
之前这个漏洞编号为CVE-2013-5838,被甲骨文公司评分为9.3分(满分10分)。它可以被远程利用,不需要身份验证,完全无视系统的机密性、完整性和可用性。
根据波兰安全公司Security Explorations的研究人员的报告,他最初向甲骨文公司报告了这个漏洞,攻击者可以利用这个漏洞来逃逸JAVA安全沙箱。在正常情况下,JAVA运行时环境(JRE)执行JAVA代码是在一个有安全限制的虚拟机中。
在上周四,Security Explorations报告了关于这个漏洞的补丁是无效的。只需要在2013年证明该漏洞的验证代码中改变4个字符就可以轻易绕过这个补丁,Security Explorations的首席执行官Adam Gowdiak将这一消息发送到了Full Disclosure的安全邮件列表中。
Gowdia的公司也发布了一份新的报告,详细的解释了这次的绕过原理。
该公司的研究人员声称,他们的漏洞利用代码在最新版本的JAVA上成功进行了测试,包括Java SE 7 Update 97, Java SE 8 Update 74 和Java SE 9 Early Access Build 108这些版本.
在2013年10月,甲骨文公司表示 CVE-2013-5838只会影响由JAVA部署的客户端,并且可以通过“沙箱中的JAVA Web Start应用程序和JAVA applet程序 ”被利用。而根据Security Explorations的研究报告,这是不正确的。
“我们证实,它可以在服务器环境中成功利用,我们在Google App Engine的JAVA环境中进行了测试。”,Gowdiak在Full Disclosure的邮件列表中这样说道。
在客户端,JAVA的默认安全级别只允许签名的java applet运行,并且还需要用户进行点击才能运行。这些安全限制可以防止自动静默攻击行为的发生。
为了利用最新的JAVA安全漏洞,攻击者需要找到一个单独的安全缺陷,从而让它们可以绕过安全提示或者诱使用户点击运行他们的恶意applet。后者更容易做到。
Security Explorations在披露绕过CVE-2013-5838补丁之前并没有通知甲骨文公司。根据Gowdiak公司的新政策,当发现不恰当的补丁时,他们会首先将这些告知公众,目前,该公司已经将这些告知给了供应商。
“我们不能容忍错误的补丁”,Gowdiak这样说道。
目前尚不清楚甲骨文公司会不会推出一项紧急JAVA更新来修复这个漏洞,或者它会等到下个季度的关键补丁更新日(4月19号)才会发布相应补丁。