Skip to main content

Meilleures pratiques pour le maintien des dépendances

Conseils et recommandations pour maintenir les dépendances que vous utilisez, y compris les produits de sécurité de GitHub qui peuvent vous aider.

Meilleures pratiques pour le maintien des dépendances

Rester à jour sur les dépendances est essentiel pour maintenir un environnement logiciel sécurisé. Voici quelques recommandations :

Adopter des outils de gestion des dépendances axés sur la sécurité

  • Utilisez et configurez des outils qui analysent vos dépendances pour détecter les vulnérabilités et suggèrent automatiquement des mises à jour.
  • Vérifiez que ces outils sont intégrés à votre pipeline CI/CD pour la surveillance et la mise à jour continues.
  • Configurez vos processus pour suivre le contrôle de version sémantique pour éviter les modifications cassantes.

Effectuer des analyses et des audits réguliers de la vulnérabilité

  • Planifiez des audits de dépendances réguliers et des analyses de dépendances pour identifier les dépendances obsolètes ou vulnérables.

Automatiser la gestion des correctifs de sécurité

  • Configurez vos outils de gestion des dépendances pour appliquer automatiquement des correctifs de sécurité.
  • Configurez des demandes de tirage automatisées pour les mises à jour de sécurité critiques afin qu’elles puissent être examinées et fusionnées rapidement.

Appliquer des stratégies sur l’utilisation des dépendances

  • Implémentez des stratégies qui appliquent l’utilisation des versions sécurisées des dépendances.
  • Utilisez des outils qui peuvent bloquer la fusion des demandes de tirage s’ils introduisent des vulnérabilités ou ne parviennent pas à mettre à jour les dépendances vulnérables.

Intégrer des tests de sécurité dans lesCI/CD

  • Incorporez des outils de test de sécurité dans votre pipeline CI/CD.
  • Vérifiez que les mises à jour des dépendances sont testées automatiquement pour la conformité de la sécurité.

Utiliser les fichiers de verrouillage et l’épinglage des dépendances

  • Utilisez des fichiers de verrouillage (par exemple, package-lock.json, yarn.lock, Pipfile.lock) pour épingler les dépendances aux versions sécurisées connues.
  • Mettez régulièrement à jour et passez en revue ces fichiers de verrou pour vous assurer que les dépendances sont à jour sans problèmes de sécurité inattendus.

Suivre les avis de sécurité

  • Abonnez-vous aux avis de sécurité pour les langages et les frameworks que vous utilisez.
  • Automatisez l’intégration des avis dans votre flux de travail de développement pour rester informé des nouvelles vulnérabilités.
  • Gardez un œil sur les tableaux de bord fournis par vos outils de gestion des dépendances.
  • Tenez compte des mises à jour critiques, en particulier des correctifs de sécurité, et hiérarchiser celles-ci.

contrôle de version etde gestion des modifications

  • Suivez les modifications de dépendance dans le contrôle de version (par exemple, par le biais de demandes de tirage automatisées).
  • Effectuez des révisions régulières du code pour vous assurer que les mises à jour n’introduisent pas de nouvelles vulnérabilités.

Formation et sensibilisation

  • Informez vos équipes de développement et d’exploitation sur l’importance de maintenir les dépendances sécurisées et à jour.
  • Fournissez une formation sur l’utilisation efficace des outils de gestion des dépendances et de sécurité.

Plan de réponse aux vulnérabilités

  • Disposer d’un plan de réponse aux incidents clair pour déterminer quand des vulnérabilités sont identifiées dans les dépendances.
  • Assurez-vous que l’équipe sait comment résoudre et résoudre rapidement les problèmes de sécurité.

En suivant ces pratiques, vous pouvez réduire considérablement le risque posé par les dépendances obsolètes et vulnérables et maintenir un environnement plus sécurisé.

Comment GitHub peut aider

GitHub offre plusieurs fonctionnalités de sécurité qui peuvent aider à maintenir la sécurité de vos bases de code :

Graphique de dépendance

  • Fournit une représentation tabulaire des dépendances de votre projet.
  • Le graphique vous aide à comprendre les dépendances de votre projet et GitHub l'utilise pour identifier les dépendances vulnérables.
  • Pour plus d’informations, consultez « À propos du graphe de dépendances ».

Vérification des dépendances

  • Est intégré à votre pipeline CI/CD et vous permet d’intercepter les dépendances non sécurisées dans votre code à chaque demande de tirage. Pour plus d’informations, consultez « À propos de la vérification des dépendances ».

  • Le action de révision des dépendances est un outil qui peut bloquer la fusion des demandes d'extraction si elles introduisent des vulnérabilités ou ne parviennent pas à mettre à jour les dépendances vulnérables. Pour plus d'informations, voir « À propos des action de révision des dépendances » dans À propos de la vérification des dépendances.

Dependabot

avis de sécurité

  • rapport de vulnérabilité privé: permet aux responsables de la maintenance de discuter en privé, de corriger et de publier des avis de sécurité pour leurs référentiels. Pour plus d’informations, consultez « Signalement privé d’une vulnérabilité de sécurité ».

  • GitHub Advisory Database: Une base de données d'avis de sécurité utilisée par Dependabot pour identifier les vulnérabilités dans vos dépendances. Pour plus d’informations, consultez « À propos de la base de données GitHub Advisory ».

Vue d’ensemble de la sécurité

  • Vous pouvez garder un œil sur les tableaux de bord de la page vue d’ensemble de la sécurité, qui fournissent des informations sur le paysage et la progression de votre organisation ou de votre entreprise. Il aide les utilisateurs à identifier les dépôts qui nécessitent une attention particulière et à surveiller la santé de leur programme de sécurité des applications. Pour plus d'informations, voir À propos de la vue d’ensemble de la sécurité.

Stratégie de sécurité

  • Vous pouvez créer un fichier SECURITY.md dans votre référentiel qui décrit les stratégies et procédures de sécurité pour signaler et gérer les problèmes de sécurité. Pour plus d’informations, consultez « Ajout d’une stratégie de sécurité à votre dépôt ».

Pour obtenir des conseils supplémentaires sur l’ensemble de la chaîne d’approvisionnement à l’aide des fonctionnalités de sécurité de GitHub, consultez Sécurisation de votre chaîne d’approvisionnement de bout en bout.