Every CVE Search/ Get API key

CVE-2021-28164

Authorization Before Parsing and Canonicalization in jetty

5.3 MediumPublic exploitFix available

In Eclipse Jetty 9.4.37.v20210219 to 9.4.38.v20210224, the default compliance mode allows requests with URIs that contain %2e or %2e%2e segments to access protected resources within the WEB-INF directory. For example a request to /context/%2e/WEB-INF/web.xml can retrieve the web.xml file. This can reveal sensitive information regarding the implementation of a web application.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
Low
Integrity
None
Availability
None

Exploit likelihood

82.4%Up 81.3 points since Apr 14, 2021
90%50%10%1%

What each source reports

CVE List Score used 5.3

In Eclipse Jetty 9.4.37.v20210219 to 9.4.38.v20210224, the default compliance mode allows requests with URIs that contain %2e or %2e%2e segments to access protected resources within the WEB-INF directory. For example a request to /context/%2e/WEB-INF/web.xml can retrieve the web.xml file. This can reveal sensitive information regarding the implementation of a web application.

Record
CVE-2021-28164
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
Weakness
CWE-200, CWE-551
Updated
2026-11-02
EUVDEUVD-2021-0877 5.3

In Eclipse Jetty 9.4.37.v20210219 to 9.4.38.v20210224, the default compliance mode allows requests with URIs that contain %2e or %2e%2e segments to access protected resources within the WEB-INF directory. For example a request to /context/%2e/WEB-INF/web.xml can retrieve the web.xml file. This can reveal sensitive information regarding the implementation of a web application.

Record
EUVD-2021-0877
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
Updated
2026-11-03
GitHub AdvisoriesGHSA-v7ff-8wcx-gmc5 5.3

Authorization Before Parsing and Canonicalization in jetty

Release 9.4.37 introduced a more precise implementation of RFC3986 with regards to URI decoding, together with some new compliance modes to optionally allow support of some URI that may have ambiguous interpretation within the Servlet specified API methods behaviours. The default mode allowed % encoded . characters to be excluded for URI normalisation, which is correct by the RFC, but is not assumed by common Servlet implementations. The default compliance mode allows requests with URIs that contain %2e or %2e%2e segments to access protected resources within the WEB-INF directory. For example a request to /context/%2e/WEB-INF/web.xml can retrieve the web.xml file. This can reveal sensitive information regarding the implementation of a web application. Workarounds found by HttpCompliance mode RFC7230_NO_AMBIGUOUS_URIS can be enabled by updating start.d/http.ini to include: jetty.http.compliance=RFC7230_NO_AMBIGUOUS_URIS.

Record
GHSA-v7ff-8wcx-gmc5
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
Weakness
CWE-200, CWE-551, CWE-863
Updated
2026-11-02
NVD 5.3

In Eclipse Jetty 9.4.37.v20210219 to 9.4.38.v20210224, the default compliance mode allows requests with URIs that contain %2e or %2e%2e segments to access protected resources within the WEB-INF directory. For example a request to /context/%2e/WEB-INF/web.xml can retrieve the web.xml file. This can reveal sensitive information regarding the implementation of a web application.

Record
CVE-2021-28164
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
CVSS 2.0
5.0 MediumAV:N/AC:L/Au:N/C:P/I:N/A:N
Weakness
CWE-200, CWE-551
Updated
2026-11-02
OSV 5.3

In Eclipse Jetty 9.4.37.v20210219 to 9.4.38.v20210224, the default compliance mode allows requests with URIs that contain %2e or %2e%2e segments to access protected resources within the WEB-INF directory. For example a request to /context/%2e/WEB-INF/web.xml can retrieve the web.xml file. This can reveal sensitive information regarding the implementation of a web application.

Record
CVE-2021-28164
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
Updated
2026-11-02
OSVDEBIAN-CVE-2021-28164 5.3

In Eclipse Jetty 9.4.37.v20210219 to 9.4.38.v20210224, the default compliance mode allows requests with URIs that contain %2e or %2e%2e segments to access protected resources within the WEB-INF directory. For example a request to /context/%2e/WEB-INF/web.xml can retrieve the web.xml file. This can reveal sensitive information regarding the implementation of a web application.

Record
DEBIAN-CVE-2021-28164
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
Updated
2026-11-02
Show 6 moreShow less
OSVGHSA-v7ff-8wcx-gmc5 5.3

Authorization Before Parsing and Canonicalization in jetty

Release 9.4.37 introduced a more precise implementation of RFC3986 with regards to URI decoding, together with some new compliance modes to optionally allow support of some URI that may have ambiguous interpretation within the Servlet specified API methods behaviours. The default mode allowed % encoded . characters to be excluded for URI normalisation, which is correct by the RFC, but is not assumed by common Servlet implementations. The default compliance mode allows requests with URIs that contain %2e or %2e%2e segments to access protected resources within the WEB-INF directory. For example a request to /context/%2e/WEB-INF/web.xml can retrieve the web.xml file. This can reveal sensitive information regarding the implementation of a web application. Workarounds found by HttpCompliance mode RFC7230_NO_AMBIGUOUS_URIS can be enabled by updating start.d/http.ini to include: jetty.http.compliance=RFC7230_NO_AMBIGUOUS_URIS.

Record
GHSA-v7ff-8wcx-gmc5
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
Weakness
CWE-200, CWE-551, CWE-863
Updated
2026-11-02
OSVRHSA-2021:1509 7.5

Red Hat Security Advisory: rh-eclipse-jetty security update

Record
RHSA-2021:1509
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVUBUNTU-CVE-2021-28164 5.3

In Eclipse Jetty 9.4.37.v20210219 to 9.4.38.v20210224, the default compliance mode allows requests with URIs that contain %2e or %2e%2e segments to access protected resources within the WEB-INF directory. For example a request to /context/%2e/WEB-INF/web.xml can retrieve the web.xml file. This can reveal sensitive information regarding the implementation of a web application.

Record
UBUNTU-CVE-2021-28164
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
Updated
2026-11-02
OSVopenSUSE-SU-2021:2005-1 No score

Security update for jetty-minimal

This update for jetty-minimal fixes the following issues:

Update to version 9.4.42.v20210604

  • Fix: bsc#1187117, CVE-2021-28169 - possible for requests to the ConcatServlet with a doubly encoded path to access protected resources within the WEB-INF directory
  • Fix: bsc#1184367, CVE-2021-28165 - jetty server high CPU when client send data length > 17408
  • Fix: bsc#1184368, CVE-2021-28164 - Normalize ambiguous URIs
  • Fix: bsc#1184366, CVE-2021-28163 - Exclude webapps directory from deployment scan
Record
openSUSE-SU-2021:2005-1
Updated
2026-11-02
OSVopenSUSE-SU-2024:10878-1 No score

jetty-annotations-9.4.43-1.2 on GA media

These are all security issues fixed in the jetty-annotations-9.4.43-1.2 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2024:10878-1
Updated
2026-11-02
OSVSUSE-SU-2021:2005-1 No score

Security update for jetty-minimal

This update for jetty-minimal fixes the following issues:

Update to version 9.4.42.v20210604

  • Fix: bsc#1187117, CVE-2021-28169 - possible for requests to the ConcatServlet with a doubly encoded path to access protected resources within the WEB-INF directory
  • Fix: bsc#1184367, CVE-2021-28165 - jetty server high CPU when client send data length > 17408
  • Fix: bsc#1184368, CVE-2021-28164 - Normalize ambiguous URIs
  • Fix: bsc#1184366, CVE-2021-28163 - Exclude webapps directory from deployment scan
Record
SUSE-SU-2021:2005-1
Updated
2026-11-02

Affected products

Show 7 moreShow less

Affected packages

Affected packages
PackageAffectedFixed
org.eclipse.jetty:jetty-webapp
Maven
9.4.37 up to 9.4.39
9.4.39
jetty9
Debian:12
before 9.4.39-1
9.4.39-1
jetty9
Debian:13
before 9.4.39-1
9.4.39-1
jetty9
Debian:14
before 9.4.39-1
9.4.39-1
org.eclipse.jetty:jetty-webapp
Maven
9.4.37 up to 9.4.39, plus listed versions
9.4.37.v202102199.4.38.v20210224
9.4.39
rh-eclipse-jetty
Red Hat:devtools:2021
From an advisory covering 3 CVEs
before 0:9.4.40-1.1.el7_9
0:9.4.40-1.1.el7_9
rh-eclipse-jetty-client
Red Hat:devtools:2021
From an advisory covering 3 CVEs
before 0:9.4.40-1.1.el7_9
0:9.4.40-1.1.el7_9
rh-eclipse-jetty-continuation
Red Hat:devtools:2021
From an advisory covering 3 CVEs
before 0:9.4.40-1.1.el7_9
0:9.4.40-1.1.el7_9
rh-eclipse-jetty-http
Red Hat:devtools:2021
From an advisory covering 3 CVEs
before 0:9.4.40-1.1.el7_9
0:9.4.40-1.1.el7_9
rh-eclipse-jetty-io
Red Hat:devtools:2021
From an advisory covering 3 CVEs
before 0:9.4.40-1.1.el7_9
0:9.4.40-1.1.el7_9
Show 17 moreShow less
Affected packages
PackageAffectedFixed
rh-eclipse-jetty-jaas
Red Hat:devtools:2021
From an advisory covering 3 CVEs
before 0:9.4.40-1.1.el7_9
0:9.4.40-1.1.el7_9
rh-eclipse-jetty-javadoc
Red Hat:devtools:2021
From an advisory covering 3 CVEs
before 0:9.4.40-1.1.el7_9
0:9.4.40-1.1.el7_9
rh-eclipse-jetty-jmx
Red Hat:devtools:2021
From an advisory covering 3 CVEs
before 0:9.4.40-1.1.el7_9
0:9.4.40-1.1.el7_9
rh-eclipse-jetty-security
Red Hat:devtools:2021
From an advisory covering 3 CVEs
before 0:9.4.40-1.1.el7_9
0:9.4.40-1.1.el7_9
rh-eclipse-jetty-server
Red Hat:devtools:2021
From an advisory covering 3 CVEs
before 0:9.4.40-1.1.el7_9
0:9.4.40-1.1.el7_9
rh-eclipse-jetty-servlet
Red Hat:devtools:2021
From an advisory covering 3 CVEs
before 0:9.4.40-1.1.el7_9
0:9.4.40-1.1.el7_9
rh-eclipse-jetty-util
Red Hat:devtools:2021
From an advisory covering 3 CVEs
before 0:9.4.40-1.1.el7_9
0:9.4.40-1.1.el7_9
rh-eclipse-jetty-util-ajax
Red Hat:devtools:2021
From an advisory covering 3 CVEs
before 0:9.4.40-1.1.el7_9
0:9.4.40-1.1.el7_9
rh-eclipse-jetty-webapp
Red Hat:devtools:2021
From an advisory covering 3 CVEs
before 0:9.4.40-1.1.el7_9
0:9.4.40-1.1.el7_9
rh-eclipse-jetty-xml
Red Hat:devtools:2021
From an advisory covering 3 CVEs
before 0:9.4.40-1.1.el7_9
0:9.4.40-1.1.el7_9
jetty-minimal
SUSE:Linux Enterprise Module for Development Tools 15 SP2
From an advisory covering 4 CVEs
before 9.4.42-3.9.1
9.4.42-3.9.1
jetty-minimal
SUSE:Linux Enterprise Module for Development Tools 15 SP3
From an advisory covering 4 CVEs
before 9.4.42-3.9.1
9.4.42-3.9.1
equinox-bundles
Ubuntu:18.04:LTS
All versions, plus listed versions
4.9-2~18.04
None known
equinox-bundles
Ubuntu:20.04:LTS
All versions, plus listed versions
4.12-14.13-1
None known
equinox-bundles
Ubuntu:22.04:LTS
All versions, plus listed versions
4.18-14.19-1
None known
jetty-minimal
openSUSE:Leap 15.3
From an advisory covering 4 CVEs
before 9.4.42-3.9.1
9.4.42-3.9.1
jetty-websocket
openSUSE:Leap 15.3
From an advisory covering 4 CVEs
before 9.4.42-3.9.1
9.4.42-3.9.1

Public exploits

Links only. Every CVE stores no exploit code.

Public exploits
SourceLinkDate
Exploit-DBJetty 9.4.37.v20210219 - Information Disclosure2021-10-22
PoC in GitHubjammy0903/-jettyCVE-2021-28164-2023-10-31
PoC in GitHubCyberCTF/vulhub-jetty-cve-2021-281642026-10-08
MetasploitJetty WEB-INF File Disclosure2021-07-15
NucleiEclipse Jetty - Information Disclosure

History

History
RecordedChangedSources
affected, exploits, facts
aliases, productsEUVD
first indexedCVE List, Exploit-DB, GitHub Advisories, Metasploit, Nuclei, NVD, OSV, PoC in GitHub

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2021-28164 is a medium vulnerability (CVSS 5.3) in Eclipse Jetty, published April 1, 2021. Public exploit code exists. EPSS puts the chance of exploitation in the next 30 days at 82.4%, the 99th percentile. Fixed in org.eclipse.jetty:jetty-webapp 9.4.39.

References

Show 73 moreShow less
MoveEnter Open