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










评论