cve.bz

CVE-2026-126352

Addressable: Regular Expression Denial of Service in Addressable templates with multiple variables

5.9 mediumFix available

Medium (5.9) in sporkmonger addressable. Fixed in addressable 2.9.1.

On this page
Addressable is an alternative implementation to the URI implementation that is part of Ruby's standard library. From 2.3.0 until 2.9.1, URI templates with several variables in one expression or several adjacent expressions generate ambiguous regular expressions. Affected forms include multi-variable expressions using operators other than plus and number sign, large plus or number-sign expressions, and adjacent single-variable expressions. Template#match or Template#extract can backtrack polynomially or exponentially on attacker-controlled URIs, causing denial of service on MRI Ruby before 3.2 and JRuby, with the large plus and number-sign form also affecting MRI Ruby 3.2 and TruffleRuby 40.0. URI parsing and Template#expand are unaffected. This issue is fixed in version 2.9.1.

Severity

CVSS 3.1

5.9 medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
CWE
CWE-1333 Inefficient Regular Expression Complexity
Published
Assigned by
GitHub_M (CNA)
NVD analysis
Awaiting analysis
Record from
the NVD, synced

Ask an AI about this CVE

Show the promptExplain CVE-2026-126352 for an engineer deciding whether to act. Use https://cve.bz/api/public/cves/CVE-2026-126352?via=ask-ai-copy and https://cve.bz/cve/CVE-2026-126352?via=ask-ai-copy as the source of truth: what is affected and which versions fix it, whether it is in CISA KEV, public exploits, and its EPSS (an internet-wide 30-day estimate of exploitation activity, not a forecast for my systems). If they give no fixed versions, use the CVE record https://cveawg.mitre.org/api/cve/CVE-2026-126352 or the vendor advisory, not third-party mirrors. Tell me how to check whether I am affected and how to verify a fix. Cite the sources and say where they are uncertain.

Opens a third-party assistant; its answer is its own, not cve.bz's. The prompt holds only this CVE's id and public links.

Badge for a README or a site

CVE-2026-126352

An image that stays current: it is drawn from the data each time it is fetched (a host that proxies images, as GitHub does, may show its copy for a while). Markdown:

[![CVE-2026-126352](https://cve.bz/cve/badge/CVE-2026-126352.svg)](https://cve.bz/cve/CVE-2026-126352)

HTML:

<a href="https://cve.bz/cve/CVE-2026-126352"><img src="https://cve.bz/cve/badge/CVE-2026-126352.svg" alt="CVE-2026-126352"></a>

Affected

Versions

From the CNA's record in the CVE List.

ProductAffected
sporkmonger addressable>= 2.3.0, < 2.9.1

Packages (OSV)

AdvisoryEcosystemPackageAffectedFixed in
GHSA-9f42-57jx-vpp3RubyGemsaddressable>=2.3.0 <2.9.12.9.1

Attack patterns (CAPEC)

  • CAPEC-492 Regular Expression Exponential Blowup

The attack patterns MITRE's CAPEC relates to this record's weaknesses, as MITRE names them. Credits.

References

Check your stackJSON