Skip to content
本页内容由 AI 辅助生成与翻译,如有不当之处,欢迎协助改进。 在 GitHub 上编辑

内置规则

PRX-WAF 内置 398 条预构建规则,分为三个类别,另有 10+ 个编译到二进制中的检测器。它们共同提供了对 OWASP Top 10 和已知 CVE 漏洞利用的全面覆盖。

OWASP Core Rule Set(310 条规则)

OWASP CRS 规则从 OWASP ModSecurity Core Rule Set v4 转换为 PRX-WAF 的原生 YAML 格式,覆盖最常见的 Web 攻击向量:

文件CRS ID规则数类别
sqli.yaml942xxx~87SQL 注入
xss.yaml941xxx~41跨站脚本
rce.yaml932xxx~30远程代码执行
lfi.yaml930xxx~20本地文件包含
rfi.yaml931xxx~12远程文件包含
php-injection.yaml933xxx~18PHP 注入
java-injection.yaml944xxx~15Java / 表达式语言注入
generic-attack.yaml934xxx~12Node.js、SSI、HTTP 拆分
scanner-detection.yaml913xxx~10安全扫描器 UA 检测
protocol-enforcement.yaml920xxx~15HTTP 协议合规性
protocol-attack.yaml921xxx~10请求走私、CRLF 注入
multipart-attack.yaml922xxx~8Multipart 绕过
method-enforcement.yaml911xxx~5HTTP 方法白名单
session-fixation.yaml943xxx~6会话固定
web-shells.yaml955xxx~8WebShell 检测
response-*.yaml950-956xxx~13响应检查

词表数据文件

OWASP CRS 规则使用短语匹配(pm_from_file)对 rules/owasp-crs/data/ 中的 20+ 个词表文件进行匹配:

  • scanners-user-agents.data —— 已知扫描器 User-Agent 字符串
  • lfi-os-files.data —— 敏感的操作系统文件路径
  • sql-errors.data —— 数据库错误消息模式
  • 以及更多

ModSecurity 社区规则(46 条规则)

手工编写的规则,覆盖 OWASP CRS 未完全覆盖的威胁类别:

文件规则数类别
ip-reputation.yaml~15Bot/扫描器/代理 IP 检测
dos-protection.yaml~12DoS 和异常请求模式
data-leakage.yaml~10PII 和凭据泄露检测
response-checks.yaml~9响应体检查

CVE 虚拟补丁(39 条规则)

针对高知名度 CVE 的检测规则。这些充当虚拟补丁,在漏洞利用到达应用之前将其拦截:

文件CVE 编号说明
2021-log4shell.yamlCVE-2021-44228, CVE-2021-45046Apache Log4j JNDI 查找 RCE
2022-spring4shell.yamlCVE-2022-22965, CVE-2022-22963Spring Framework RCE
2022-text4shell.yamlCVE-2022-42889Apache Commons Text RCE
2023-moveit.yamlCVE-2023-34362, CVE-2023-36934MOVEit Transfer SQL 注入
2024-xz-backdoor.yamlCVE-2024-3094XZ Utils 后门检测
2024-recent.yaml多个2024 年高知名度 CVE
2025-recent.yaml多个2025 年高知名度 CVE

TIP

CVE 补丁规则默认设置为偏执级别 1,这意味着它们在所有配置中都是激活的。由于它们针对特定的漏洞利用载荷,误报率极低。

内置检测器

除 YAML 规则外,PRX-WAF 还包含编译到二进制中的检测器,运行在检测流水线的专用阶段中:

阶段检测器说明
1-4IP 黑白名单基于 CIDR 的 IP 过滤
5CC/DDoS 限速器基于滑动窗口的 IP 限速
6扫描器检测漏洞扫描器指纹(Nmap、Nikto 等)
7Bot 检测恶意 Bot、AI 爬虫、无头浏览器
8SQL 注入libinjection + 正则模式
9XSSlibinjection + 正则模式
10RCE / 命令注入OS 命令注入模式
11目录遍历路径遍历(../)检测
14敏感数据Aho-Corasick 多模式 PII/凭据检测
15防盗链基于 Referer 的每主机验证
16CrowdSecBouncer 决策 + AppSec 检查

更新规则

可使用自带工具从上游源同步规则:

bash
# 检查更新
python rules/tools/sync.py --check

# 同步 OWASP CRS 到特定版本
python rules/tools/sync.py --source owasp-crs --output rules/owasp-crs/ --tag v4.10.0

# 同步到最新版
python rules/tools/sync.py --source owasp-crs --output rules/owasp-crs/

# 更新后热重载
prx-waf rules reload

规则统计

通过 CLI 查看当前规则统计:

bash
prx-waf rules stats

示例输出:

Rule Statistics
===============
  OWASP CRS:    310 rules (21 files)
  ModSecurity:   46 rules (4 files)
  CVE Patches:   39 rules (7 files)
  Custom:         3 rules (1 file)
  ─────────────────────────
  Total:        398 rules (33 files)

  Enabled:      395
  Disabled:       3
  Paranoia 1:   280
  Paranoia 2:    78
  Paranoia 3:    30
  Paranoia 4:    10

下一步

Released under the Apache-2.0 License.