Skip to main content

waf-bypass-methodology

WAF 绕过统一方法论。当漏洞利用 payload 被 WAF 拦截返回 403/406 时使用,覆盖 F5、网宿(ChinaNetCenter)、UEWAF、Cloudflare、ModSecurity、安全狗、宝塔等产品指纹与绕过。包括编码绕过、分块传输、HTTP 方法切换、参数污染、Payload 变形、SQL 注入绕过、验证码解锁(captcha 绕过)、代理池/免费代理切换 IP 绕过封禁等

معلومات المصدر

المستودع
wgpsec/AboutSecurity
آخر نشاط في المصدر
١٢ أغسطس ٢٠٢٦ في ١٠:٠٩
لغة SKILL.md المكتشفة
الصينية
النجوم
١٬٨٢٢
التفرعات
٢٥٣

خيارات التثبيت

يُحدَّد Prompt الذي يراجع المصدر أولًا بشكل افتراضي. يمكنك التبديل إلى أمر مباشر أو تنزيل نسخة محلية.

مراجعة ملفات المصدر

اقرأ SKILL.md وأي ملفات مرافقة يعرضها SkillsMP قبل أن تقرر التثبيت.

مستكشف الملفات
5 ملفات

عرض SKILL.md

SKILL.md
تعليمات المصدر · معاينة للقراءة فقط
name
waf-bypass-methodology
description
WAF 绕过统一方法论。当漏洞利用 payload 被 WAF 拦截返回 403/406 时使用,覆盖 F5、网宿(ChinaNetCenter)、UEWAF、Cloudflare、ModSecurity、安全狗、宝塔等产品指纹与绕过。包括编码绕过、分块传输、HTTP 方法切换、参数污染、Payload 变形、SQL 注入绕过、验证码解锁(captcha 绕过)、代理池/免费代理切换 IP 绕过封禁等
metadata
{"tags":"waf,bypass,绕过,firewall,cloudflare,modsecurity,安全狗,宝塔,WAF绕过,编码,分块传输,参数污染,403,forbidden,blocked,rejected,406,拦截,intercepted,请求被拒绝,payload被拦截,f5,网宿,uewaf,captcha,验证码,解锁,sql,injection,注入绕过,代理池,免费代理,proxy,ip轮换","category":"exploit"}
# WAF 绕过统一方法论 WAF 绕过的核心原则:WAF 和后端应用对同一 HTTP 请求的解析存在差异,利用这个差异让 WAF "看到"合法请求而后端"看到"恶意 payload。 ## 深入参考 - 编码绕过 Payload(双重 URL/Unicode/HTML/混合编码) → [references/encoding-bypass-payloads.md](references/encoding-bypass-payloads.md) - HTTP 协议层绕过(分块传输/Content-Type/方法切换/HTTP2/走私) → [references/http-protocol-bypass.md](references/http-protocol-bypass.md) - 参数层绕过(HPP/数组语法/Multipart) → [references/parameter-bypass.md](references/parameter-bypass.md) - Payload 变形(通用编码/拆分/格式切换) → [references/payload-mutation.md](references/payload-mutation.md) --- ## Phase 0: WAF 识别 ### 0.1 检测是否有 WAF ```bash # 发送明显恶意请求,观察响应 curl -s "http://TARGET/?id=1' OR '1'='1" -D- curl -s "http://TARGET/?id=<script>alert(1)</script>" -D- curl -s "http://TARGET/?cmd=;id" -D- # 对比正常请求和恶意请求的响应差异 # WAF 拦截特征:403/406 状态码、特定拦截页面、不同的 Server 头 ``` ### 0.2 WAF 指纹识别 | 特征 | WAF 产品 | |------|----------| | `Server: cloudflare` / `cf-ray` 头 | Cloudflare | | `X-Sucuri-ID` 头 | Sucuri | | 响应含 `ModSecurity` | ModSecurity | | 响应含 `安全狗` / `safedog` | 安全狗 | | 响应含 `宝塔` / `bt.cn` | 宝塔 WAF | | `X-Powered-By-Anquanbao` | 安百 WAF | | 响应含 `yunsuo` | 云锁 | | 阿里云 403 页面 | 阿里云盾 | | 腾讯云特定 403 | 腾讯云 WAF | --- ## 通用绕过检查流程 ``` Payload 被拦截 → 403/拦截页 ├── 1. 编码绕过 │ ├── 双重 URL 编码 │ ├── Unicode 编码 │ └── 混合大小写 + NULL 字节 ├── 2. HTTP 层 │ ├── 分块传输 │ ├── Content-Type 切换 │ ├── HTTP 方法切换 │ └── HTTP/2 ├── 3. 参数层 │ ├── 参数污染 (HPP) │ ├── 数组/JSON 嵌套 │ └── Multipart 包裹 ├── 4. Payload 变形 │ ├── 空格替代(注释/Tab/换行) │ ├── 函数名替代 │ ├── 拼接/编码函数 │ └── 通配符/变量 └── 5. 逻辑层 ├── 分多次请求发送(先探测再利用) └── 利用白名单路径(/api/health + 路径穿越) ``` > 每个分支的详细 payload 见对应 references 文件 ## Phase 5: 国产/商业 WAF 指纹与绕过 | WAF | 指纹特征 | 绕过思路 | |-----|---------|---------| | F5 BIG-IP ASM | `X-Content-Type-Options`、ASM 拦截页 | 编码混淆、分块、方法切换 | | 网宿(ChinaNetCenter) | `X-Cache: NS`、网宿拦截页 | 参数污染、大小写、Unicode 编码 | | UEWAF | 特定拦截页/JS 挑战 | 直接请求后端 IP/域名、绕过 JS 校验 | | Cloudflare | `cf-ray`、`server: cloudflare` | 源站 IP 直连、编码绕过 | | 安全狗/宝塔 | 页面特征 | 注释符、等价函数、编码 | ## Phase 6: 验证码解锁(captcha 绕过) WAF/风控用验证码拦截高频攻击时: 1. **逻辑绕过**:复用验证码、置空 code、删除参数、万能验证码 2. **识别**:OCR/打码平台识别图片验证码,点击式验证码按坐标模拟点击 3. **触发点切换**:换接口/换参数绕过验证码触发逻辑 4. 详细方法见 captcha-bypass-methodology ## Phase 7: 代理池/免费代理 IP 轮换 WAF 按 IP 限频/封禁时: 1. 使用免费代理/代理池切换出口 IP,规避 IP 封禁 2. 注意代理可用性与速度,优先高匿代理 3. 结合低速率(慢速)请求降低触发风控概率 4. 免费代理来源动态变化,测试时先验证代理可用性 ## Phase 8: SQL 注入绕过(F5/网宿场景) - 注释符替换:`-- ` → `#` → `/*!*/` → `;%00` - 关键字混淆:大小写、内联注释 `/*!union*/`、等价函数 - 编码:URL 双重编码、Unicode、hex - 分块传输 + 参数污染组合使用
عرض على GitHub