CVE-2022-3517 是 minimatch 包中发现的一个安全漏洞,属于正则表达式拒绝服务 (ReDoS) 漏洞。攻击者可以利用 braceExpand 函数的特定参数,构造恶意的正则表达式,导致服务资源耗尽,从而造成拒绝服务 (DoS) 攻击。该漏洞影响 minimatch 3.0.5 之前的版本。此问题已在 minimatch 3.0.5 版本中得到修复。
在 minimatch 包中发现了一个漏洞,具体位于 braceExpand 函数内部。CVE-2022-3517 描述了一种可以通过向此函数提供特定参数来利用的正则表达式拒绝服务 (ReDoS) 漏洞。攻击者可以发送精心设计的恶意输入,导致该函数消耗过多的系统资源(CPU、内存),从而可能导致应用程序不稳定或完全崩溃。此漏洞的严重程度评分为 CVSS 7.5 分,表明存在重大风险。为了减轻此风险,务必将 minimatch 更新到 3.0.5 或更高版本。此漏洞影响使用 minimatch 进行文件模式匹配的项目,例如构建工具、内容管理系统和其他依赖于文件模式扩展的应用程序。
通过向 minimatch 的 braceExpand 函数发送精心设计的输入字符串来利用此漏洞。此字符串旨在触发底层正则表达式中的过度回溯行为,从而导致系统资源过度消耗。攻击者无需特殊权限即可利用此漏洞,因为他们可以通过用户界面或 API 发送恶意输入。正则表达式的复杂性使得在没有特定修复程序的情况下难以检测和防止此漏洞。如果应用程序无法充分验证在 braceExpand 函数中使用的用户输入,则存在漏洞的可能性很高。利用可能是静默的,因为攻击可能不会立即生成可见错误,而只是随着时间的推移降低系统性能。
漏洞利用状态
EPSS
0.45% (64% 百分位)
CVSS 向量
针对 CVE-2022-3517 的主要缓解措施是将 minimatch 库更新到 3.0.5 或更高版本。此版本包含防止 ReDoS 攻击的修复程序。如果无法立即更新,请检查使用 braceExpand 的代码,以识别潜在的恶意数据输入点。可以实现输入验证,以限制传递给函数的模式的复杂性。此外,监控使用 minimatch 的应用程序中的系统资源(CPU、内存)使用情况可以帮助检测正在进行的 ReDoS 攻击。实施 Web 应用程序防火墙 (WAF) 可以提供额外的保护层,通过过滤潜在的恶意输入模式来实现。更新是最有效和推荐的解决方案。
Actualice el paquete minimatch a la versión 2.5.4 o superior para mitigar el riesgo de denegación de servicio por ReDoS. Puede hacerlo utilizando npm o yarn: `npm install minimatch@latest` o `yarn add minimatch@latest`.
漏洞分析和关键警报直接发送到您的邮箱。
ReDoS (Regular Expression Denial of Service) 是一种拒绝服务攻击,它利用正则表达式的复杂性来消耗过多的系统资源。
不一定。它会影响使用 braceExpand 函数并且没有充分验证用户输入的应用程序。
检查使用 braceExpand 的代码,并考虑实施输入验证以限制模式的复杂性。
监控使用 minimatch 的应用程序中的系统资源(CPU、内存)使用情况。资源使用率的突然和持续增加可能表明存在攻击。
有一些静态和动态分析工具可以帮助识别复杂且潜在的脆弱正则表达式模式。