CVE-2026-35611

EUVD-2026-19788
Addressable is an alternative implementation to the URI implementation that is part of Ruby's standard library. From 2.3.0 to before 2.9.0, within the URI template implementation in Addressable, two classes of URI template generate regular expressions vulnerable to catastrophic backtracking. Templates using the * (explode) modifier with any expansion operator (e.g., {foo*}, {+var*}, {#var*}, {/var*}, {.var*}, {;var*}, {?var*}, {&var*}) generate patterns with nested unbounded quantifiers that are O(2^n) when matched against a maliciously crafted URI. Templates using multiple variables with the + or # operators (e.g., {+v1,v2,v3}) generate patterns with O(n^k) complexity due to the comma separator being within the matched character class, causing ambiguous backtracking across k variables. When matched against a maliciously crafted URI, this can result in catastrophic backtracking and uncontrolled resource consumption, leading to denial of service. This vulnerability is fixed in 2.9.0.
ProviderTypeBase ScoreAtk. VectorAtk. ComplexityPriv. RequiredVector
NISTPrimary
7.5 HIGH
NETWORK
LOW
NONE
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Base Score
CVSS 3.x
EPSS Score
Percentile: 29.27%
Affected Products (NVD)
VendorProductVersion
addressable_projectaddressable
2.3.0 ≤
𝑥
< 2.9.0
𝑥
= Vulnerable software versions
Debian logo
Debian Releases
Debian Product
Codename
ruby-addressable
bookworm
no-dsa
bullseye
postponed
forky
2.9.0-1
fixed
sid
2.9.0-1
fixed
trixie
no-dsa
Ubuntu logo
Ubuntu Releases
Ubuntu Product
Codename
ruby-addressable
bionic
Fixed 2.5.2-1ubuntu0.1~esm1
released
focal
Fixed 2.7.0-1ubuntu0.1~esm1
released
jammy
Fixed 2.8.0-3ubuntu0.1~esm1
released
noble
Fixed 2.8.5-1ubuntu0.1~esm1
released
questing
ignored
resolute
Fixed 2.8.7-2ubuntu0.26.04.1~esm1
released
xenial
Fixed 2.3.8-1ubuntu0.1~esm1
released
Azure Linux logo
Azure Linux Releases
Azure Package
Release
rubygem-addressable
Azure Linux 3.0
0:2.9.0-1.azl3
fixed