The 2017 Equifax Breach: Apache Struts CVE-2017-5638 and Patch Management Failure
Summary
Equifax disclosed in September 2017 that attackers had accessed personal data of approximately 147 million people between May and July 2017. The initial access vector, per Equifax's own and congressional investigations, was an unpatched vulnerability in Apache Struts, CVE-2017-5638.
Technical Root Cause
CVE-2017-5638 was a remote code execution vulnerability in the Jakarta Multipart parser of Apache Struts, triggered by a malformed Content-Type header (CWE-20, Improper Input Validation, leading to OGNL expression injection and RCE). Apache had disclosed the vulnerability and shipped a patch in March 2017. Equifax's internal scans reportedly failed to detect the vulnerable Struts installation on the affected system, and the patch was not applied before attackers exploited it in May 2017.
Why It Mattered
The scale and sensitivity of the exposed data (Social Security numbers, birth dates, addresses, and in some cases driver's license numbers) made this one of the most consequential breaches in U.S. history at the time, leading to a $700 million settlement with the FTC and state regulators.
OWASP / CWE Mapping
- CWE-20: Improper Input Validation
- OWASP A06:2021: Vulnerable and Outdated Components
- OWASP A09:2021: Security Logging and Monitoring Failures (the breach reportedly went undetected for months)
Lasting Impact
The Equifax breach is a standard case study in why automated, continuous dependency/component scanning matters more than periodic manual scans, and why patch SLAs for internet-facing systems need to be short for actively-exploited vulnerabilities.
How Safeguard Helps
Continuous SCA scanning is designed exactly to catch this failure mode — flagging vulnerable component versions like the affected Struts release automatically and repeatedly, rather than relying on a scan that can miss an installation.
References
- CVE-2017-5638: https://nvd.nist.gov/vuln/detail/CVE-2017-5638
- CWE-20: https://cwe.mitre.org/data/definitions/20.html