Skip to main content

Ring EUVDEUVD-2026-114461

| CVE-2026-62864 HIGH
Inefficient Regular Expression Complexity (ReDoS) (CWE-1333)
2026-10-30 GitHub_M
7.5
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Send HTTP request with crafted parameter name
  2. Exploit
    Hit backtracking regex in wrap-nested-params
  3. Execution
    Drive quadratic O(n^2) matching work
  4. Impact
    Exhaust CPU and deny service

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V2 - Validation and Business Logic Regex complexity limits
MITRE ATT&CK

1 technique across 1 tactic: Impact

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires the application to route requests through the wrap-nested-params middleware in the ring.middleware.nested-params namespace; this parsing path is enabled by default for Ring-Defaults users, so those deployments are exposed out of the box. Applications that do not include nested-params do not expose this path and are not affected - this is the primary limiting factor. No authentication is required (PR:N) and no user interaction is needed (UI:N); the attacker simply supplies a malicious parameter name (e.g., a long sequence of '[' characters) in the query string or request body. Realistic impact is further bounded by any request-size or parameter-length limits the deployment enforces, since the cost is quadratic in the attacker-controlled input length rather than exponential.

Impact

The NVD CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H, base 7.5) is internally consistent for a remotely reachable, unauthenticated, availability-only ReDoS, and matches the CWE-1333 classification and the GHSA advisory. However, the practical risk is more moderate than the 7.5 suggests for three reasons. First, the vuln.today decision label is 'this_week', not act_now/emergency, indicating a plan-and-patch priority rather than drop-everything urgency. Second, no CISA KEV listing is present, so exploitation status is 'no public exploit identified at time of analysis' (the fix commit ships a regression test that publicly discloses the triggering input pattern, but that is a test, not packaged exploit code). Third, the flaw is quadratic O(n^2), not exponential catastrophic backtracking, so per-request CPU cost scales with attacker-supplied input size and is bounded by any request/parameter size limits the deployment enforces. EPSS is not provided in the input, so probabilistic exploitation likelihood cannot be weighed here; its absence should not be read as low risk. No SSVC fields were supplied. The one conflicting signal worth flagging: the vector asserts AV:N/PR:N (broadly exploitable) but real exposure is gated on the nested-params middleware actually being in the request path - true by default for Ring-Defaults users, false for apps that omit it. Net: a legitimate availability issue worth patching this week, not a critical RCE-class emergency.

Exploit ScenarioDerived

An unauthenticated attacker sends a single HTTP request to a Ring-based web application whose parameter name (in the URL query string or form/body) is a long crafted string such as a large run of '[' characters. The wrap-nested-params middleware feeds that name into a backtracking regular expression that degrades to O(n^2), consuming disproportionate CPU per request and, with repeated or sufficiently large requests, degrading or denying service. No authentication or user interaction is required; the fix commit publishes a regression test demonstrating the triggering input, though no packaged weaponized exploit is cited in the input.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 30, 2026

Regular-expression denial of service in Ring's nested-params middleware lets unauthenticated remote attackers stall request handling by supplying a crafted parameter name in the query string or request body. Ring 1.15.4 and below are affected, and Ring-Defaults deployments are exposed out of the box because the nested-params middleware is enabled by default; applications that do not install the middleware never reach the vulnerable parsing path. The base 7.5 CVSS vector (AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H) reflects availability-only impact, and no public exploit has been identified at time of analysis.

RemediationAI

Vendor-released patch: upgrade to Ring 1.15.5 (https://github.com/ring-clojure/ring/tree/1.15.5), which replaces the quadratic regular expressions with bracket-excluding patterns that parse in linear time; the advisory notes Ring is backward compatible back to 1.0.0, so the upgrade is expected to drop into existing projects without code changes. Ring-Defaults users must upgrade the underlying ring-core dependency, since the middleware ships enabled by default. The only workaround the vendor documents is to omit the nested-params middleware in unpatched versions if the application does not rely on nested parameter parsing - a change with real side effects, because any endpoint expecting map-style parameters such as user[name] would silently receive flat keys instead. Because the cost is quadratic in attacker-controlled input length, deployment-level request-size and parameter-length limits reduce the practical amplification but do not remove the vulnerable path; the advisory's recommended solution is to upgrade.

Affected VersionsENISA

ring < 1.15.5

Affected Packages

euvd ring fix: 1.15.5

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Ring is a Clojure HTTP library modelled on Python's WSGI and Ruby's Rack, and ring.middleware.nested-params converts flat parameter names such as user[name] into nested maps. Before 1.15.5, parse-nested-keys matched the parameter name with the backtracking pattern (?s)(.*?)((?:\[.*?\])*) and then re-scanned the bracket section with \[(.*?)\], so a name containing many unmatched or interleaved brackets forces the engine to explore a quadratic number of backtracking positions - the CWE-1333 inefficient-regular-expression-complexity class. Because both the outer lazy group and the repeated inner bracket group can consume overlapping text, matching cost grows O(n^2) with attacker-controlled input length rather than linearly. The upstream fix (commit 18738cbb8ab7504da4a5c72c9eb5fdcbf142646e) rewrites the expressions to exclude the bracket characters themselves, using ([^\[\]]*)(\[.*\])? for the split and \[([^\[\]]*)\] for the key scan, and adds a regression test that parses 200,000 opening brackets and a 100,000-pair name well within a five-second deadline. CPE data identifies cpe:2.3:a:ring-clojure:ring across all versions prior to the fix; the accompanying tag metadata lists 'Python', but the affected artifact is the Clojure ring-core library distributed via Clojars.

Know when Ring gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 7.5 HIGH
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
vuln.today AI 7.5 HIGH

Remote unauthenticated request reaches a default-enabled middleware (AV:N/PR:N/UI:N); only availability is affected via CPU-exhausting quadratic regex (C:N/I:N/A:H).

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High

Lifecycle Timeline

2
Patch available
Oct 30, 2026 - 22:03 EUVD
CVE Published
Oct 30, 2026 - 20:34 cve.org
HIGH 7.5

DescriptionCVE.org

Ring is a Clojure web applications library inspired by Python's WSGI and Ruby's Rack. Prior to 1.15.5, wrap-nested-params in the ring.middleware.nested-params namespace uses a backtracking regular expression to match parameter names from URL query strings and HTTP request bodies. An attacker can craft a parameter name that drives quadratic O(n^2) matching work, causing regular-expression denial of service in applications using the middleware. Ring-Defaults users are also exposed because nested-params is enabled by default. Applications omitting the middleware do not expose this parsing path. This issue is fixed in version 1.15.5.

Technical POC Analysis

CWE-1333, Inefficient Regular Expression Complexity (ReDoS) in ring/ring-core (Clojars), namespace ring.middleware.nested-params, function wrap-nested-params.

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

A high-severity denial-of-service vulnerability in Ring's nested-params middleware (CVE-2026-62864) affects versions 1.15.4 and below, including the default configuration many applications rely on. Unauthenticated attackers can stall request handling, potentially causing service outages. Leadership should prioritize remediation because any internet-facing Ring application using the middleware is at risk of availability disruption.

Business Impact: High
Compensating Controls

Disable the nested-params middleware if not required; implement rate limiting and WAF rules to block malicious parameter patterns; monitor request handling for signs of resource exhaustion.

Threat Intelligence Overview

EPSS Score
0.3%
Top 73% exploitable
Prevalence
Low
De facto standard Clojure web library, but Clojure is a niche ecosystem
Data Quality
6 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
Yes
Human Impact
High
Technical Impact
Partial

Priority Score

38
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +38
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy