En bref
Que s'est-il passé ?
En février 2024, une société rachète le domaine polyfill.io et le compte GitHub associé. Ce service CDN était chargé par une vaste partie du web.
En juin 2024, Sansec observe du malware servi depuis cdn.polyfill.io : un script tiers de confiance, embarqué dans des milliers de sites, devient un vecteur d'injection de JavaScript arbitraire dans le navigateur des visiteurs.
Le malware observé faisait de la redirection, mais le contrôle du CDN permettait une exécution de code arbitraire côté navigateur. Sansec estime 100 000+ sites affectés ; Cloudflare évoque ~4 % du web.
Bannir les scripts tiers non maîtrisés ou les auto-héberger, Subresource Integrity (SRI), CSP stricte, et bascule vers des alternatives sûres (Fastly, Cloudflare).
Chronologie de l'attaque
Une société acquiert le domaine polyfill.io et le compte GitHub polyfillpolyfill.
Sansec observe du code malveillant servi depuis cdn.polyfill.io, affectant plus de 100 000 sites.
Comment l'attaquant a procédé
Cet incident met en jeu les vecteurs d'attaque suivants du catalogue SOCLE ; chacun renvoie à sa fiche, où l'on trouve les exigences qui le neutralisent :
La leçon à en tirer
Sous-resource integrity (SRI), allowlist des CDN, réversibilité et auto-hébergement des dépendances front.
Les exigences SOCLE qui auraient limité cet incident
Cet incident se rattache à 40 exigences du référentiel, par domaine. Les satisfaire n'aurait pas forcément tout empêché, mais aurait réduit la probabilité de l'attaque, limité son impact ou accéléré sa détection :