受影响系统:
Xoops Xoops <=
不受影响系统:
Xoops Xoops
描述:
XOOPS是非常流行的动态Web内容管理系统,用面向对象的PHP编写。
XOOPS中存在多个SQL注入漏洞,起因是对xoops的XMLRPC缺少检查。以下bloggerapi.php文件中的代码用于处理所有入站的XMLRPC请求: 警 告 --------------- 厂商补丁:
function getUserInfo()
{
if (!$this->_checkUser($this->params[1], $this->params[2])) {
$this->response->add(new XoopsXmlRpcFault(104));
} else {
$struct = new XoopsXmlRpcStruct();
$struct->add('nickname', new
XoopsXmlRpcString($this->user->getVar('uname')));
$struct->add('userid', new
XoopsXmlRpcString($this->user->getVar('uid')));
$struct->add('url', new
XoopsXmlRpcString($this->user->getVar('url')));
$struct->add('email', new
XoopsXmlRpcString($this->user->getVar('email')));
$struct->add('lastname', new XoopsXmlRpcString(''));
$struct->add('firstname', new
XoopsXmlRpcString($this->user->getVar('name')));
$this->response->add($struct);
}
}
_checkUser函数实际上只是XMLRPC server的封装,因为参数最终传递给了XOOPS核心函数loginUser(),导致SQL注入攻击。
成功利用这个漏洞的攻击者可能获得管理权限访问。
<*来源:James Bercegay (security@gulftech.org)
Jan Pederson
链接:http://marc.theaimsgroup.com/?l=bugtraq&m=112006318512991&w=2
*>
测试方法:
以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!
---------------
建议:
Xoops
-----
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载
http://prdownloads.sourceforge.net/xoops/Xoops-2.0.12.zip?download