Apply updates per vendor instructions.
Evidence dossier
CVE-2017-5638
CVE-2017-5638
gen-56ccdaf9Normalized restatement
The Jakarta Multipart parser in Apache Struts 2 2.3.x before 2.3.32 and 2.5.x before 2.5.10.1 has incorrect exception handling and error-message generation during file-upload attempts, which allows remote attackers to execute arbitrary commands via a crafted Content-Type, Content-Disposition, or Content-Length HTTP header, as exploited in the wild in March 2017 with a Content-Type header containing a #cmd= string.
- State
- PUBLISHED
- Published
- Mar 11, 2017
- Updated
- Oct 21, 2025
- Evidence coverage
- 72%
2026-07-18 · v2026.06.15 · percentile 100.0%
Distinct CVSS assessments remain side by side; none are averaged.
Source comparison
Who said what
The Jakarta Multipart parser in Apache Struts 2 2.3.x before 2.3.32 and 2.5.x before 2.5.10.1 has incorrect exception handling and error-message generation during file-upload attempts, which allows remote attackers to execute arbitrary commands via a crafted Content-Type, Content-Disposition, or Content-Length HTTP header, as exploited in the wild in March 2017 with a Content-Type header containing a #cmd= string.
Apache Struts Remote Code Execution Vulnerability
Probability 0.999990000000; percentile 0.999940000000
Applicability
Cited product scope
[{"status": "affected", "version": "2.3.x before 2.3.32"}, {"status": "affected", "version": "2.5.x before 2.5.10.1"}]unknowncpe:2.3:a:apache:struts:*:*:*:*:*:*:*:*; start including 2.2.3; end excluding 2.3.32supportedcpe:2.3:a:apache:struts:*:*:*:*:*:*:*:*; start including 2.5.0; end excluding 2.5.10.1supportedcpe:2.3:a:arubanetworks:clearpass_policy_manager:*:*:*:*:*:*:*:*; end excluding 6.6.5supportedcpe:2.3:a:hp:server_automation:10.0.0:*:*:*:*:*:*:*supportedcpe:2.3:a:hp:server_automation:10.1.0:*:*:*:*:*:*:*supportedcpe:2.3:a:hp:server_automation:10.2.0:*:*:*:*:*:*:*supportedcpe:2.3:a:hp:server_automation:10.5.0:*:*:*:*:*:*:*supportedcpe:2.3:a:hp:server_automation:9.1.0:*:*:*:*:*:*:*supportedcpe:2.3:a:netapp:oncommand_balance:-:*:*:*:*:*:*:*supportedcpe:2.3:a:oracle:weblogic_server:10.3.6.0.0:*:*:*:*:*:*:*supportedcpe:2.3:a:oracle:weblogic_server:12.1.3.0.0:*:*:*:*:*:*:*supportedcpe:2.3:a:oracle:weblogic_server:12.2.1.1.0:*:*:*:*:*:*:*supportedcpe:2.3:a:oracle:weblogic_server:12.2.1.2.0:*:*:*:*:*:*:*supportedcpe:2.3:h:ibm:storwize_v3500:-:*:*:*:*:*:*:*constrainedcpe:2.3:h:ibm:storwize_v5000:-:*:*:*:*:*:*:*constrainedcpe:2.3:h:ibm:storwize_v7000:-:*:*:*:*:*:*:*constrainedcpe:2.3:h:lenovo:storage_v5030:-:*:*:*:*:*:*:*constrainedcpe:2.3:o:ibm:storwize_v3500_firmware:7.7.1.6:*:*:*:*:*:*:*supportedcpe:2.3:o:ibm:storwize_v3500_firmware:7.8.1.0:*:*:*:*:*:*:*supportedcpe:2.3:o:ibm:storwize_v5000_firmware:7.7.1.6:*:*:*:*:*:*:*supportedcpe:2.3:o:ibm:storwize_v5000_firmware:7.8.1.0:*:*:*:*:*:*:*supportedcpe:2.3:o:ibm:storwize_v7000_firmware:7.7.1.6:*:*:*:*:*:*:*supportedcpe:2.3:o:ibm:storwize_v7000_firmware:7.8.1.0:*:*:*:*:*:*:*supportedcpe:2.3:o:lenovo:storage_v5030_firmware:7.7.1.6:*:*:*:*:*:*:*supportedcpe:2.3:o:lenovo:storage_v5030_firmware:7.8.1.0:*:*:*:*:*:*:*supportedAssessments
CVSS by origin
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HAV:N/AC:L/Au:N/C:C/I:C/A:CCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HLimitations 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.