sql注入绕过addslashes函数-宽字节注入

本文详细介绍了SQL注入中的一种特殊类型——宽字节注入,特别是针对PHP的addslashes()函数。内容包括宽字节注入的前提条件、如何利用GBK编码进行单引号探测和逃逸,以及在遇到单引号被转义时的解决方案,如使用database()函数或16进制转换。此外,还涵盖了爆表名、列名和数据的技巧,以及工具辅助注入的讨论。
摘要由CSDN通过智能技术生成

宽字节注入

宽字节注入要求:

1、数据库的编码为GBK

image-20220310090139124

2、addslashes()函数,检测在单引号前加\

addslashes() 函数返回在预定义字符之前添加反斜杠的字符串。

预定义字符是:

  • 单引号(’)
  • 双引号(")
  • 反斜杠(\)
  • NULL

image-20220310090200647

一、单引号探测

http://localhost:8899/sqli-lab/Less-33/index.php?id=1'

image-20220310085243187

这里我们发现我们输入的’直接被转义成\了,在一般情况下,此处是不存在SQL注入漏洞的,不过有一个特例,就是当数据库的编码为GBK时,可以使用宽字节注入,宽字节的格式是在地址后先加一个%df,再加单引号,因为反斜杠的编码为%5c,

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值