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

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

缺陷编号:wooyun-2015-0105290

漏洞标题:泛微e-office无需登录注入一枚

相关厂商:泛微E-Office

漏洞作者: phith0n

提交时间:2015-04-01 23:24

修复时间:2015-07-04 19:56

公开时间:2015-07-04 19:56

漏洞类型:SQL注射漏洞

危害等级:高

自评Rank:15

漏洞状态:已交由第三方合作机构(cncert国家互联网应急中心)处理

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2015-04-01: 细节已通知厂商并且等待厂商处理中
2015-04-05: 厂商已经确认,细节仅向厂商公开
2015-04-08: 细节向第三方安全合作伙伴开放
2015-05-30: 细节向核心白帽子及相关领域专家公开
2015-06-09: 细节向普通白帽子公开
2015-06-19: 细节向实习白帽子公开
2015-07-04: 细节向公众公开

简要描述:

无需登录注入。

详细说明:

紧跟pandas哥哥的步伐,来日泛微eoffice了。
先对系统进行解密。
/inc/priv_user_list/priv_xml.php 大概18行开始

$pararr = explodestpar( $_REQUEST['par'] );
$userpriv = $pararr['userpriv'];
...
if ( $pararr['view_type'] == 0 )
{
unset( $deptnameutf8 );
unset( $action );
unset( $src );
unset( $target );
unset( $icon );
$usql = "\r\n\t\t\tSELECT * FROM USER,USER_PRIV \r\n\t\t\t\tWHERE USER.USER_PRIV=".$userpriv." \r\n\t\t\t\tAND USER.USER_PRIV=USER_PRIV.USER_PRIV \r\n\t\t\t\tORDER BY PRIV_NO,USER_NAME\r\n\t\t\t";
$urs = exequery( $connection, $usql );


$pararr = explodestpar( $_REQUEST['par'] );获取到request后,调用explodestpar处理,将$pararr['userpriv']传入SQL语句。
看看explodestpar函数:

function explodeStPar( $enpar )
{
$depar = base64_decode( $enpar );
$arrpar = explode( "|", $depar );
if ( !is_array( $arrpar ) )
{
return false;
}
$i = 0;
for ( ; $i < sizeof( $arrpar ); ++$i )
{
$strpar = $arrpar[$i];
$tmparr = explode( ":", $strpar );
$j = 0;
for ( ; $j < sizeof( $tmparr ); ++$j )
{
if ( $j == 0 )
{
preg_match( "/\\[([a-z0-9-_].+)\\]/i", $tmparr[$j], $exp );
$par = $exp[1];
}
else
{
preg_match( "/\\[(.*)\\]/i", $tmparr[$j], $exp );
$val = $exp[1];
}
}
if ( trim( $par ) != "" )
{
$rearr[$par] = $val;
}
}
return $rearr;
}


大概是base64解码后7788处理一堆,出来一个数组。
既然是base64解码后的,所以可以有任何字符。不过本来这个注入点也没有单引号限制,所以也是直接注入的。
不过这程序不开源,蛮多东西不知道,就不构造EXP了,直接丢个盲注脚本出来,在测试脚本中。

漏洞证明:

用之前前辈丢出来的几个测试站测试吧:
http://61.163.107.26:8082/wav/1.php
http://219.232.254.131:8082/wav/1.php
http://122.224.149.30:8082/wav/1.php
加单引号1',报错:

QQ20150401-2@2x.png


QQ20150401-3@2x.png


爆出绝对路径。不过这SQL语句不好写shell,因为后面换行了,注释不掉。
说明这漏洞是存在的,写了个小脚本验证:

QQ20150401-1@2x.png


修改脚本中url即可修改目标。经测试上面三个站都可以注入,而且mysql user()都是root@localhost。

修复方案:

过滤。

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


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:11

确认时间:2015-04-05 19:55

厂商回复:

CNVD确认并复现所述情况,已经由CNVD通过以往建立的处置渠道向软件生产厂商通报。

最新状态:

暂无