CVE-2018-12536
Eclipse Jetty XmlParser allows arbitrary DOCTYPE declarations
In Eclipse Jetty Server, all 9.x versions, on webapps deployed using default Error Handling, when an intentionally bad query arrives that doesn't match a dynamic url-pattern, and is eventually handled by the DefaultServlet's static file serving, the bad characters can trigger a java.nio.file.InvalidPathException which includes the full path to the base resource directory that the DefaultServlet and/or webapp is using. If this InvalidPathException is then handled by the default Error Handler, the InvalidPathException message is included in the error response, revealing the full server path to the requesting system.
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
What each source reports
NVD Score used
5.3
In Eclipse Jetty Server, all 9.x versions, on webapps deployed using default Error Handling, when an intentionally bad query arrives that doesn't match a dynamic url-pattern, and is eventually handled by the DefaultServlet's static file serving, the bad characters can trigger a java.nio.file.InvalidPathException which includes the full path to the base resource directory that the DefaultServlet and/or webapp is using. If this InvalidPathException is then handled by the default Error Handler, the InvalidPathException message is included in the error response, revealing the full server path to the requesting system.
- Record
CVE-2018-12536- CVSS 3.1
- 5.3 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N - CVSS 2.0
- 5.0 Medium
AV:N/AC:L/Au:N/C:P/I:N/A:N - Weakness
- CWE-209
- Updated
- 2026-11-02
CVE List No score
In Eclipse Jetty Server, all 9.x versions, on webapps deployed using default Error Handling, when an intentionally bad query arrives that doesn't match a dynamic url-pattern, and is eventually handled by the DefaultServlet's static file serving, the bad characters can trigger a java.nio.file.InvalidPathException which includes the full path to the base resource directory that the DefaultServlet and/or webapp is using. If this InvalidPathException is then handled by the default Error Handler, the InvalidPathException message is included in the error response, revealing the full server path to the requesting system.
- Record
CVE-2018-12536- Weakness
- CWE-209
- Updated
- 2026-11-02
EUVDEUVD-2018-0567 No score
In Eclipse Jetty Server, all 9.x versions, on webapps deployed using default Error Handling, when an intentionally bad query arrives that doesn't match a dynamic url-pattern, and is eventually handled by the DefaultServlet's static file serving, the bad characters can trigger a java.nio.file.InvalidPathException which includes the full path to the base resource directory that the DefaultServlet and/or webapp is using. If this InvalidPathException is then handled by the default Error Handler, the InvalidPathException message is included in the error response, revealing the full server path to the requesting system.
- Record
EUVD-2018-0567- Updated
- 2026-11-03
GitHub AdvisoriesGHSA-58qw-p7qm-5rvh
3.9
Eclipse Jetty XmlParser allows arbitrary DOCTYPE declarations
From the reporter
XmlParseris vulnerable to XML external entity (XXE) vulnerability. XmlParser is being used when parsing Jetty’s xml configuration files. An attacker might exploit this vulnerability in order to achieve SSRF or cause a denial of service. One possible scenario is importing a (remote) malicious WAR into a Jetty’s server, while the WAR includes a malicious web.xml.
Impact
There are no circumstances in a normally deployed Jetty server where potentially hostile XML is given to the XmlParser class without the attacker already having arbitrary access to the server. I.e. in order to exploit XmlParser the attacker would already have the ability to deploy and execute hostile code. Specifically, Jetty has no protection against malicious web application and potentially hostile web applications should only be run on an isolated virtualisation.
Thus this is not considered a vulnerability of the Jetty server itself, as any such usage of the jetty XmlParser is equally vulnerable as a direct usage of the JVM supplied SAX parser. No CVE will be allocated to this advisory.
However, any direct usage of the XmlParser class by an application may be vulnerable. The impact would greatly depend on how the application uses XmlParser, but it could be a denial of service due to large entity expansion, or possibly the revealing local files if the XML results are accessible remotely.
Patches
Ability to configure the SAXParserFactory to fit the needs of your particular XML parser implementation have been merged as part of PR #10067
Workarounds
Don't use Jetty's XmlParser to parse data from users.
- Record
GHSA-58qw-p7qm-5rvh- CVSS 3.1
- 3.9 Low
CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:U/C:L/I:L/A:L - Weakness
- CWE-611
- Updated
- 2026-11-02
GitHub AdvisoriesGHSA-9rgv-h7x4-qw8g
5.3
Eclipse Jetty Server generates error message containing sensitive information
In Eclipse Jetty Server, all 9.x versions, on webapps deployed using default Error Handling, when an intentionally bad query arrives that doesn't match a dynamic url-pattern, and is eventually handled by the DefaultServlet's static file serving, the bad characters can trigger a java.nio.file.InvalidPathException which includes the full path to the base resource directory that the DefaultServlet and/or webapp is using. If this InvalidPathException is then handled by the default Error Handler, the InvalidPathException message is included in the error response, revealing the full server path to the requesting system.
- Record
GHSA-9rgv-h7x4-qw8g- CVSS 3.1
- 5.3 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N - Weakness
- CWE-209
- Updated
- 2026-11-02
OSV
5.3
In Eclipse Jetty Server, all 9.x versions, on webapps deployed using default Error Handling, when an intentionally bad query arrives that doesn't match a dynamic url-pattern, and is eventually handled by the DefaultServlet's static file serving, the bad characters can trigger a java.nio.file.InvalidPathException which includes the full path to the base resource directory that the DefaultServlet and/or webapp is using. If this InvalidPathException is then handled by the default Error Handler, the InvalidPathException message is included in the error response, revealing the full server path to the requesting system.
- Record
CVE-2018-12536- CVSS 3.1
- 5.3 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N - Updated
- 2026-11-02
Show 5 moreShow less
OSVDEBIAN-CVE-2018-12536
5.3
In Eclipse Jetty Server, all 9.x versions, on webapps deployed using default Error Handling, when an intentionally bad query arrives that doesn't match a dynamic url-pattern, and is eventually handled by the DefaultServlet's static file serving, the bad characters can trigger a java.nio.file.InvalidPathException which includes the full path to the base resource directory that the DefaultServlet and/or webapp is using. If this InvalidPathException is then handled by the default Error Handler, the InvalidPathException message is included in the error response, revealing the full server path to the requesting system.
- Record
DEBIAN-CVE-2018-12536- CVSS 3.1
- 5.3 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N - Updated
- 2026-11-02
OSVGHSA-58qw-p7qm-5rvh
3.9
Eclipse Jetty XmlParser allows arbitrary DOCTYPE declarations
From the reporter
XmlParseris vulnerable to XML external entity (XXE) vulnerability. XmlParser is being used when parsing Jetty’s xml configuration files. An attacker might exploit this vulnerability in order to achieve SSRF or cause a denial of service. One possible scenario is importing a (remote) malicious WAR into a Jetty’s server, while the WAR includes a malicious web.xml.
Impact
There are no circumstances in a normally deployed Jetty server where potentially hostile XML is given to the XmlParser class without the attacker already having arbitrary access to the server. I.e. in order to exploit XmlParser the attacker would already have the ability to deploy and execute hostile code. Specifically, Jetty has no protection against malicious web application and potentially hostile web applications should only be run on an isolated virtualisation.
Thus this is not considered a vulnerability of the Jetty server itself, as any such usage of the jetty XmlParser is equally vulnerable as a direct usage of the JVM supplied SAX parser. No CVE will be allocated to this advisory.
However, any direct usage of the XmlParser class by an application may be vulnerable. The impact would greatly depend on how the application uses XmlParser, but it could be a denial of service due to large entity expansion, or possibly the revealing local files if the XML results are accessible remotely.
Patches
Ability to configure the SAXParserFactory to fit the needs of your particular XML parser implementation have been merged as part of PR #10067
Workarounds
Don't use Jetty's XmlParser to parse data from users.
- Record
GHSA-58qw-p7qm-5rvh- CVSS 3.1
- 3.9 Low
CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:U/C:L/I:L/A:L - Weakness
- CWE-611
- Updated
- 2026-11-02
OSVGHSA-9rgv-h7x4-qw8g
5.3
Eclipse Jetty Server generates error message containing sensitive information
In Eclipse Jetty Server, all 9.x versions, on webapps deployed using default Error Handling, when an intentionally bad query arrives that doesn't match a dynamic url-pattern, and is eventually handled by the DefaultServlet's static file serving, the bad characters can trigger a java.nio.file.InvalidPathException which includes the full path to the base resource directory that the DefaultServlet and/or webapp is using. If this InvalidPathException is then handled by the default Error Handler, the InvalidPathException message is included in the error response, revealing the full server path to the requesting system.
- Record
GHSA-9rgv-h7x4-qw8g- CVSS 3.1
- 5.3 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N - Weakness
- CWE-209
- Updated
- 2026-11-02
OSVUBUNTU-CVE-2018-12536
5.3
In Eclipse Jetty Server, all 9.x versions, on webapps deployed using default Error Handling, when an intentionally bad query arrives that doesn't match a dynamic url-pattern, and is eventually handled by the DefaultServlet's static file serving, the bad characters can trigger a java.nio.file.InvalidPathException which includes the full path to the base resource directory that the DefaultServlet and/or webapp is using. If this InvalidPathException is then handled by the default Error Handler, the InvalidPathException message is included in the error response, revealing the full server path to the requesting system.
- Record
UBUNTU-CVE-2018-12536- CVSS 3.1
- 5.3 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N - Updated
- 2026-11-02
OSVCLSA-2026-1780361408 No score
TuxCare security update for org.eclipse.jetty (12 CVEs)
TuxCare rebuilt 4 org.eclipse.jetty packages to address 12 CVEs. Fixed in 9.2.16.v20160414-tuxcare.1.
- Record
CLSA-2026-1780361408- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
org.eclipse.jetty:jetty-xmlMaven |
11.0.0-alpha0 to 11.0.15 | 11.0.16 |
org.eclipse.jetty:jetty-xmlMaven |
10.0.0-alpha0 to 10.0.15 | 10.0.16 |
org.eclipse.jetty:jetty-xmlMaven |
12.0.0.alpha0 to 12.0.0.beta4 | 12.0.0 |
org.eclipse.jetty:jetty-xmlMaven |
through 9.4.51 | 9.4.52.v20230823 |
org.eclipse.jetty:jetty-serverMaven |
9.4.0 to 9.4.10.v20180503 | 9.4.11.v20180605 |
org.eclipse.jetty:jetty-serverMaven |
9.0.0 to 9.3.23.v20180228 | 9.3.24.v20180605 |
org.eclipse.jetty:jetty-serverTuxCare:Maven From an advisory covering 11 CVEs |
9.2.16.v20160414 up to 9.2.16.v20160414-tuxcare.1 | 9.2.16.v20160414-tuxcare.1 |
org.eclipse.jetty:jetty-servletsTuxCare:Maven From an advisory covering 11 CVEs |
9.2.16.v20160414 up to 9.2.16.v20160414-tuxcare.1 | 9.2.16.v20160414-tuxcare.1 |
org.eclipse.jetty:jetty-webappTuxCare:Maven From an advisory covering 11 CVEs |
9.2.16.v20160414 up to 9.2.16.v20160414-tuxcare.1 | 9.2.16.v20160414-tuxcare.1 |
org.eclipse.jetty:jetty-xmlTuxCare:Maven From an advisory covering 11 CVEs |
9.2.16.v20160414 up to 9.2.16.v20160414-tuxcare.1 | 9.2.16.v20160414-tuxcare.1 |
Show 11 moreShow less
| Package | Affected | Fixed |
|---|---|---|
jetty9Debian:12 |
before 9.2.25-1 | 9.2.25-1 |
jetty9Debian:13 |
before 9.2.25-1 | 9.2.25-1 |
jetty9Debian:14 |
before 9.2.25-1 | 9.2.25-1 |
jetty9Debian:9 From an advisory covering 5 CVEs |
before 9.2.30-0+deb9u1, plus listed versions 9.2.21-19.2.21-1+deb9u19.2.22-19.2.22-29.2.22-3 Show 8 moreShow less9.2.23-19.2.23-1~bpo8+19.2.23-1~bpo9+19.2.24-19.2.24-1~bpo9+19.2.25-19.2.26-19.2.26-1~bpo9+1 |
9.2.30-0+deb9u1 |
org.eclipse.jetty:jetty-xmlMaven |
10.0.0-alpha0 up to 10.0.16, plus listed versions 10.0.010.0.0.alpha110.0.0.alpha210.0.0.beta010.0.0.beta1 Show 17 moreShow less10.0.0.beta210.0.0.beta310.0.110.0.1010.0.1110.0.1210.0.1310.0.1410.0.1510.0.210.0.310.0.410.0.510.0.610.0.710.0.810.0.9 |
10.0.16 |
org.eclipse.jetty:jetty-xmlMaven |
11.0.0-alpha0 up to 11.0.16, plus listed versions 11.0.011.0.0.beta111.0.0.beta211.0.0.beta311.0.1 Show 14 moreShow less11.0.1011.0.1111.0.1211.0.1311.0.1411.0.1511.0.211.0.311.0.411.0.511.0.611.0.711.0.811.0.9 |
11.0.16 |
org.eclipse.jetty:jetty-xmlMaven |
12.0.0.alpha0 up to 12.0.0, plus listed versions 12.0.0.alpha112.0.0.alpha212.0.0.alpha312.0.0.beta012.0.0.beta112.0.0.beta212.0.0.beta312.0.0.beta4 |
12.0.0 |
org.eclipse.jetty:jetty-xmlMaven |
before 9.4.52.v20230823, plus listed versions 7.0.0.M07.0.0.M17.0.0.M27.0.0.M37.0.0.M4 Show 45 moreShow less7.0.0.RC07.0.0.RC17.0.0.RC27.0.0.RC37.0.0.RC47.0.0.RC57.0.0.RC67.0.0.v200910057.0.1.v200911257.0.2.RC07.0.2.v201003317.1.0.RC07.1.0.RC17.1.0.v201005057.1.1.v201005177.1.2.v201005237.1.3.v201005267.1.4.v201006107.1.5.v201007057.1.6.v201007157.2.0.RC07.2.0.v201010207.2.1.v201011117.2.2.v201012057.3.0.v201102037.3.1.v201103077.4.0.RC07.4.0.v201104147.4.1.v201105137.4.2.v201105267.4.3.v201107017.4.4.v201107077.4.5.v201107257.5.0.RC07.5.0.RC17.5.0.RC27.5.0.v201109017.5.1.v201109087.5.2.v201110067.5.3.v201110117.5.4.v201110247.6.0.RC07.6.0.RC17.6.0.RC27.6.0.RC3 |
9.4.52.v20230823 |
org.eclipse.jetty:jetty-serverMaven |
9.4.0 up to 9.4.11.v20180605, plus listed versions 9.4.0.v201612089.4.0.v201806199.4.1.v201701209.4.1.v201806199.4.10.RC0 Show 18 moreShow less9.4.10.RC19.4.10.v201805039.4.2.v201702209.4.2.v201806199.4.3.v201703179.4.3.v201806199.4.4.v201704149.4.4.v201806199.4.5.v201705029.4.5.v201806199.4.6.v201705319.4.6.v201806199.4.7.RC09.4.7.v201709149.4.7.v201806199.4.8.v201711219.4.8.v201806199.4.9.v20180320 |
9.4.11.v20180605 |
org.eclipse.jetty:jetty-serverMaven |
9.0.0 up to 9.3.24.v20180605, plus listed versions 9.0.0.v201303089.0.1.v201304089.0.2.v201304179.0.3.v201305069.0.4.v20130625 Show 45 moreShow less9.0.5.v201308159.0.6.v201309309.0.7.v201311079.1.0.M09.1.0.RC09.1.0.RC19.1.0.RC29.1.0.v201311159.1.1.v201401089.1.2.v201402109.1.3.v201402259.1.4.v201404019.1.5.v201405059.1.6.v201601129.2.0.M09.2.0.M19.2.0.RC09.2.0.v201405269.2.1.v201406099.2.10.v201503109.2.11.M09.2.11.v201505299.2.12.M09.2.12.v201507099.2.13.v201507309.2.14.v201511069.2.15.v201602109.2.16.v201604149.2.17.v201605179.2.18.v201607219.2.19.v201609089.2.2.v201407239.2.20.v201612169.2.21.v201701209.2.22.v201706069.2.23.v201712189.2.24.v201801059.2.25.v201806069.2.26.v201808069.2.27.v201904039.2.28.v201904189.2.29.v201911059.2.3.v201409059.2.30.v202004289.2.4.v20141103 |
9.3.24.v20180605 |
jetty9Ubuntu:16.04:LTS |
All versions, plus listed versions 9.2.14-1 |
None known |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, facts | ||
| aliases, products | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2018-12536 is a medium vulnerability (CVSS 5.3) in Eclipse Jetty, published June 27, 2018. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 4.23%, the 91st percentile. Fixed in org.eclipse.jetty:jetty-xml 11.0.16.
References
securitytracker.com/id/1041194
lists.apache.org/thread.html/053d9ce4d579b02203db18545fee5e33f35f2932885459b74d1e4272%40%3Cissues.activemq.apache.org%3E
oracle.com/technetwork/security-advisory/cpuoct2019-5072832.html
oracle.com/security-alerts/cpuoct2020.html
security.netapp.com/advisory/ntap-20181014-0001
support.hpe.com/hpsc/doc/public/display?docLocale=en_US&docId=emr_na-hpesbst03953en_us
Show 19 moreShow less
bugs.eclipse.org/bugs/show_bug.cgi?id=535670
lists.debian.org/debian-lts-announce/2021/05/msg00016.html
github.com/eclipse/jetty.project/security/advisories/GHSA-58qw-p7qm-5rvh
github.com/eclipse/jetty.project/pull/10067
github.com/eclipse/jetty.project/releases/tag/jetty-10.0.16
github.com/eclipse/jetty.project/releases/tag/jetty-11.0.16
github.com/eclipse/jetty.project/releases/tag/jetty-12.0.0
github.com/eclipse/jetty.project/releases/tag/jetty-9.4.52.v20230823
github.com/jetty/jetty.project/security/advisories/GHSA-58qw-p7qm-5rvh
github.com/advisories/GHSA-58qw-p7qm-5rvh
nvd.nist.gov/vuln/detail/CVE-2018-12536
lists.apache.org/thread.html/053d9ce4d579b02203db18545fee5e33f35f2932885459b74d1e4272@%3Cissues.activemq.apache.org%3E
web.archive.org/web/20200516001904/http://www.securitytracker.com/id/1041194
github.com/advisories/GHSA-9rgv-h7x4-qw8g
security-tracker.debian.org/tracker/CVE-2018-12536
github.com/eclipse/jetty.project
ubuntu.com/security/CVE-2018-12536
github.com/eclipse/jetty.project/issues/2560
cve.org/CVERecord?id=CVE-2018-12536
Left out here: 296 versions. The JSON record has them.