文章总结: 本文介绍针对安全狗WAF的SQL注入绕过技术。面对数字型注入点,使用benchmark替代被拦截的sleep函数进行盲注。利用内联注释特性,通过将括号写入注释成功绕过对database等函数的检测,并结合gtid_subset函数报错获取数据。还演示了拆分函数名与括号配合内联注释拼接的方法来绕过常见报错函数的拦截。 综合评分: 72 文章分类: 渗透测试,WEB安全,漏洞POC,红队
绕dog+WAF进行SQL注入
轩公子谈技术
2026年1月29日 17:11 江苏
以下文章来源于犀利猪安全 ,作者犀利猪
犀利猪安全 .
IT、信息安全技术分享交流,渗透测试、应急响应、排查溯源、红队蓝队、CTF、攻防对抗。
免责声明
文章内容仅限授权测试或学习使用请勿进行非法的测试或攻击,利用本账号所发文章进行直接或间接的非法行为,均由操作者本人负全责,犀利猪安全及文章对应作者将不为此承担任何责任。
文章来自互联网或原创,如有侵权可联系我方进行删除,深感抱歉。
00
文章背景
公元二零二六年一月二十七日,基友突发消息,直接DDDD:
于是,基友发来了地址,开干。
01
小狗猛猛的
好的开冲,单引号一叠没有用,一眼顶针,鉴定为数字型注入:
接下来,尝试进行判断:
一眼小狗子,换个手法:
卧槽666,他这个调了什么配置,TM的居然FUZZ不过去,我丢雷阿嫲的。就不介绍这么多了,有兴趣的看我几年前的文章:
绕狗 | 基于最新安全狗学习SQL注入FUZZ
简简单单,先来试试延迟注入,所不期然,sleep 函数被拦截了
面试题来了,sleep 函数被禁用了,你还能用什么函数来证明存在?
当然是benchmark,计算 4+7个0,md5计算,用时 11s
计算1+8 个 0,用时 28 秒,说明成功了
接着,我发现内联注释是有效的:
显而可见,有报错那我直接报错注入:
意料之中的情况,这里想要使用几个常见的报错函数也没问题,但是需要拆开内容逐个测试,再配合内联注释来食用最佳。
02
冷门函数
我直接掏出一个冷门函数,没有被拦:
gtid_subset(参数1,参数2) 此函数要求两个参数都是有效的GTID格式内容 如果不是,则会产生报错,获取到数据库信息
接着把1换成函数,被拦:
看看拦截的什么,所以我们先把括号删掉,让其变成非函数:
现在没被拦,那么说明匹配的是完整的函数,所以我们只需要让database与()没有直接连接在一起,就可绕过检测。
正如我所说的,内联注释还可以使用,所以,我们只需要把括号写在内联注释里:
这不手拿把掐吗,如鱼得水,如我来到了洗脚店,就像回到了家一样。
03
内联注释拼接
正如我前面所说的,想使用常用的几个报错函数来实现也没有问题。
只不过这里我们需要把内容拆分,拼接多个内联注释,把他们串起来就可以实现了:
OK,开始拆分:
首先这个函数不能完整的直接形成,会被匹配到,所以先把这里拆开:
好的,拆到这个位置,那么database()又是一个函数,我们继续拆分再拼接就好:
这里连接用到的加号也可以不要,只不过为了美观好分辨,用加号成为了习惯:
还是不好分辨?没事,我帮你们换行:
文库账号
血赚价格
HOT
55.8一年,短时间内价格不变
后续只会涨,不会往下跌
登入后在文库同步获取各类资源
内含POC、各类学习报告、学习文档
(
END
)
!扫码添加哦!
联系进群即可,群内可交流技术
没钱吃饭了,大哥给点吧
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:轩公子谈技术 《绕dog+WAF进行SQL注入》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。








![[分享]连用四个驱动!银狐开始硬刚EDR和杀软](/images/random/titlepic/10.jpg)


评论