Evidence dossier

CVE-2020-1938

CVE-2020-1938

78.799.4Priority evidence range
As known Jul 19, 2026, 5:00 AM UTCgen-56ccdaf9

Normalized restatement

When using the Apache JServ Protocol (AJP), care must be taken when trusting incoming connections to Apache Tomcat. Tomcat treats AJP connections as having higher trust than, for example, a similar HTTP connection. If such connections are available to an attacker, they can be exploited in ways that may be surprising. In Apache Tomcat 9.0.0.M1 to 9.0.0.30, 8.5.0 to 8.5.50 and 7.0.0 to 7.0.99, Tomcat shipped with an AJP Connector enabled by default that listened on all configured IP addresses. It was expected (and recommended in the security guide) that this Connector would be disabled if not required. This vulnerability report identified a mechanism that allowed: - returning arbitrary files from anywhere in the web application - processing any file in the web application as a JSP Further, if the web application allowed file upload and stored those files within the web application (or the attacker was able to control the content of the web application by some other means) then this, along with the ability to process a file as a JSP, made remote code execution possible. It is important to note that mitigation is only required if an AJP port is accessible to untrusted users. Users wishing to take a defence-in-depth approach and block the vector that permits returning arbitrary files and execution as JSP may upgrade to Apache Tomcat 9.0.31, 8.5.51 or 7.0.100 or later. A number of changes were made to the default AJP Connector configuration in 9.0.31 to harden the default configuration. It is likely that users upgrading to 9.0.31, 8.5.51 or 7.0.100 or later will need to make small changes to their configurations.

State
PUBLISHED
Published
Feb 24, 2020
Updated
Oct 21, 2025
Evidence coverage
72%
CISA KEVCatalog member

Apply updates per vendor instructions.

FIRST EPSS99.27%

2026-07-18 · v2026.06.15 · percentile 99.9%

Source stateConflict visible

Distinct CVSS assessments remain side by side; none are averaged.

Source comparison

Who said what

apacheoriginal assertion
container

When using the Apache JServ Protocol (AJP), care must be taken when trusting incoming connections to Apache Tomcat. Tomcat treats AJP connections as having higher trust than, for example, a similar HTTP connection. If such connections are available to an attacker, they can be exploited in ways that may be surprising. In Apache Tomcat 9.0.0.M1 to 9.0.0.30, 8.5.0 to 8.5.50 and 7.0.0 to 7.0.99, Tomcat shipped with an AJP Connector enabled by default that listened on all configured IP addresses. It was expected (and recommended in the security guide) that this Connector would be disabled if not required. This vulnerability report identified a mechanism that allowed: - returning arbitrary files from anywhere in the web application - processing any file in the web application as a JSP Further, if the web application allowed file upload and stored those files within the web application (or the attacker was able to control the content of the web application by some other means) then this, along with the ability to process a file as a JSP, made remote code execution possible. It is important to note that mitigation is only required if an AJP port is accessible to untrusted users. Users wishing to take a defence-in-depth approach and block the vector that permits returning arbitrary files and execution as JSP may upgrade to Apache Tomcat 9.0.31, 8.5.51 or 7.0.100 or later. A number of changes were made to the default AJP Connector configuration in 9.0.31 to harden the default configuration. It is likely that users upgrading to 9.0.31, 8.5.51 or 7.0.100 or later will need to make small changes to their configurations.

CISA-ADPindependent enrichment
container

CISA ADP Vulnrichment

CVEderivative copy
container

CVE Program Container

CISA KEVoriginal assertion
observed_exploitation

Apache Tomcat Improper Privilege Management Vulnerability

FIRST EPSSoriginal assertion
model_probability

Probability 0.992700000000; percentile 0.999330000000

Applicability

Cited product scope

Trace impact →
ApacheApache Tomcat
[{"status": "affected", "version": "Apache Tomcat 9.0.0.M1 to 9.0.0.30"}, {"status": "affected", "version": "8.5.0 to 8.5.50"}, {"status": "affected", "version": "7.0.0 to 7.0.99"}]unknown
Unknown vendorUnknown product
cpe:2.3:a:apache:geode:1.12.0:*:*:*:*:*:*:*supported
Unknown vendorUnknown product
cpe:2.3:a:apache:tomcat:*:*:*:*:*:*:*:*; start including 7.0.0; end excluding 7.0.100supported
Unknown vendorUnknown product
cpe:2.3:a:apache:tomcat:*:*:*:*:*:*:*:*; start including 8.5.0; end excluding 8.5.51supported
Unknown vendorUnknown product
cpe:2.3:a:apache:tomcat:*:*:*:*:*:*:*:*; start including 9.0.0; end excluding 9.0.31supported
Unknown vendorUnknown product
cpe:2.3:a:blackberry:good_control:*:*:*:*:*:*:*:*; end including 5.2.58.38supported
Unknown vendorUnknown product
cpe:2.3:a:blackberry:workspaces_server:7.0.1:*:*:*:*:*:*:*supported
Unknown vendorUnknown product
cpe:2.3:a:blackberry:workspaces_server:7.1.2:*:*:*:*:*:*:*supported
Unknown vendorUnknown product
cpe:2.3:a:blackberry:workspaces_server:8.1.0:*:*:*:*:*:*:*supported
Unknown vendorUnknown product
cpe:2.3:a:blackberry:workspaces_server:9.0:*:*:*:*:*:*:*supported
Unknown vendorUnknown product
cpe:2.3:a:netapp:data_availability_services:-:*:*:*:*:*:*:*supported
Unknown vendorUnknown product
cpe:2.3:a:netapp:oncommand_system_manager:*:*:*:*:*:*:*:*; start including 3.0.0; end including 3.1.3supported
Unknown vendorUnknown product
cpe:2.3:a:oracle:agile_engineering_data_management:6.2.1.0:*:*:*:*:*:*:*supported
Unknown vendorUnknown product
cpe:2.3:a:oracle:agile_plm:9.3.3:*:*:*:*:*:*:*supported
Unknown vendorUnknown product
cpe:2.3:a:oracle:agile_plm:9.3.5:*:*:*:*:*:*:*supported
Unknown vendorUnknown product
cpe:2.3:a:oracle:agile_plm:9.3.6:*:*:*:*:*:*:*supported
Unknown vendorUnknown product
cpe:2.3:a:oracle:communications_element_manager:8.1.1:*:*:*:*:*:*:*supported
Unknown vendorUnknown product
cpe:2.3:a:oracle:communications_element_manager:8.2.0:*:*:*:*:*:*:*supported
Unknown vendorUnknown product
cpe:2.3:a:oracle:communications_element_manager:8.2.1:*:*:*:*:*:*:*supported
Unknown vendorUnknown product
cpe:2.3:a:oracle:communications_instant_messaging_server:10.0.1.4.0:*:*:*:*:*:*:*supported
Unknown vendorUnknown product
cpe:2.3:a:oracle:health_sciences_empirica_inspections:1.0.1.2:*:*:*:*:*:*:*supported
Unknown vendorUnknown product
cpe:2.3:a:oracle:health_sciences_empirica_signal:7.3.3:*:*:*:*:*:*:*supported
Unknown vendorUnknown product
cpe:2.3:a:oracle:hospitality_guest_access:4.2.0:*:*:*:*:*:*:*supported
Unknown vendorUnknown product
cpe:2.3:a:oracle:hospitality_guest_access:4.2.1:*:*:*:*:*:*:*supported
Unknown vendorUnknown product
cpe:2.3:a:oracle:instantis_enterprisetrack:*:*:*:*:*:*:*:*; start including 17.1; end including 17.3supported
Unknown vendorUnknown product
cpe:2.3:a:oracle:mysql_enterprise_monitor:*:*:*:*:*:*:*:*; end including 4.0.12supported
Unknown vendorUnknown product
cpe:2.3:a:oracle:mysql_enterprise_monitor:*:*:*:*:*:*:*:*; start including 8.0.0; end including 8.0.20supported
Unknown vendorUnknown product
cpe:2.3:a:oracle:siebel_ui_framework:*:*:*:*:*:*:*:*; end including 20.5supported
Unknown vendorUnknown product
cpe:2.3:a:oracle:transportation_management:6.3.7:*:*:*:*:*:*:*supported
Unknown vendorUnknown product
cpe:2.3:a:oracle:workload_manager:12.2.0.1:*:*:*:*:*:*:*supported
Unknown vendorUnknown product
cpe:2.3:a:oracle:workload_manager:18c:*:*:*:*:*:*:*supported
Unknown vendorUnknown product
cpe:2.3:a:oracle:workload_manager:19c:*:*:*:*:*:*:*supported
Unknown vendorUnknown product
cpe:2.3:o:debian:debian_linux:10.0:*:*:*:*:*:*:*supported
Unknown vendorUnknown product
cpe:2.3:o:debian:debian_linux:8.0:*:*:*:*:*:*:*supported
Unknown vendorUnknown product
cpe:2.3:o:debian:debian_linux:9.0:*:*:*:*:*:*:*supported
Unknown vendorUnknown product
cpe:2.3:o:fedoraproject:fedora:30:*:*:*:*:*:*:*supported
Unknown vendorUnknown product
cpe:2.3:o:fedoraproject:fedora:31:*:*:*:*:*:*:*supported
Unknown vendorUnknown product
cpe:2.3:o:fedoraproject:fedora:32:*:*:*:*:*:*:*supported
Unknown vendorUnknown product
cpe:2.3:o:opensuse:leap:15.1:*:*:*:*:*:*:*supported

Assessments

CVSS by origin

9.8
nvd@nist.govCVSS 3.1 · role PrimaryCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
7.5
nvd@nist.govCVSS 2.0 · role PrimaryAV:N/AC:L/Au:N/C:P/I:P/A:P
9.8
134c704f-9b21-4f2e-91b3-4a467353bcc0CVSS 3.1 · role SecondaryCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
9.8
CISA-ADPCVSS 3.1 · role unknownCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Limitations and unknowns

  • KEV membership is authoritative for the catalog, not proof of exposure in any environment.
  • EPSS is a dated model probability and not an individual-environment prediction.
  • Affected or fixed status applies only to the exact cited product and version scope; unresolved scope remains unknown.
  • NVD-carried upstream facts remain derivative and are not independent corroboration.
  • Only NVD metrics validated under the generation-bound calculator are Public Priority eligible; direct CVE record metrics remain display-only.
  • NVD CVSS source eligibility is closed: NVD-authored, exact record-source, or registered same-CVE container origin; unmapped sources remain display-only.
  • Factor D is unknown in Public Core because no accepted canonical mapping-obligation ledger is present.
  • Core replay supports the active and immediately prior generation; retrospective valid-at replay is deferred.