C4r1st 发表于 2014-12-24 15:06:58

齐博CMS 二次注入

/news/js.php中
if($type=='hot'||$type=='com'||$type=='new'||$type=='lastview'||$type=='like')
{
        if($f_id)
        {
                if(is_numeric($f_id)){
                        $SQL=" fid=$f_id ";
                }else{
                        $detail=explode(",",$f_id);
                        $SQL=" fid IN ( ".implode(",",$detail)." ) ";
                }
        }
        else
        {
                $SQL=" 1 ";
        }

        if($type=='com')
        {
                $SQL.=" AND levels=1 ";
                $ORDER=' list ';
                $_INDEX=" USE INDEX ( list ) ";
        }
        elseif($type=='hot')
        {
                $ORDER=' hits ';
                $_INDEX=" USE INDEX ( hits ) ";
        }
        elseif($type=='new')
        {
                $ORDER=' list ';
                $_INDEX=" USE INDEX ( list ) ";
        }
        elseif($type=='lastview')
        {
                $ORDER=' lastview ';
                $_INDEX=" USE INDEX ( lastview ) ";
        }
        elseif($type=='like')
        {

                $SQL.=" AND id!='$id' ";

                if(!$keyword)
                {
                        extract($db->get_one("SELECT keywords AS keyword FROM {$_pre}content WHERE id='$id'"));
                }

                if($keyword){
                        $SQL.=" AND ( ";
                        $keyword=urldecode($keyword);   //URLDECODE解码
                        $detail=explode(" ",$keyword);
                        unset($detail2);
                        foreach( $detail AS $key=>$value){
                                $detail2[]=" BINARY title LIKE '%$value%' ";
                        }
                        $str=implode(" OR ",$detail2);
                        $SQL.=" $str ) ";

                }else{
                        $SQL.=" AND 0 ";
                }

                $_INDEX=" USE INDEX ( list ) ";
                $ORDER=' list ';
        }

        $SQL=" $_INDEX WHERE $SQL AND yz=1 ORDER BY $ORDER DESC LIMIT $rows";

        $which='*';
        $_target=$target?'_blank':'_self';
        if($path){
                $_path=preg_replace("/(.*)\/([^\/]+)/is","\\1/",$WEBURL);
        }
        if($icon==1){
                $_icon="·";
        }else{
                $_icon=" ";
        }

        $listdb=listcontent($SQL,$which,$leng);
        foreach($listdb AS $key=>$rs)
        {
                $show.="$_icon<A target='$_target' HREF='{$_path}bencandy.php?fid=$rs&id=$rs' title='$rs'>$rs</A><br>";
        }
        if(!$show){
                $show="暂无...";
        }
起初总是不成功,后来才看到,下面代码$keyword进入explode函数,将空格拆分了,所以使用/**/替换
if($keyword){
                        $SQL.=" AND ( ";
                        $keyword=urldecode($keyword);
                        $detail=explode(" ",$keyword);
                        unset($detail2);
                        foreach( $detail AS $key=>$value){
                                $detail2[]=" BINARY title LIKE '%$value%' ";
                        }
                        $str=implode(" OR ",$detail2);
                        $SQL.=" $str ) ";

                }else{
                        $SQL.=" AND 0 ";
                }

super 发表于 2014-12-24 18:13:31

楼主那个mozilla插件叫什么

2863482451 发表于 2014-12-24 22:26:15

super 发表于 2014-12-24 18:13
楼主那个mozilla插件叫什么

那个插件叫hacker bar,谢谢分享了

super 发表于 2014-12-25 10:33:41

2863482451 发表于 2014-12-24 22:26
那个插件叫hacker bar,谢谢分享了

多谢告知
         

08LEO 发表于 2014-12-25 13:15:44

还是不明白

f4ck009 发表于 2014-12-29 22:50:45

这个只是泄露版本信息而已

jiu0baba 发表于 2014-12-31 19:40:10

感谢楼主
页: [1]
查看完整版本: 齐博CMS 二次注入