目标达成 感谢每一位支持者 — 我们达成了 100% 目标!

目标: 1000 元 · 已筹: 1359 元

100%

CVE-2026-77299— Regexp2 远程拒绝服务漏洞

一分钟漏洞结论

影响对象
dlclark regexp2
利用判断
尚无明确在野利用证据,仍需结合暴露面评估
建议动作
优先检查厂商安全公告和参考链接中的修复版本;无法立即升级时,限制受影响服务暴露并加强监测。

Regexp2 是一个功能丰富的 Go 语言正则表达式引擎。在 2.3.0 版本之前,当 regexp2 编译并匹配包含“应用于零宽子表达式的大固定重复量词”的模式(例如 )时,匹配引擎会执行空循环体 m-1 次,并在每次迭代中将两个整数压入回溯栈。由于解析器接受高达 math.MaxInt32 的任意重复次数,且回溯栈会无限制增长,因此即使是一个不足 20 字节的模式在匹配空输入时,也可能触发数 GB 的内存分配,导致进程因内存不足(OOM)而被终止。MatchTimeout 无法完全缓解此问题,因为内存分配速度

CVSS 7.5 · High
获取后续新漏洞提醒 登录后订阅

一、 漏洞 CVE-2026-77299 基础信息

漏洞信息

对漏洞内容有疑问?看看神龙的深度分析是否有帮助!
查看神龙十问 ↗

尽管我们使用了先进的大模型技术,但其输出仍可能包含不准确或过时的信息。神龙努力确保数据的准确性,但请您根据实际情况进行核实和判断。

Vulnerability Title
Regexp2: Unbounded memory amplification via large `{m}` quantifier on a zero-width subexpression
来源: CVE Program / CVE List V5
Vulnerability Description
Regexp2 is a feature-rich RegExp engine for Go. Prior to version 2.3.0, when regexp2 compiles and matches a pattern containing a large fixed-count quantifier applied to a zero-width subexpression — e.g. (?:){50000000} — the match engine executes the empty loop body m-1 times, pushing two integers onto the backtracking stack on every iteration. Because the parser accepts any repetition count up to math.MaxInt32 and the backtracking stack grows without bound, a pattern of fewer than 20 bytes matched against an empty input can force multi-gigabyte allocation and OOM-kill the process. MatchTimeout does not fully mitigate this because the memory is allocated faster than the 100 ms timeout clock can fire. This issue has been patched in version 2.3.0.
来源: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
来源: CVE Program / CVE List V5
Vulnerability Type
未加控制的资源消耗(资源穷尽)
来源: CVE Program / CVE List V5

受影响产品

厂商 产品 影响版本 CPE 订阅
dlclark regexp2 < 2.3.0 -

二、漏洞 CVE-2026-77299 的公开POC

# POC 描述 源链接 神龙链接
AI 生成 POC 高级

未找到公开 POC。

登录以生成 AI POC

三、漏洞 CVE-2026-77299 的情报信息

请登录查看更多情报信息。

CVE-2026-77299 其他参考 (3)

IV. Related Vulnerabilities