Target (2013) and Equifax (2017) represent two of the most consequential breaches in history. Target lost 40 million credit card records via an HVAC vendor; Equifax exposed 147 million SSNs due to an unpatched Apache Struts vulnerability. Both show how supply chain trust and patch lag can unravel even large enterprises.
Attackers first compromised Fazio Mechanical, a small HVAC contractor with network access to Target’s systems for billing. Using the vendor’s credentials, they accessed Target’s network, pivoted to the POS segment, and deployed RAM‑scraping malware on point‑of‑sale terminals. The breach went undetected for weeks because alerts from a $1.6 million FireEye deployment were ignored.
Equifax’s breach stemmed from CVE‑2017‑5638, a critical Apache Struts vulnerability with a public patch available 2 months prior. The company’s internal patch management process failed, and expired SSL inspection certificates blinded their IDS. Attackers quietly exfiltrated PII over 76 days.
Both breaches highlight a recurring pattern: security tools existed, but processes and human decision‑making failed. A SIEM is useless if nobody responds to its alarms.
| Factor | Target | Equifax |
|---|---|---|
| Initial Compromise | Vendor VPN creds | Unpatched Struts CVE |
| Detection | FireEye alert ignored | Expired certs blinded IDS |
| Impact | 40M credit cards | 147M SSNs, DOBs |
| Root Cause (Process) | Over‑privileged vendor access, alert fatigue | Patch management failure, certificate expiry |
💡 The ‘alert fatigue’ problem is solved by tuning SIEM rules and using SOAR to automate low‑confidence alerts.
# Example automated patch compliance check
import requests
response = requests.get('https://cve.circl.lu/api/cve/CVE-2017-5638')
cve_data = response.json()
if cve_data['cvss'] > 9.0:
print("CRITICAL: Patch immediately! Deadline 48h.")⚠️ After both breaches, the companies spent hundreds of millions in fines and remediation. The cost of prevention would have been a fraction.
Verify exercises to earn ★ 170 XP and unlock next lab level.