CVE-2026-126351
Received Received - Intake

Denial of Service in Addressable Ruby URI Library

Vulnerability report for CVE-2026-126351, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-11-12

Last updated on: 2026-11-12

Assigner: GitHub, Inc.

Description

Addressable is an alternative implementation to the URI implementation that is part of Ruby's standard library. Prior to 2.9.1, Addressable::URI.normalize_path repeatedly scans and rewrites paths while removing only one nested dot segment per pass, producing quadratic work. URI#normalize, URI#normalized_path, URI#join, URI#==, and URI#=== inherit the behavior, so processing a sufficiently long attacker-controlled URI can consume a worker thread and cause denial of service on every Ruby implementation. URI.parse alone and code that never normalizes, compares, or joins untrusted URIs are unaffected. This issue is fixed in version 2.9.1.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-11-12
Last Modified
2026-11-12
Generated
2026-11-13
AI Q&A
2026-11-13
EPSS Evaluated
N/A
NVD

Affected Vendors & Products

Currently, no data is known.

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-407 An algorithm in a product has an inefficient worst-case computational complexity that may be detrimental to system performance and can be triggered by an attacker, typically using crafted manipulations that ensure that the worst case is being reached.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

This vulnerability is in the Addressable gem for Ruby, affecting versions before 2.9.1. It involves a flaw in the URI normalization process where paths with nested dot segments (like ../) are repeatedly scanned and rewritten, causing quadratic time complexity. This leads to excessive CPU usage and potential denial of service when processing long attacker-controlled URIs.

Detection Guidance

This vulnerability can be detected by checking the version of the Addressable gem in use. Run 'gem list addressable' in your Ruby environment. If the version is below 2.9.1, the system is vulnerable.

Impact Analysis

If you use the Addressable gem in a Ruby application and process untrusted URIs, an attacker could send a specially crafted long URI to consume excessive CPU resources. This may cause the application to slow down or crash, leading to a denial of service. Applications that do not normalize, compare, or join URIs are unaffected.

Mitigation Strategies

Upgrade the Addressable gem to version 2.9.1 or later using 'gem install addressable -v 2.9.1'. Review applications using the gem to ensure they are updated. Monitor for unusual CPU usage from URI parsing operations.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-126351. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart

Security Radar

News mentioning this vulnerability
Loading related security news...