flawopen.com/Incidentes/Capital One SSRF

Capital One: la vulnerabilidad SSRF que convirtió una petición web en credenciales de la nube

Critical — 100M+ records CWE-918: Server-Side Request Forgery Disclosed July 2019
ELI5 (Explicación Sencilla)

Una empresa tiene un conserje que recoge documentos de cualquier dirección que le des. Dentro de la sede hay una ventanilla oculta que entrega las llaves maestras del banco a quien pregunte. Le pides al conserje que vaya a esa ventanilla interna y te traiga las llaves: como es una dirección más, el conserje te las entrega.

Why this incident reshaped cloud defaults

Capital One is the reason SSRF stopped being treated as a second-tier bug class. Before it, SSRF was often triaged as an information-disclosure nuisance. After it, the industry understood that in a cloud environment SSRF is a credential-theft primitive — because the cloud platform itself puts a credential vending machine at a fixed, well-known, unauthenticated address inside every instance.

AWS introduced IMDSv2 in November 2019, requiring a PUT to obtain a session token and defaulting to a low IP hop limit. Both changes specifically break the "one blind GET" pattern this attack relied on. Equivalent hardening exists across other cloud providers.

The lessons that actually transfer

FAQ

Does IMDSv2 make SSRF safe?

No — it removes one very high-value target. SSRF can still reach internal admin interfaces, databases, Kubernetes APIs, and other services that trust the network position of the caller. It remains a serious bug class on its own merits.

Would a WAF have stopped this?

The vulnerable component in this case was a web application firewall, which is a useful reminder that security appliances are applications too. Filtering rules can raise the cost of exploitation but do not address the underlying design, which is that a server will fetch whatever address it is told to.

Related reading

Fuentes y avisos oficiales