---
title: Attaque de la Chaîne d'Approvisionnement
created: 2026-06-06
updated: 2026-06-06
type: concept
tags: [security, tech, devops]
confidence: high
contested: false
sources: [synthesized]
---
# ⛓️ Attaque de la Chaîne d'Approvisionnement (Supply Chain Attack)

## Définition Courte
Type de cyberattaque qui **cible les dépendances** d'un logiciel (bibliothèques, packages, outils de build) plutôt que directement la cible finale, compromettant des milliers d'applications en aval.

## Explication Détaillée
**Vecteurs d'attaque** :
- **Compromission de package** : un attaquant publie une version malveillante d'une lib populaire (ex: event-stream sur npm, 2018).
- **Dépendance transitive piégée** : vous importez une lib qui en importe 50 autres, dont une piégée.
- **Compromission de maintainer** : compte GitHub piraté (XZ Utils backdoor, 2024).
- **Build pipeline** : altération pendant la CI/CD (SolarWinds, 2020).
- **Compromission de registry** : npm, PyPI piratés (rare mais catastrophique).

**Pourquoi c'est dévastateur** : une seule compromission touche tous les projets qui utilisent la dépendance. L'effet domino est massif.

## Cas d'Usage Réels
- **Log4Shell (2021)** : Log4j, utilisé par des millions d'apps Java.
- **XZ Utils (2024)** : backdoor dans sshd via la lib de compression.
- **SolarWinds (2020)** : 18 000 clients compromis via une mise à jour signée.
- **event-stream (2018)** : wallet Bitcoin volé via une lib npm.

## Stratégies de Défense
- **Pin des versions exactes** (jamais `^` ou `~`).
- **Lock files** commités.
- **SBOM** (Software Bill of Materials) : savoir exactement ce qu'on utilise.
- **Signature de paquets** (Sigstore, GPG).
- **Audit de dépendances** (npm audit, Snyk, Dependabot, Renovate).
- **Sandbox des builds** (BuildKit, ephemeral CI).
- **Provenance vérifiable** (SLSA framework).

## Pages Liées
- [[checklist-mise-en-production]]
- [[securisation-home-lab]]
- [[ci-cd]]
- [[open-source]]
- [[checklist-securite-vps]]

## Questions Ouvertes
- Peut-on vraiment se protéger à 100% sans auditer chaque dépendance à la main ?
- Quel est l'avenir de la signature généralisée de paquets (Sigstore) ?
