当前位置: 首页 > news >正文

WAF绕过技巧

WAF绕过技巧

WAF(Web Application Firewall)是一种安全系统,旨在监控和控制网络流量,以防止攻击,如SQL 注入、跨站脚本(XSS)和拒绝服务(DoS)。 WAF 可以通过多种方式绕过。以下是常见的方法:

1. URL 编码

WAF 通常会检查 URL 中的 suspicious 模式或关键词。如果将特殊字符编码成 URL 中,可以绕过检测。例如:

http://example.com/%25 (编码 %25 而不是 %)

这种技术对绕过使用 exact string matching 的 WAF 很有用。

2. Unicode 编码

WAF 可能不 prepared 处理 Unicode 字符。如果使用非 ASCII 字符,可以创建难以分析的 URL:

http://example.com/%E5%8F%A4 (中文字符)

这种技术可以帮助绕过不 designed 处理 Unicode 的 WAF。

3. Base64 编码

Base64 编码可以将恶意代码隐藏在合法 URL 中:

http://example.com/aHR0cDovL3d3dy5jb20v (Base64 编码的 URL)

这种技术对绕过使用简单字符串匹配的 WAF 很有用。

4. 隐藏

隐藏恶意代码可以绕过 WAF 检测:

eval(unescape("javascript:alert('XSS!');")); 

这种技术可以帮助绕过不 designed 处理复杂、隐藏代码的 WAF。

5. JavaScript 注入

将 JavaScript 代码注入 HTML 页面可以绕过 WAF 检测:

<script>eval("javascript:alert('XSS!');");</script>

这种技术对绕过使用简单字符串匹配或不分析 JavaScript 代码的 WAF 很有用。

6. 有效载荷编码

编码有效载荷(例如 SQL 注入)可以绕过 WAF 检测:

SELECT * FROM users WHERE username = 'admin' AND password = '%27 OR 1=1;

这种技术对绕过使用简单字符串匹配或不分析编码有效载荷的 WAF 很有用。

7. DNS 隧道

DNS 隧道可以绕过 WAF 检测,通过将恶意代码隐藏在 DNS 请求中:

dig +short example.com @1.1.1.1 -t TXT "XSS! "

这种技术对绕过使用简单字符串匹配或不分析 DNS 交通的 WAF 很有用。

8. HTTP 头注入

将恶意代码注入 HTTP 头中可以绕过 WAF 检测:

http://example.com/ HTTP/X-XSS-Protection:1;X-Content-Type-Options:nosniff

这种技术对绕过使用简单字符串匹配或不分析 HTTP 头的 WAF 很有用。

请注意,这些技术并不是推荐的,应该只用于教育目的。WAF 绕过可以是一个危险的游戏,因为它可能会导致意外结果,如 compromis 自己系统或对他人的安全造成伤害。总是遵循最佳实践,并确保任何测试都在控制环境中进行。

http://www.lryc.cn/news/427259.html

相关文章:

  • HarmonyOS应用三之组件生命周期和参数传递
  • [Qt][Qt 网络][上]详细讲解
  • 读零信任网络:在不可信网络中构建安全系统21读后总结与感想兼导读
  • Java基础——注释
  • Redis未授权访问漏洞利用合集
  • 基于asp.net的在线考试系统、基于c#的在线考试管理系统
  • 将 hugo 博客搬迁到服务器
  • 【Datawhale AI夏令营第四期】 魔搭-大模型应用开发方向笔记 Task04 RAG模型 人话八股文Bakwaan_Buddy项目创空间部署
  • CTF密码学小结
  • Vue快速入门(七)——Vue3 状态管理 - Pinia(二)
  • ZooKeeper集群环境部署
  • 10 个 C# 关键字和功能
  • 贪心算法之重叠区间问题
  • Python爬虫入门教程(非常详细)适合零基础小白
  • ArcGIS Pro基础:软件的常用设置:中文语言、自动保存、默认底图
  • 依赖注入+中央事件总线:Vue 3组件通信新玩法
  • EasyCVR视频汇聚平台构建远程安防监控:5大亮点解析,助力安防无死角
  • fastadmin安装插件报500的错误
  • 速盾:为什么需要服务器和cdn?
  • 十四、模拟实现 list 类
  • JavaScript简介之引入方式
  • 同一台电脑上安装不同版本的nodejs(搭配VSCode)
  • python小游戏之摇骰子猜大小
  • C++入门——12继承
  • Python做统计图之美
  • 激光雷达点云投影到图像平面
  • [python]将anaconda默认创建环境python版本设置为32位的
  • Jmeter+Influxdb+Grafana平台监控性能测试过程(三种方式)
  • [创业之路-135] :ERP、PDM、EDM、Git各种的用途和区别,硬件型初创公司需要哪些管理工具?
  • 通过剪枝与知识蒸馏优化大型语言模型:NVIDIA在Llama 3.1模型上的实践与创新