Zend曝任意文件读取漏洞 威胁网站源代码

时间:2012-07-23 15:33

近日,乌云平台曝Zend Framework(ZF)框架中的XMLRPC模块存在xxe(XML external entity)注入漏洞(http://www.wooyun.org/bugs/wooyun-2010-09336),攻击者可借此读取服务器上的任意文件,包括密码文件及PHP源代码。360网站检测平台扫描发现,200余家网站存在这一漏洞,知名开源建站平台Magento等使用ZF框架的建站系统也受该漏洞影响,波及更多网站。

360网站安全检测平台服务网址:http://webscan.360.cn

据了解,ZF框架与PHP一脉相承,应用遍及金融、航空、电商、媒体等多个领域。其中XMLRPC是提供RPC(远程过程调用)和服务的一个模块,采用XML语言在服务端跟客户端之间进行数据交互。在XMLPRC功能开启的情况下,管理者可以读取服务器上的任意文件。但由于xxe(XML external entity)注入漏洞,黑客同样读取服务器上的任意文件。

360网站安全检测平台认为,上述漏洞原因在于Zend框架的loadXml函数(Zend XMLRPC Request.php和Response.php)在解析XML数据的时候未禁用加载外部entities。在初始化SimpleXMLElement类之前未调用libxml_disable_entity_loader函数(如图)。


图:未调用libxml_disable_entity_loader函数成漏洞关键

这一情况导致当WEB应用程序使用Zend_XmlRpc_Server类(ZendXmlRpcServer.php)处理XMLRPC请求时,可能泄露远程服务器的任意文件。黑客利用该漏洞,可以读取使用Zend框架系统的任意文件,包括数据库账号密码,进而对整个网站内容进行修改,甚至直接盗取PHP源代码。

鉴于该漏洞影响广泛,且有可能造成网站源代码泄露等致命危害,360网站安全检测平台在第一时间向旗下用户发送了告警邮件,强烈建议升级Zend框架至最新版本(如Magento系统),并定期使用360安全检测服务随时监控网站安全状态。

Zend框架最新版本升级地址:http://framework.zend.com/download/latest
Magento官方升级包补丁下载地址:http://www.magentocommerce.com/blog/comments/important-security-update-zend-platform-vulnerability

关于360网站安全检测平台

360网站安全检测平台是国内首个集网站漏洞检测、网站挂马监控、网站篡改监控于一体的免费检测平台,拥有全面的网站漏洞库及蜜罐集群检测系统,能够第一时间协助网站检测修复漏洞。2011年,360网站安全检测平台曾协同360团购导航,为国内数百家主流团购网站提供了免费网站漏洞检测服务并提供修复建议,提高了团购网站整体安全水平。