Sql注入--Waf绕过姿势

前言

waf(Web Application Firewall)全称为“Web应用防护系统”,通俗的讲,waf的目的是过滤请求包,正常来讲访问一个网站不会拦截你的请求包,如果你的请求包内带有一些参数会危害到网站,waf此时就起到了作用。waf算作代理防火墙中的一种。

0x00 环境准备

在这里利用phpstudy搭建一个sqli-labs环境,下载的sqli-labs安装包放至D:\phpstudy\PHPTutorial\WWW目录
在这里插入图片描述
开启phpstudy,访问成功
在这里插入图片描述
接下来在主机下载一个网站安全狗apache版,这里推荐下载3.5版本,4.0版本需要注册,比较麻烦
网站安全狗官网下载地址
下载过程中会跳出页面填写服务名,这时候把phpstudy改为“系统服务”模式,记得点击应用,打开任务管理器的服务,查找有关apache的服务,将服务名称填写上去。
在这里插入图片描述
在这里插入图片描述
这里很多人就会像我一样没有apache服务,百度查找了n种方法,终于。首先找到phpstudy apache的目录,将路径复制下来,然后打开cmd,这里一定要用管理员权限打开,否则后面的代码无法执行。进入phpstudy下的apache\bin目录,执行以下代码。

httpd.exe -k install -n apache2.0 #这里的apache2.0只是一个名称,换成其他的也可

在这里插入图片描述
回到apache目录点击ApacheMonitor.exe,会看到以下页面,这里我已经点击过了。
在这里插入图片描述
再回到任务管理器的服务中查看,嗯,它有了(痛哭流涕!!!)卡了我近两个小时…555
在这里插入图片描述
在这里插入图片描述
按照教程设置了好几遍,均无果,绝望之际发现了“保存”俩字儿,大家一定要记得保存哇,千万不要像我一样,保存了以后再次访问,成功,真的要被自己蠢哭了…
在这里插入图片描述
以第一关为例,发现waf拦截
在这里插入图片描述

sql注入waf的绕过方式总的来说分为三类:
1.干扰字符
2.fuzz结合
3.改变请求方式

0x01 干扰字符

空格:%20,+,(),%0a,%09,%a0,%0b,%0c,%0d,/**/等
=:like,regexp,liker,<>,!=等
and:&&
or: xor,&,^,||
逗号:盲注中 from 1 for 1,联合查询中 A join B

1.Mysql中有助于Waf绕过的特性

(1)等号
=,:=,@
三者等价,在利用时可以将=替换为:= 或者 @
(2)注释符
Mysql中常用的注释符有/**/、-- (空格)、#
对于-- (空格)和 # 我们较为常见,以 /* */为例,同样能够执行

select * from test where id = union /*2343select*/ 1,2,3;

对于/*! */ ,它的表示含义为继续执行注释里的内容。正常情况下会正常执行语句,这里报错可能是select前面的数字的原因。数字代表的是网站的版本
在这里插入图片描述

http://127.0.0.1/sqlilabs/Less-1/index.php/?id=-1' union /*!44509select*/ 1,2,3#

在这里插入图片描述
(3)换行
在这里插入图片描述
在实际操作中%0a对应的就是换行
在这里插入图片描述
通常来讲,union select 用于查询,这里加入了all,union all select 对语句没有任何影响,含义不变,以下语句在执行时%23将后面的注释掉了,只执行union all,但是将all换成其他的也不成功。%0a换行执行select后面的语句。
在这里插入图片描述
第三种情况
正常情况下,空格过滤使用空格等价替换中的人一个都可以,这里依旧被waf拦截
在这里插入图片描述
这里使用%23%0a代替空格
在这里插入图片描述

0x02 fuzz结合

0x03 改变请求方式

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

两小姐的便利贴

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

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

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

打赏作者

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

抵扣说明:

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

余额充值