Java JNDI/DNS远程拒绝服务漏洞
2008-04-10 03:02:55来源:互联网 阅读 ()
发布日期:2004-11-08
更新日期:2004-11-09
受影响系统:
Sun JRE 1.5.0描述:
Sun JRE 1.4.2
BUGTRAQ ID: 11619
CVE(CAN) ID: CVE-2004-1503
Java Runtime Environment(JRE)为JAVA应用程序提供可靠的运行环境。
Java在实现DNS解析时存在问题,远程攻击者可以利用这个漏洞使目标应用程序消耗大量资源造成拒绝服务。
Java使用'InitialDirContext'执行DNS查询,在com/sun/jndi/dns/DnsClient.java中,'xid'类型是'int',但是由'short'类型的'ident'初始化,因此如果'ident'到达32768时就会变负,而使的'xid'值为'-32768':
~ private short ident = 0; // used to set the msg ID field
[...]
int xid;
synchronized (identLock) {
xid = ident;
}
在类com/sun/jndi/dns/Header.java中,来自DNS服务器的应答函数中,转换时使用'int'类型代替了'short':
~ private static int getShort(byte[] msg, int pos) {
return (((msg[pos] & 0xFF) << 8) |
(msg[pos 1] & 0xFF));
~ }
结果导致'32768'不等于'-32768'而出现异常,因此如果攻击者执行多个DNS查询到达32768个请求时,可造成应用程序产生拒绝服务。
<*来源:Kurt Huwig (k.huwig@iku-ag.de)
链接:http://marc.theaimsgroup.com/?l=bugtraq&m=109994063331773&w=2
*>
建议:
临时解决方法:
如果您不能立刻安装补丁或者升级,NSFOCUS建议您采取以下措施以降低威胁:
* 重写应用程序在32768请求达到时使用新的InitialDirContext。
厂商补丁:
Sun
---
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:
http://sunsolve.sun.com/security
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash