WAF 的规避技术

信息安全 防火墙 华夫
2021-08-29 01:21:03

是否有任何记录在案的技术可以规避 Web 应用程序防火墙以测试 WAF 规则配置?

3个回答

查看Ivan Ristić 的研究。以下摘自他在Qualys 博客上的帖子:

今天在 Black Hat [2012] 上,我们宣布了一项关于 Web 应用程序防火墙协议级规避的新研究项目。这种类型的规避侧重于 WAF 的低级操作,旨在利用 WAF 如何看待流量以及后端 Web 服务器和应用程序如何看待流量的微小差异。如果您让 WAF 看到与后端看到的不同的东西,那么您就有可能被用来执行任何攻击类型的规避机会,而不会被检测到。
[...]
附在这篇文章之后的是我们的研究论文,重点关注请求路径、参数和多部分/表单数据规避。还附上了介绍这项研究的黑帽谈话幻灯片。测试套件(一种研究工具包)位于 GitHub 上的IronBee WAF Research存储库中。

Web 应用程序防火墙的协议级规避 v1.1(2012 年 7 月 18 日).pdf
Web 应用程序防火墙的协议级规避(Ivan Ristic,Qualys,Black Hat USA 2012)SLIDES.pdf

很难预测 WAF 将如何检查流量,因为 WAF 规则和方法没有标准化并且在堆栈中工作得如此之高。基本上,您正在寻找检测中的弱点和/或使 WAF 尽可能难以正确解释发送到目标的通信。

一些可以使用的技术:

  • 攻击字符串中大小写混合(用于绕过 WAF 正则表达式配置)
  • SQL 命令中的随机注释
  • URI 编码
  • 数据包分片

在我测试的一个简单的本土 WAF 系统中,我通过从

' OR 1=1 --

' OR foo=foo --

关于工具的话题,SQLMapHavij是众所周知的。SQLMap规避脚本还可以更深入地了解特定的 WAF 规避技术。

任何 IPS规避技术也可以潜在地应用于 WAF。