Less 1 基于错误的字符串型注入
首先判断注入类型
2 的结果与 2-1 相同,说明不存在数字型注入


加上单引号报错,加上注释符页面正常,说明存在字符型注入,且单引号闭合


- 注释方式
- # 号注释
- %23 注释
- --+ 注释
判断字段数
http://127.0.0.1/sqli/Less-1?id=2' order by 3 --+ #页面显示正常 http://127.0.0.1/sqli/Less-1?id=2' order by 4 --+ #页面报错
说明字段数为3
接着联合注入判断回显点

这里输入-2是因为原查询 id='2' 可能返回有效数据 应用程序可能默认显示第一条结果(原查询的数据),导致 2,3 未被直接回显
通过注入-2 或 0 一个不存在的值,确保 UNION SELECT 结果直接回显。
查看数据库名,版本号
- 常用查询信息
- database() # 在用的数据库名
- user() # 用户信息
- version() # 数据库版本信息
- @@basedir # 数据库安装路径
- @@version_compile_os # 操作系统版本

获取数据库 security 的所有表名
- group_concat(table_name):合并所有表名到第三列
- from information_schema.tables:从系统表 information_schema.tables 中读取元数据。
- where table_schema='security':筛选属于数据库 security 的表。

获取users表字段名

查询users表的password和username 字段内容

Comments NOTHING