Sécurité · Mixte

La chaîne d'approvisionnement du code

En une ligne : Votre code est une minorité de ce qui tourne en production — la plupart du risque réside dans les paquets que vous avez apportés et les outils qui les ont construits.

Quoi faire avec les dépendances

Verrouillage des versions dans un fichier de verrouillage, une mise à jour régulière planifiée plutôt que de grands sauts une fois par an, et une analyse automatique des vulnérabilités dans le pipeline de build.

Vérifiez avant d'ajouter : quand a-t-il été mis à jour pour la dernière fois, combien de mainteneurs, et combien de dépendances il entraîne. Un paquet qui tire des dizaines de paquets pour une fonction n'est pas une économie.

Le pipeline lui-même est une cible

Les outils de build ont accès aux secrets et à la production. Limitez les permissions, ne faites pas tourner de code non fiable dans un contexte privilégié, et établissez que les scripts d'installation ne tournent pas sur les serveurs de build sans contrôle.

Savoir ce qui tourne

Une liste de composants à jour par publication. Quand une vulnérabilité grave est publiée, la première question est « l'avons-nous ? » — et qui n'a pas de liste passe une journée à chercher.

Pour aller plus loin

Signez les paquets et les images, et vérifiez la signature avant le déploiement. Et dans le dépôt : exigez une revue par les pairs, bloquez les envois directs dans la branche principale et vérifiez l'identité de qui pousse. La plupart des incidents de la chaîne d'approvisionnement commencent par un compte de développeur compromis, pas par une vulnérabilité dans le code.