Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
Awesome-WAF — 从安全角度解析Web应用防火墙(WAFs)的一切!🔥 | Kitploit
工具/GitHubGitHub/0xinfection/awesome-waf
WAF绕过Web安全学习与教育精选资源WAF绕过 分类第 4 名
GitHub0xinfection/awesome-waf

Awesome-WAF

从安全角度解析Web应用防火墙(WAFs)的一切!🔥

查看仓库
7.6k1.2k1101个月前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Awesome WAF Awesome

从安全角度了解关于 Web 应用防火墙(WAF)的一切。🔥

前言: 这原本是我个人关于 WAF 的收藏。我将其开源,希望它能对渗透测试人员和研究人员有所帮助。俗话说,“社区就是相互学习。”

主图

简明的定义: 防火墙是位于 Web 应用和客户端端点之间的安全策略执行点。此功能可以通过软件或硬件实现,运行在专用设备中,或运行在运行通用操作系统的典型服务器上。它可以是独立设备,也可以集成到其他网络组件中。(来源:PCI DSS IS 6.6)

Web 应用防火墙位于用户和 Web 应用之间,其任务是阻止任何恶意活动到达 Web 应用。WAF 要么过滤掉请求中的恶意部分,要么直接阻止该请求。

欢迎贡献。

目录:

  • 简介
    • WAF 工作方式
    • 运行模式
  • 测试方法
    • 从何处入手
    • 检测技术
  • WAF 指纹
  • 绕过技术
    • 模糊测试/暴力破解
    • 正则反转
    • 混淆/编码
    • 浏览器漏洞
    • HTTP 标头欺骗
    • Google Dorks 方法
  • 已知绕过方法
  • 优秀工具
    • 指纹识别
    • 测试
    • 绕过
  • 博客与文章
  • 视频演示
  • 研究演示与论文
    • 研究论文
    • 演示幻灯片
  • 许可与致谢

简介:

WAF 工作方式:

  • 使用一组规则来区分正常请求和恶意请求。
  • 有时它们会使用学习模式,通过学习用户行为自动添加规则。

运行模式:

  • 消极模型(基于黑名单) - 黑名单模型使用预设签名来阻止明显恶意的请求。采用消极模型的 WAF 的签名专门设计用于防止利用某些 Web 应用漏洞的攻击。黑名单模型 Web 应用防火墙非常适合面向公共互联网的 Web 应用,并且对主要漏洞非常有效。例如,阻止所有 <script>*</script> 输入的规则可以防止基本的跨站脚本攻击。
  • 积极模型(基于白名单) - 白名单模型仅允许根据特定配置标准的 Web 流量。例如,可以配置为仅允许来自某些 IP 地址的 HTTP GET 请求。该模型对于阻止潜在的大规模攻击非常有效,但也会阻止大量合法流量。白名单模型防火墙可能最适合内部网络上的 Web 应用,这些应用仅供有限群体使用,例如员工。
  • 混合模型(包容性模型) - 混合安全模型结合了白名单和黑名单。根据各种具体配置,混合防火墙对于内部网络上的 Web 应用和公共互联网上的 Web 应用可能都是最佳选择。一个很好的场景是:Web 应用面向公共互联网(使用黑名单),而管理面板只需要暴露给一部分用户(使用白名单)。

测试方法:

从何处入手:

  • 始终注意可能暴露 WAF 的常见端口,即 80、443、8000、8080 和 8888 端口。但重要的是要注意,WAF 可以轻松部署在任何运行 HTTP 服务的端口上。最好先枚举 HTTP 服务端口,然后再寻找 WAF。
  • 有些 WAF 会在请求中设置自己的 Cookie(例如 Citrix Netscaler、Yunsuo WAF)。
  • 有些 WAF 会与单独的标头关联(例如 Anquanbao WAF、Amazon AWS WAF)。
  • 有些 WAF 经常修改标头并打乱字符以迷惑攻击者(例如 Netscaler、Big-IP)。
  • 有些 WAF 会在 Server 标头中暴露自己(例如 Approach、WTS WAF)。
  • 有些 WAF 会在响应内容中暴露自己(例如 DotDefender、Armor、Sitelock)。
  • 其他 WAF 在收到恶意请求时会回复不寻常的响应代码(例如 WebKnight、360 WAF)。

检测技术:

要识别 WAF,我们需要(假装)挑衅它。

  1. 从浏览器发出正常 GET 请求,拦截并记录响应标头(特别是 Cookie)。
  2. 从命令行发出请求(例如 cURL),测试响应内容和标头(不包含用户代理)。
  3. 向随机开放端口发出 GET 请求,抓取可能暴露 WAF 身份的标语。
  4. 在登录页面注入常见(易于检测)的有效载荷,例如 " or 1 = 1 --。
  5. 在搜索栏、联系表单和其他输入字段中注入嘈杂的有效载荷,例如 <script>alert()</script>。
  6. 在 URL 末尾的随机参数后附加一个虚拟的 ../../../etc/passwd。
  7. 在 URL 末尾的任何随机参数后附加一些吸引人的关键字,例如 ' OR SLEEP(5) OR '。
  8. 使用过时的协议(如 HTTP/0.9)发出 GET 请求(HTTP/0.9 不支持 POST 类型的查询)。
  9. 很多时候,WAF 会根据不同类型的交互更改 Server 标头。
  10. 丢弃动作技术 - 向服务器发送原始构造的 FIN/RST 数据包并识别响应。

    提示: 此方法可以轻松使用 HPing3 或 Scapy 等工具实现。

  11. 侧信道攻击 - 检查请求和响应内容的时序行为。

    提示: 更多详细信息可以在此博客文章中找到。

下载工具