Web 应用程序防火墙 DRS 和 CRS 规则组和规则

出现常见的漏洞和攻击时,应用程序网关 Web 应用程序防火墙 (WAF) 中由 Azure 管理的规则集会主动保护 Web 应用程序。 这些规则集由 Azure 管理,根据需要接收更新,以针对新的攻击特征进行安全防护。 默认规则集还包含 Microsoft 威胁情报收集规则。 Microsoft 情报团队协作编写这些规则,确保增强覆盖范围,针对特定漏洞进行修补,并改进误报率。

你还可以选择使用基于 OWASP 核心规则集 3.2、3.1、3.0 或 2.2.9 定义的规则。

你可以单独禁用各个规则,也可以为每个规则设置特定操作。 本文包含当前可用的规则和规则集。 如果已发布的规则集需要更新,我们将在此处记录它。

注意

当 WAF 策略中的规则集版本发生更改时,对规则集所做的任何现有自定义都将重置为新规则集的默认值。 请参阅:升级或更改规则集版本

默认规则集

Azure 托管的默认规则集 (DRS) 包含针对以下威胁类别的规则:

  • 跨站点脚本
  • Java 攻击
  • 本地文件包含
  • PHP 注入攻击
  • 远程命令执行
  • 远程文件包含
  • 会话固定
  • SQL 注入保护
  • 协议攻击者。将新的攻击签名添加到规则集时,DRS 的版本号将递增。

Microsoft 威胁情报收集规则

Microsoft 威胁情报收集规则由 Microsoft 威胁情报团队合作编写,以提供更高的覆盖范围、针对特定漏洞的补丁,并更好地减少误报。

注意

在应用程序网关 WAF 上开始使用 2.1 时,请使用以下指南来优化 WAF。 规则的详细信息如下所述。

规则 ID 规则组 说明 详细信息
942110 SQLI SQL 注入攻击:检测到常用注入测试 禁用,替换为 MSTIC 规则 99031001
942150 SQLI SQL 注入攻击 禁用,替换为 MSTIC 规则 99031003
942260 SQLI 检测到基本 SQL 身份验证绕过尝试 2/3 禁用,已由 MSTIC 规则编号 99031004 替代
942430 SQLI 受限 SQL 字符异常情况检测 (args):已超出特殊字符数 (12) 禁用,误报过多
942440 SQLI 检测到 SQL 注释序列 禁用,替换为 MSTIC 规则 99031002
99005006 MS-ThreatIntel-WebShells Spring4Shell 交互尝试 保持启用规则以防止 SpringShell 漏洞
99001014 MS-ThreatIntel-CVEs 尝试使用 Spring Cloud 路由表达式注入 CVE-2022-22963 保持启用规则以防止 SpringShell 漏洞
99001015 MS-ThreatIntel-WebShells 尝试利用 Spring Framework 不安全类对象 CVE-2022-22965 保持启用规则以防止 SpringShell 漏洞
99001016 MS-ThreatIntel-WebShells 尝试进行 Spring Cloud Gateway Actuator 执行器注入 CVE-2022-22947 保持启用规则以防止 SpringShell 漏洞
99001017 MS-ThreatIntel-CVEs 尝试利用 Apache Struts 文件上传 CVE-2023-50164 将操作设置为“阻止”可防止 Apache Struts 漏洞。 此规则不支持异常分数

核心规则集

默认情况下,应用程序网关 WAF 预配置了 CRS 3.2,但你可以选择使用任何其他受支持的 CRS 版本。

与早期版本的 CRS 相比,CRS 3.2 提供了一个新引擎和新规则集来防御 Java 注入、一组初始文件上传检查以及误报更少。 还可以根据需求自定义规则。 详细了解新的 Azure WAF 引擎

管理规则

WAF 可针对以下 Web 漏洞提供保护:

  • SQL 注入攻击
  • 跨站点脚本攻击
  • 其他常见攻击,例如命令注入、HTTP 请求走私、HTTP 响应拆分和远程文件包含
  • HTTP 协议违规
  • HTTP 协议异常,例如缺少 Host、User-Agent 和 Accept 头。
  • 自动程序、爬网程序和扫描程序
  • 常见应用程序错误配置(例如 Apache 和 IIS)

优化托管规则集

DRS 和 CRS 在 WAF 策略的检测模式下默认启用。 可以禁用或启用托管规则集内的各个规则,以满足应用程序要求。 还可以根据规则设置特定操作。 DRS/CRS 支持块、日志和异常分数操作。 Bot Manager 规则集支持允许、阻止和记录操作。

有时你可能需要忽略 WAF 评估中的某些请求属性。 一个常见的例子是用于身份验证的 Active Directory 插入令牌。 可以将排除项配置为在评估特定 WAF 规则时应用,或全局应用于所有 WAF 规则的评估。 排除规则适用于整个 Web 应用。 有关详细信息,请参阅包含应用程序网关排除列表的 Web 应用程序防火墙 (WAF)

默认情况下,当请求与规则匹配时,DRS 版本 2.1 / CRS 版本 3.2 及更高版本会使用异常评分。 默认情况下,CRS 3.1 和更低版本会阻止匹配的请求。 此外,如果想要绕过核心规则集中的任何预配置规则,可以在同一 WAF 策略中配置自定义规则。

在评估核心规则集中的规则之前,总是先应用自定义规则。 如果请求与某个自定义规则相匹配,将应用相应的规则操作。 请求将被阻止,或通过后端传递。 不会处理任何其他自定义规则或核心规则集中的规则。

异常评分

使用 CRS 或 DRS 2.1 及更高版本时,WAF 默认配置为使用异常评分。 即使 WAF 处于防护模式,符合任何规则的流量也不会被立即阻止。 OWASP 规则集为每个规则定义严重性:“严重”、“错误”、“警告”或“通知”。 这些严重性会影响请求的数值,该数值称为异常分数:

规则严重性 对异常分数的贡献值
严重 5
错误 4
警告 3
通知 2

如果异常分数为 5 或更高,并且 WAF 处于预防模式,则会阻止请求。 如果异常分数为 5 或更高,并且 WAF 处于检测模式,则会记录请求,但不会阻止请求。

例如,在预防模式下,一个“严重”规则匹配就足以让 WAF 阻止请求,因为总体异常分数为 5。 然而,一个“警告”规则匹配仅会使异常得分增加3分,这本身还不足以阻止流量。 触发异常规则时,它会在日志中显示“匹配”操作。 如果异常分数达到 5 或更高,将根据 WAF 策略是处于“预防”模式还是“检测”模式,触发单独的规则,并执行“阻止”或“检测到”的操作。 有关详细信息,请参阅异常评分模式

升级或更改规则集版本

如果要升级或分配新的规则集版本,并且想要保留现有规则替代和排除项,建议使用 PowerShell、CLI、REST API 或模板进行规则集版本更改。 规则集的新版本可以有更新的规则、附加规则组,并可能对现有签名进行更新,以强制实施更好的安全性并减少误报。 建议验证测试环境中的更改,根据需要微调,然后在生产环境中部署。

注意

如果使用 Azure 门户将新的托管规则集分配给 WAF 策略,则现有托管规则集(如规则状态、规则作和规则级别排除)的所有以前的自定义都将重置为新的托管规则集的默认值。 但是,在分配新规则集期间,任何自定义规则、策略设置和全局排除均不受影响。 在生产环境中部署之前,需要重新定义规则替代和验证更改。

DRS 2.1

DRS 2.1 规则可以比早期版本的 DRS 提供更好的保护。 它包括 Microsoft 威胁情报团队开发的更多规则和特征更新,因此可以减少误报。 它还支持 URL 解码以外的转换。

DRS 2.1 包括下表中所示的 17 个规则组。 每个组包含多个规则,你可以自定义各个规则、规则组或整个规则集的行为。 DRS 2.1 以 Open Web Application Security Project (OWASP) 核心规则集 (CRS) 3.3.2 为基础,包括 Microsoft 威胁情报团队开发的其他专有保护规则。

规则组 ruleGroupName 说明
常规 常规 常规组
METHOD-ENFORCEMENT METHOD-ENFORCEMENT 锁定方法(PUT、PATCH)
协议执行 协议执行 防范协议和编码问题
协议攻击 PROTOCOL-ATTACK 防范标头注入、请求走私和响应拆分
APPLICATION-ATTACK-LFI LFI 防范文件和路径攻击
APPLICATION-ATTACK-RFI RFI 防范远程文件包含 (RFI) 攻击
APPLICATION-ATTACK-RCE RCE 防范远程代码执行攻击
应用程序攻击-PHP PHP 防范 PHP 注入攻击
APPLICATION-ATTACK-NodeJS NODEJS 防范 Node JS 攻击
应用程序攻击-XSS XSS 防范跨站点脚本攻击
APPLICATION-ATTACK-SQLI SQLI 防范 SQL 注入攻击
APPLICATION-ATTACK-SESSION-FIXATION FIX 防范会话固定攻击
应用程序攻击会话-JAVA JAVA 防范 JAVA 攻击
MS-ThreatIntel-WebShells MS-ThreatIntel-WebShells 防范 Web shell 攻击
MS-ThreatIntel-AppSec MS-ThreatIntel-AppSec 防范 AppSec 攻击
MS-ThreatIntel-SQLI MS-ThreatIntel-SQLI 防范 SQLI 攻击
MS-ThreatIntel-CVEs MS-ThreatIntel-CVEs 防范 CVE 攻击

OWASP CRS 3.2

CRS 3.2 包括下表中所示的 14 个规则组。 每个组包含多个可以禁用的规则。 规则集基于 OWASP CRS 3.2.0 版本。

注意

CRS 3.2 仅在 WAF_v2 SKU 上可用。 由于 CRS 3.2 在新 Azure WAF 引擎上运行,因此无法降级到 CRS 3.1 或更早版本。 如果需要降级,请联系 Azure 支持部门

规则组名称 说明
常规 常规组
KNOWN-CVES 帮助检测新的和已知的 CVE
REQUEST-911-METHOD-ENFORCEMENT 锁定方法(PUT、PATCH)
REQUEST-913-SCANNER-DETECTION 防范端口和环境扫描程序
REQUEST-920-PROTOCOL-ENFORCEMENT 防范协议和编码问题
REQUEST-921-PROTOCOL-ATTACK 防范标头注入、请求走私和响应拆分
REQUEST-930-APPLICATION-ATTACK-LFI 防范文件和路径攻击
REQUEST-931-APPLICATION-ATTACK-RFI 防范远程文件包含 (RFI) 攻击
REQUEST-932-APPLICATION-ATTACK-RCE 防范远程代码执行攻击
REQUEST-933-APPLICATION-ATTACK-PHP 防范 PHP 注入攻击
REQUEST-941-APPLICATION-ATTACK-XSS 防范跨站点脚本攻击
REQUEST-942-APPLICATION-ATTACK-SQLI 防范 SQL 注入攻击
REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION 防范会话固定攻击
REQUEST-944-APPLICATION-ATTACK-JAVA 防范 JAVA 攻击

OWASP CRS 3.1

CRS 3.1 包括下表中所示的 14 个规则组。 每个组包含多个可以禁用的规则。 规则集基于 OWASP CRS 3.1.1 版本。

注意

CRS 3.1 仅在 WAF_v2 SKU 上可用。

规则组名称 说明
常规 常规组
KNOWN-CVES 帮助检测新的和已知的 CVE
REQUEST-911-METHOD-ENFORCEMENT 锁定方法(PUT、PATCH)
REQUEST-913-SCANNER-DETECTION 防范端口和环境扫描程序
请求-920-协议-强制执行 防范协议和编码问题
REQUEST-921-PROTOCOL-ATTACK 防范标头注入、请求走私和响应拆分
REQUEST-930-APPLICATION-ATTACK-LFI 防范文件和路径攻击
REQUEST-931-APPLICATION-ATTACK-RFI 防范远程文件包含 (RFI) 攻击
REQUEST-932-APPLICATION-ATTACK-RCE 防范远程代码执行攻击
REQUEST-933-APPLICATION-ATTACK-PHP 防范 PHP 注入攻击
REQUEST-941-APPLICATION-ATTACK-XSS 防范跨站点脚本攻击
REQUEST-942-APPLICATION-ATTACK-SQLI 防范 SQL 注入攻击
REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION 防范会话固定攻击
REQUEST-944-APPLICATION-ATTACK-SESSION-JAVA 防范 JAVA 攻击

OWASP CRS 3.0

CRS 3.0 包含下表中所示的 13 个规则组。 每个组包含多个可以禁用的规则。 规则集基于 OWASP CRS 3.0.0 版本。

注意

新的 WAF 策略不再支持 CRS 3.0 和更低规则集版本。 建议升级到最新的 CRS 3.2/DRS 2.1 及更高版本。

规则组名称 说明
常规 常规组
KNOWN-CVES 帮助检测新的和已知的 CVE
REQUEST-911-METHOD-ENFORCEMENT 锁定方法(PUT、PATCH)
REQUEST-913-SCANNER-DETECTION 防范端口和环境扫描程序
REQUEST-920-PROTOCOL-ENFORCEMENT 防范协议和编码问题
REQUEST-921-PROTOCOL-ATTACK 防范标头注入、请求走私和响应拆分
REQUEST-930-APPLICATION-ATTACK-LFI 防范文件和路径攻击
REQUEST-931-APPLICATION-ATTACK-RFI 防范远程文件包含 (RFI) 攻击
REQUEST-932-APPLICATION-ATTACK-RCE 防范远程代码执行攻击
REQUEST-933-APPLICATION-ATTACK-PHP 防范 PHP 注入攻击
REQUEST-941-APPLICATION-ATTACK-XSS 防范跨站点脚本攻击
REQUEST-942-APPLICATION-ATTACK-SQLI 防范 SQL 注入攻击
REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION 防范会话固定攻击

OWASP CRS 2.2.9

CRS 2.2.9 包含下表中所示的 10 个规则组。 每个组包含多个可以禁用的规则。

注意

新的 WAF 策略不再支持 CRS 2.2.9。 建议升级到最新的 CRS 3.2/DRS 2.1 及更高版本。

规则组名称 说明
crs_20_protocol_violations 防范协议违规(例如无效字符,或使用请求正文执行 GET)
crs_21_protocol_anomalies 防范错误的标头信息
crs_23_request_limits 防范参数或文件超出限制
crs_30_http_policy 防范受限的方法、标头和文件类型
crs_35_bad_robots 防范 Web 爬网程序和扫描程序
crs_40_generic_attacks 防范常规攻击(例如会话固定、远程文件包含和 PHP 注入)
crs_41_sql_injection_attacks 防范 SQL 注入攻击
crs_41_xss_attacks 防范跨站点脚本攻击
crs_42_tight_security 防范路径遍历攻击
crs_45_trojans 防范后门特洛伊木马

Bot Manager 1.0

Bot Manager 1.0 规则集可防范恶意机器人并检测出善意机器人。 这些规则通过将机器人流量划分为“善意”、“恶意”或“未知”机器人,对 WAF 检测到的机器人进行精细控制。

规则组 说明
BadBots 防范恶意机器人
GoodBots 识别善意机器人
未知的机器人 标识未知机器人

Bot Manager 1.1

Bot Manager 1.1 规则集是 Bot Manager 1.0 规则集的增强版。 它增强了对恶意机器人的防范,并增加了善意机器人检测。

规则组 说明
BadBots 防范恶意机器人
GoodBots 识别善意机器人
UnknownBots 标识未知机器人

在应用程序网关上使用 Web 应用程序防火墙时可以使用以下规则组和规则。

2.1 规则集

常规

规则 ID 异常分数严重性 说明
200002 严重 - 5 无法解析请求正文
200003 严重 - 5 多部分请求正文无法通过严格的验证

METHOD ENFORCEMENT

规则 ID 异常分数严重性 说明
911100 严重 - 5 方法不被政策允许

协议执行

规则编号 异常评分的严重性 说明
920100 通知 - 2 无效的 HTTP 请求行
920120 严重 - 5 尝试了多部分/表单数据绕过
920121 严重 - 5 尝试了多部分/表单数据绕过
920160 严重 - 5 Content-Length HTTP 标头不是数值
920170 严重 - 5 包含正文内容的 GET 或 HEAD 请求
920171 严重 - 5 包含 Transfer-Encoding 的 GET 或 HEAD 请求
920180 通知 - 2 POST 请求缺少 Content-Length 标头
920181 警告 - 3 Content-Length 和 Transfer-Encoding 标头存在 99001003
920190 警告 - 3 范围:最后一个字节值无效
920200 警告 - 3 范围:字段太多(6 个或以上)
920201 警告 - 3 范围:pdf 请求的字段太多(35 个或以上)
920210 严重 - 5 找到了多个/有冲突的连接标头数据
920220 警告 - 3 URL 编码滥用攻击尝试
920230 警告 - 3 检测到多个 URL 编码
920240 警告 - 3 URL 编码滥用攻击尝试
920260 警告 - 3 Unicode 全角/半角滥用攻击企图
920270 错误 - 4 请求中的字符无效(null 字符)
920271 严重 - 5 请求中的字符无效(不可打印的字符)
920280 警告 - 3 请求缺少 Host 标头
920290 警告 - 3 Host 标头为空
920300 通知 - 2 请求缺少 Accept 标头
920310 通知 - 2 请求包含空的 Accept 标头
920311 通知 - 2 请求包含空的 Accept 标头
920320 通知 - 2 缺少用户代理标头
920330 通知 - 2 用户代理标头为空
920340 通知 - 2 请求中包含内容,但缺少 Content-Type 标头
920341 严重 - 5 请求包含内容,但需要 Content-Type 标头
920350 警告 - 3 Host 标头是数字 IP 地址
920420 严重 - 5 请求的内容类型被政策禁止
920430 严重 - 5 HTTP 协议版本不受策略允许
920440 严重 - 5 策略限制了 URL 文件扩展名
920450 严重 - 5 策略限制了 HTTP 标头
920470 严重 - 5 Content-Type 标头非法
920480 严重 - 5 请求内容类型字符集不受策略允许
920500 严重 - 5 尝试访问备份或正在工作的文件

PROTOCOL-ATTACK

规则 ID 异常分数严重性 说明
921110 严重 - 5 HTTP 请求走私攻击
921120 严重 - 5 HTTP 响应拆分攻击
921130 严重 - 5 HTTP 响应拆分攻击
921140 严重 - 5 通过标头展开的 HTTP 标头注入攻击
921150 严重 - 5 通过有效负载展开的 HTTP 标头注入攻击(检测到 CR/LF)
921151 严重 - 5 通过有效负载展开的 HTTP 标头注入攻击(检测到 CR/LF)
921160 严重 - 5 通过有效负载展开的 HTTP 标头注入攻击(检测到 CR/LF 和标头名称)
921190 严重 - 5 HTTP 拆分(检测到请求文件名中存在 CR/LF)
921200 严重 - 5 LDAP 注入攻击

LFI - 本地文件包含

规则 ID 异常分数严重性 说明
930100 严重 - 5 路径遍历攻击 (/../)
930110 严重 - 5 路径遍历攻击 (/../)
930120 严重 - 5 OS 文件访问尝试
930130 严重 - 5 受限文件访问尝试

RFI - 远程文件包含

规则 ID 异常分数严重性 说明
931100 严重 - 5 可能的远程文件包含 (RFI) 攻击:使用 IP 地址的 URL 参数
931110 严重 - 5 可能的远程文件包含 (RFI) 攻击:对 URL 有效负载使用常见 RFI 漏洞参数名
931120 严重 - 5 可能的远程文件包含 (RFI) 攻击:在 URL 有效负载中使用尾随问号 (?)
931130 严重 - 5 可能的远程文件包含 (RFI) 攻击:域外引用/链接

RCE - 远程命令执行

规则编号 异常分数严重性 说明
932100 严重 - 5 远程命令执行:Unix 命令注入
932105 严重 - 5 远程命令执行:Unix 命令注入
932110 严重 - 5 远程命令执行:Windows 命令注入
932115 严重 - 5 远程命令执行:Windows 命令注入
932120 严重 - 5 远程命令执行:找到 Windows PowerShell 命令
932130 严重 - 5 远程命令执行:找到 Unix Shell 表达式或 Confluence 漏洞 (CVE-2022-26134)
932140 严重 - 5 远程命令执行:找到 Windows FOR/IF 命令
932150 严重 - 5 远程命令执行:直接 Unix 命令执行
932160 严重 - 5 远程命令执行:找到 Unix Shell 代码
932170 严重 - 5 远程命令执行:Shellshock (CVE-2014-6271)
932171 严重 - 5 远程命令执行:Shellshock (CVE-2014-6271)
932180 严重 - 5 受限文件上传企图

PHP 攻击

规则 ID 异常分数严重性 说明
933100 严重 - 5 PHP 注入攻击:找到开始/结束标记
933110 严重 - 5 PHP 注入攻击:找到 PHP 脚本文件上传
933120 严重 - 5 PHP 注入攻击:找到配置指令
933130 严重 - 5 PHP 注入攻击:找到变量
933140 严重 - 5 PHP 注入攻击:找到 I/O 流
933150 严重 - 5 PHP 注入攻击:找到高风险的 PHP 函数名称
933151 严重 - 5 PHP 注入攻击:找到中等风险的 PHP 函数名称
933160 严重 - 5 PHP 注入攻击:找到高风险的 PHP 函数调用
933170 严重 - 5 PHP 注入攻击:序列化对象注入
933180 严重 - 5 PHP 注入攻击:找到可变函数调用
933200 严重 - 5 PHP 注入攻击:检测到包装器方案
933210 严重 - 5 PHP 注入攻击:找到可变函数调用

Node JS 攻击

规则编号 异常评分严重程度 说明
934100 严重 - 5 Node.js 注入攻击

XSS - 跨站脚本

规则编号 异常评分严重程度 说明
941100 严重 - 5 通过 libinjection 检测到 XSS 攻击
941101 严重 - 5 检测到通过 libinjection 展开的 XSS 攻击。
此规则检测带有 Referer 标头的请求
941110 严重 - 5 XSS 筛选器 - 类别 1:脚本标记向量
941120 严重 - 5 XSS 筛选器 - 类别 2:事件处理矢量
941130 严重 - 5 XSS 筛选器 - 类别 3:属性向量
941140 严重 - 5 XSS 筛选器 - 类别 4:Javascript URI 向量
941150 严重 - 5 XSS 筛选器 - 类别 5:不允许的 HTML 属性
941160 严重 - 5 NoScript XSS InjectionChecker:HTML 注入
941170 严重 - 5 NoScript XSS InjectionChecker:属性注入
941180 严重 - 5 节点验证器阻止列表关键字
941190 严重 - 5 使用样式表的 XSS
941200 严重 - 5 使用 VML 框架的 XSS
941210 严重 - 5 使用经过模糊处理的 Javascript 的 XSS
941220 严重 - 5 使用经过模糊处理的 VB Script 的 XSS
941230 严重 - 5 使用“embed”标记的 XSS
941240 严重 - 5 使用“import”或“implementation”属性的 XSS
941250 严重 - 5 IE XSS 筛选器 - 检测到攻击
941260 严重 - 5 使用“meta”标记的 XSS
941270 严重 - 5 使用“link”href 的 XSS
941280 严重 - 5 使用“base”标记的 XSS
941290 严重 - 5 使用“applet”标记的 XSS
941300 严重 - 5 使用“object”标记的 XSS
941310 严重 - 5 US-ASCII 格式错误编码 XSS 筛选器 - 检测到攻击
941320 严重 - 5 检测到可能的 XSS 攻击 - HTML 标记处理程序
941330 严重 - 5 IE XSS 筛选器 - 检测到攻击
941340 严重 - 5 IE XSS 筛选器 - 检测到攻击
941350 严重 - 5 UTF-7 编码 IE XSS - 检测到攻击
941360 严重 - 5 检测到 JavaScript 混淆
941370 严重 - 5 找到 JavaScript 全局变量
941380 严重 - 5 检测到 AngularJS 客户端模板注入

SQLI - SQL 注入

规则 ID 异常评分严重程度 说明
942100 严重 - 5 检测到通过 libinjection 展开的 SQL 注入攻击
942110 警告 - 3 SQL 注入攻击:检测到常用注入测试
942120 严重 - 5 SQL 注入攻击:检测到 SQL 运算符
942130 严重 - 5 SQL 注入攻击:检测到 SQL 同义反复
942140 严重 - 5 SQL 注入攻击:检测到常用 DB 名称
942150 严重 - 5 SQL 注入攻击
942160 严重 - 5 检测到使用 sleep() 或 benchmark() 的盲注 sqli 测试
942170 严重 - 5 检测到包含条件查询的 SQL 基准和休眠注入企图
942180 严重 - 5 检测到基本 SQL 身份验证绕过尝试 1/3
942190 严重 - 5 检测到 MSSQL 代码执行和信息收集尝试
942200 严重 - 5 检测到 MySQL 注释/空间经过模糊处理的注入和反引号终止
942210 严重 - 5 检测链式 SQL 注入尝试次数 1/2
942220 严重 - 5 查找整数溢出攻击,这些攻击来自 skipfish,但 3.0.00738585072007e-308 是“幻数”故障
942230 严重 - 5 检测条件式 SQL 注入企图
942240 严重 - 5 检测 MySQL 字符集切换和 MSSQL 拒绝服务攻击尝试
942250 严重 - 5 检测 MATCH AGAINST、MERGE 和 EXECUTE IMMEDIATE 注入
942260 严重 - 5 检测到基本 SQL 身份验证绕过尝试 2/3
942270 严重 - 5 正在查找基本 sql 注入。 mysql、oracle 和其他对象的常见攻击字符串
942280 严重 - 5 检测 Postgres pg_sleep 注入、waitfor 延迟攻击和数据库关闭尝试
942290 严重 - 5 查找基本 MongoDB SQL 注入企图
942300 严重 - 5 检测到 MySQL 注释、条件和 ch(a)r 注入
942310 严重 - 5 检测链式 SQL 注入尝试次数 2/2
942320 严重 - 5 检测 MySQL 和 PostgreSQL 存储过程/函数注入
942330 严重 - 5 检测到经典 SQL 注入探测 1/2
942340 严重 - 5 检测到基本 SQL 身份验证绕过尝试 3/3
942350 严重 - 5 检测 MySQL UDF 注入和其他数据/结构操作企图
942360 严重 - 5 检测到连接的基本 SQL 注入和 SQLLFI 尝试
942361 严重 - 5 检测基于关键字 alter 或 union 的基本 SQL 注入
942370 严重 - 5 检测到经典 SQL 注入探测 2/2
942380 严重 - 5 SQL 注入攻击
942390 严重 - 5 SQL 注入攻击
942400 严重 - 5 SQL 注入攻击
942410 严重 - 5 SQL 注入攻击
942430 警告 - 3 受限 SQL 字符异常情况检测 (args):已超出特殊字符数 (12)
942440 严重 - 5 检测到 SQL 注释序列
942450 严重 - 5 识别到 SQL 十六进制编码
942460 警告 - 3 元字符异常检测警报 - 重复的非单词字符
942470 严重 - 5 SQL 注入攻击
942480 严重 - 5 SQL 注入攻击
942500 严重 - 5 检测到 MySQL 内联注释
942510 严重 - 5 检测到引号或反引号尝试 SQLi 绕过

SESSION-FIXATION

规则 ID 异常分数严重性 说明
943100 严重 - 5 可能的会话固定攻击:在 HTML 中设置 Cookie 值
943110 严重 - 5 可能的会话固定攻击:包含域外引用方的 SessionID 参数名称
943120 严重 - 5 可能的会话固定攻击:不包含引用方的 SessionID 参数名称

Java 攻击

规则 ID 异常评分的严重程度 说明
944100 严重 - 5 远程命令执行:Apache Struts、Oracle WebLogic
944110 严重 - 5 检测潜在的有效负载执行
944120 严重 - 5 可能的有效负载执行和远程命令执行
944130 严重 - 5 可疑的 Java 类
944200 严重 - 5 利用 Java 反序列化 Apache Commons
944210 严重 - 5 可能使用 Java 序列化
944240 严重 - 5 远程命令执行:Java 序列化和 Log4j 漏洞(CVE-2021-44228CVE-2021-45046
944250 严重 - 5 远程命令执行:检测到可疑的 Java 方法

MS-ThreatIntel-WebShells

规则 ID 异常分数严重性 说明
99005002 严重 - 5 Web Shell 交互尝试 (POST)
99005003 严重 - 5 Web Shell 上传尝试 (POST) - CHOPPER PHP
99005004 严重 - 5 Web Shell 上传尝试 (POST) - CHOPPER ASPX
99005005 严重 - 5 Web Shell 交互尝试
99005006 严重 - 5 Spring4Shell 交互尝试

MS-ThreatIntel-AppSec

规则编号 异常评分严重程度 说明
99030001 严重 - 5 标头中的路径遍历规避 (/.././../)
99030002 严重 - 5 请求正文中的路径遍历规避 (/.././../)

MS-ThreatIntel-SQLI

规则 ID 异常评分严重程度 说明
99031001 警告 - 3 SQL 注入攻击:检测到常用注入测试
99031002 严重 - 5 检测到 SQL 注释序列
99031003 严重 - 5 SQL 注入攻击
99031004 严重 - 5 检测到基本 SQL 身份验证绕过尝试 2/3

MS-ThreatIntel-CVEs

规则 ID 异常评分的严重性 说明
99001001 严重 - 5 使用已知凭据尝试利用 F5 tmui (CVE-2020-5902) REST API
99001002 严重 - 5 试图遍历 Citrix NSC_USER 目录 CVE-2019-19781
99001003 严重 - 5 尝试利用 Atlassian Confluence 小组件连接器 CVE-2019-3396
99001004 严重 - 5 尝试利用 Pulse Secure 自定义模板 CVE-2020-8243
99001005 严重 - 5 尝试利用 SharePoint 类型转换器 CVE-2020-0932
99001006 严重 - 5 试图遍历 Pulse Connect 目录 CVE-2019-11510
99001007 严重 - 5 尝试包含 Junos OS J-Web 本地文件 CVE-2020-1631
99001008 严重 - 5 试图遍历 Fortinet 路径 CVE-2018-13379
99001009 严重 - 5 尝试注入 Apache struts ognl CVE-2017-5638
99001010 严重 - 5 尝试注入 Apache struts ognl CVE-2017-12611
99001011 严重 - 5 试图遍历 Oracle WebLogic 路径 CVE-2020-14882
99001012 严重 - 5 尝试利用 Telerik WebUI 不安全反序列化 CVE-2019-18935
99001013 严重 - 5 尝试 SharePoint 不安全 XML 反序列化 CVE-2019-0604
99001014 严重 - 5 尝试使用 Spring Cloud 路由表达式注入 CVE-2022-22963
99001015 严重 - 5 尝试利用 Spring Framework 不安全类对象 CVE-2022-22965
99001016 严重 - 5 尝试 Spring Cloud Gateway 执行器注入 CVE-2022-22947
99001017* N/A 尝试通过 Apache Struts 的文件上传漏洞进行攻击 CVE-2023-50164

*默认情况下,此规则的操作设置为记录。将操作设置为“阻止”可防止 Apache Struts 漏洞。此规则不支持异常分数。

注意

查看 WAF 的日志时,可能会看到规则 ID 949110。 该规则的描述可能包含“入站异常分数超出”。

此规则指示请求的总异常分数超出了允许的最大分数。 有关详细信息,请参阅异常评分