Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessIdentify Jetty app with multi-pattern servlet
-
ExploitRequest url-pattern missing security-constraint
-
ExecutionBypass authorization enforcement
-
ImpactAccess protected resource data
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization logic validation
MITRE ATT&CK
1 technique across 1 tactic: Privilege Escalation The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires a target application deployed on an affected Jetty version where: (1) a servlet is mapped to more than one url-pattern in web.xml, (2) a web.xml security-constraint applies to only some of those url-patterns, and (3) @ServletSecurity annotations are mixed with the web.xml-defined constraints. Under these conditions the Jakarta spec authoritative url-pattern rules are not applied, leaving certain patterns unprotected. The attacker side needs only remote, unauthenticated HTTP access (AV:N/PR:N/UI:N), but the vulnerability does NOT exist against default or single-pattern configurations - it is strictly gated by this specific application-level web.xml/annotation layout, which materially limits the exposed population. |
| Impact | This is a security-constraint/authorization bypass in Eclipse Jetty's annotation processing (jetty-annotations and jetty-eeN-annotations), flagged as Information Disclosure. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:L/VA:N) rates it 8.8, indicating a remote, low-complexity, unauthenticated attack with high confidentiality impact and low integrity impact - consistent with an attacker reaching resources that should have been protected by a security-constraint. The real-world risk is tempered by a specific non-default prerequisite: the Jakarta spec url-pattern merge rules are only mishandled when a servlet has more than one url-pattern in web.xml AND a security-constraint covers only some of those patterns alongside @ServletSecurity annotations. No EPSS score, CISA KEV listing, or public POC was provided in the input, so there is no evidence of active exploitation; the SSVC framework cannot be fully evaluated because exploitation/automatable signals are absent. The headline PR:N (unauthenticated) rating reflects the attacker's position, but exploitability depends entirely on the victim application's web.xml configuration, so this is a genuine-but-conditional priority rather than a universally exploitable flaw - patch promptly on apps using mixed annotation/web.xml security constraints, but mass-scanning risk is lower than the raw score implies. |
| Exploit ScenarioDerived | An attacker remotely requests a URL served by a Jetty-hosted application where a servlet is mapped to multiple url-patterns but a web.xml security-constraint only protects a subset of them, combined with @ServletSecurity annotations. Because the url-pattern merge rules are not applied, the attacker reaches the servlet via an unprotected pattern that should have been authorization-gated, retrieving protected content without credentials. No public exploit code was identified at time of analysis, and exploitation requires the specific multi-pattern/partial-constraint configuration to be present. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 15, 2026
Security-constraint bypass in Eclipse Jetty leaves some request URL patterns unprotected when annotation and deployment-descriptor security metadata are mixed, specifically in the jetty-annotations and jetty-eeN-annotations modules. The flaw triggers only in a narrow application layout: a servlet declared in web.xml with more than one url-pattern, a web.xml security-constraint that covers only a subset of those patterns, and @ServletSecurity annotations present at the same time, in which case the Jakarta Servlet specification's authoritative url-pattern precedence rules are not applied and the uncovered patterns remain reachable. Because the resulting access is reachable over the network with no credentials (CVSS 4.0 AV:N/PR:N/UI:N, independently assessed as CVSS 3.1 AV:N/AC:L/PR:N/UI:N), an unauthenticated remote attacker can read content that should have been restricted, yielding a high confidentiality impact with a low integrity impact and no availability impact; exploitation is strictly gated by the application-level web.xml/annotation layout rather than by the Jetty version alone, and no public exploit identified at time of analysis.
RemediationAI
An exact fixed version is not specified in the data available at time of analysis, so the primary action is to consult the Jetty project security advisory GHSA-v6xf-996f-c35f and the Eclipse CVE assignment record for the corrected Jetty releases and upgrade the full Jetty distribution (the fix ships in the jetty-annotations / jetty-eeN-annotations artifacts, which are pulled in transitively, so upgrading only an inner module without the matching server version can reintroduce the issue). Because the defect is configuration-gated, the most reliable compensating control is to remove the triggering layout from your application: do not rely on a web.xml security-constraint that covers only a subset of a multi-pattern servlet mapping, and do not mix @ServletSecurity annotations with web.xml constraints on the same url-pattern; either express the constraints entirely in web.xml with an explicit constraint for every pattern the servlet is mapped to, or move them entirely into annotations. If mappings cannot be consolidated, add explicit security-constraints covering each additional url-pattern (the trade-off is duplicated, harder-to-maintain descriptor entries that drift over time), or reduce the servlet to a single url-pattern and route the other paths through it (the trade-off is a change in application URL structure and possible breakage of cached or bookmarked links). As a stopgap where the application cannot be changed or upgraded immediately, front the affected contexts with a reverse proxy or servlet filter that enforces authorization on the previously unprotected patterns, accepting that this duplicates enforcement logic outside the container and must be kept in sync with the intended policy; verify the fix by exercising each url-pattern after the change, since a silent bypass leaves no error in the logs.
Affected VersionsENISA
Affected Packages
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
The vulnerability lives in Jetty's annotation-scanning layer, shipped as the jetty-annotations module and its Jakarta-EE-namespace-specific variants (jetty-eeN-annotations), which reconcile three sources of servlet security metadata at deployment time: the Jakarta Servlet specification's url-pattern matching and precedence rules, the web.xml deployment descriptor, and class-level @ServletSecurity annotations. In a correct implementation, the container must apply the specification's authoritative url-pattern rules when a given pattern is described by both a web.xml security-constraint and an @ServletSecurity annotation, so that neither source silently suppresses the other. Here, when web.xml maps a single servlet to multiple url-patterns and defines a security-constraint that applies to only some of them, the annotation-processing code fails to apply those authoritative rules to the remaining patterns, so constraints that the application author did believe were in force are effectively dropped for the unprotected patterns. No CWE was assigned in the source data, but the defect class is best described as incorrect authorization / improper restriction of access enforced through misapplied security configuration (CWE-863 / CWE-284 family) rather than a memory-safety or injection issue. The supplied CPE data lists five wildcard-version entries under cpe:2.3:a:eclipse_foundation:eclipse_jetty, indicating the issue spans multiple Jetty product streams and Jakarta EE namespace levels; the exact version boundaries are not enumerated in the input and must be taken from the vendor advisory.
Know when Eclipse Jetty 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
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N
Unauthenticated remote request reaches a resource that should have been constraint-protected (PR:N, AV:N, AC:L), yielding high confidentiality and low integrity impact with no availability effect.
Primary rating from Vendor (eclipse).
CVSS VectorVendor: eclipse
DescriptionCVE.org
In Eclipse Jetty, across various versions of jetty-annotations, and jetty-eeN-annotations, the Jakarta Spec authoritative url-pattern rules for mixed @ServletSecurity annotation, and web.xml defined security-constraint on the same url-pattern were not being applied if the web.xml had more than 1 url-pattern for a servlet, and had a security-constraint applying to only some of those url-pattern definitions.
Technical POC Analysis
CWE-863 (Incorrect Authorization).
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Executive ViewAI
Eclipse Jetty, a widely embedded Java web server and servlet container used across many enterprise applications and appliances, contains a security-constraint bypass (CVE-2026-18661, CVSS 8.8) that can expose protected URLs to unauthenticated remote users. The flaw only surfaces in applications that combine web.xml servlet declarations with multiple URL patterns, partial web.xml security-constraints, and @ServletSecurity annotations, so exposure is limited to teams running that specific configuration rather than all Jetty deployments. Because the weakness silently grants read access to content that policy intended to restrict, any organization using Jetty's annotation and descriptor-based security metadata should treat this as an urgent configuration and exposure review item.
No vendor-released patch identified at time of analysis. Interim mitigations: enforce authentication and authorization for the affected URL patterns at an upstream reverse proxy, API gateway, or WAF; remove or consolidate the partially-covered url-patterns so that web.xml security-constraints and @ServletSecurity annotations no longer overlap inconsistently; and verify anonymous reachability of every declared url-pattern, restricting or disabling exposed endpoints until remediation.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
More in Eclipse Jetty
View allHTTP request smuggling in Eclipse Jetty's HTTP/1.1 parser lets remote unauthenticated attackers desynchronize front-end/
Unauthenticated remote denial-of-service in Eclipse Jetty's WebSocket implementation allows any network-accessible clien
HTTP/2 thread-exhaustion denial-of-service in Eclipse Jetty allows unauthenticated remote clients to permanently block a
HTTP/1.1 request smuggling in Eclipse Jetty allows unauthenticated remote attackers to desynchronize request boundary pa
Eclipse Jetty's HttpClient can disclose proxy authentication credentials to a malicious server when the server returns a
Path-normalization weakness in Eclipse Jetty's HttpClient causes credential disclosure: when HttpClient receives a redir
Privilege escalation in Eclipse Jetty 9.4.0-12.1.7 allows unauthenticated remote attackers to bypass authentication via
Query-parameter injection in Eclipse Jetty's TryPathsHandler and TryFilesFilter allows unauthenticated remote attackers
HTTP/1.1 trailer leakage in Eclipse Jetty allows a remote unauthenticated attacker to read trailer headers from a previo
Eclipse Jetty fails to enforce RFC 9110/9112's requirement that the HTTP request authority (host and port) match the val
Eclipse Jetty mishandles HTTP URI path parameters containing semicolons combined with traversal sequences, delivering an
EUVD-2026-101954
GHSA-gvw6-wq7h-rwp3
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB