Alors que la surface d'attaque des environnements informatiques de la plupart des entreprises s'étend aux services et infrastructures basés sur le cloud, il devient plus difficile que jamais de sécuriser les actifs et d'éviter les fuites de données. Alors que de plus en plus d'entreprises deviennent dirigées par des logiciels, les services d'hébergement comme GitHub offrent des avantages tangibles, mais leur utilisation comporte également des cyber-risques. Toujours prêts à adapter leurs tactiques, les acteurs de la menace recherchent de plus en plus des failles de sécurité dans la façon dont les entreprises utilisent GitHub pour compromettre des actifs sensibles. Cet article fournit un guide des meilleures pratiques pour la sécurité GitHub.
Risques de sécurité GitHub
Les projets de développement de logiciels d'aujourd'hui étant caractérisés par des niveaux élevés de collaboration et des développeurs travaillant à partir d'emplacements distants disparates, Github est une plate-forme d'hébergement de code inestimable qui facilite ces flux de travail. GitHub rend la collaboration plus amusante et facilite grandement le contrôle des versions. Ce n'est pas étonnant que 84% des entreprises du Fortune 100 utilisent GitHub.
Pour reprendre une phrase du PDG de Microsoft, « toutes les entreprises sont des éditeurs de logiciels ». Les entreprises modernes codent des logiciels pour des usages internes et pour des clients exigeants dont l'utilisation du smartphone a créé une énorme demande d'applications mobiles.
Dans GitHub, il existe des dépôts publics auxquels n'importe qui sur Internet peut accéder ; les développeurs les utilisent souvent pour montrer leurs compétences, tandis que les entreprises peuvent utiliser des référentiels publics pour héberger du code pour des projets open source. Il existe également des référentiels privés auxquels seules certaines personnes doivent accéder, car ils contiennent du code pour des projets internes.
Les risques de sécurité de GitHub peuvent provenir de référentiels privés auxquels accèdent des pirates cherchant à trouver des données précieuses et confidentielles. Un autre risque est que des informations privées se retrouvent dans des référentiels accessibles au public. Au fur et à mesure que GitHub devenait plus populaire, les cybercriminels ont commencé à profiter de cette popularité et à cibler activement les faiblesses de sécurité.
Pour prendre un exemple récent des risques de sécurité impliqués, un acteur malveillant a utilisé jetons d'application OAuth volés d'accéder à des référentiels privés dans des dizaines d'organisations en avril 2022. Un peu plus d'un an plus tôt, un rapport a révélé que deux millions de secrets d'entreprise ont été détectés et accessibles publiquement sur GitHub. Ces secrets d'entreprise comprenaient des clés API, des clés privées, des certificats, des noms d'utilisateur et des mots de passe.
Meilleures pratiques de sécurité GitHub
Mettre en œuvre des contrôles d'accès solides
Le renforcement des contrôles d'accès fait une énorme différence dans la réduction du risque de compromission du compte GitHub. En particulier, l'authentification multifacteur offre des avantages largement documentés dans la sécurisation des comptes en exigeant deux ou plusieurs catégories distinctes de preuves pour prouver l'identité d'un utilisateur avant qu'il n'ait accès à son compte.
La façon dont vous implémentez l'authentification multifacteur fait également une différence dans la force des contrôles d'accès aux comptes. Les acteurs de la menace ont déployé diverses méthodes pour contourner les implémentations basées sur les SMS, où les titulaires de compte reçoivent un code à usage unique sur leurs numéros de téléphone mobile pour y accéder. De meilleures options incluent des jetons de sécurité physiques en possession d'un utilisateur ou des jetons virtuels codés en dur dans un appareil enregistré.
Une autre astuce pour renforcer l'accès consiste à auditer régulièrement les comptes ayant accès à vos référentiels et à révoquer l'accès pour les anciens employés ou sous-traitants. Souvent, les gens utilisent leurs comptes GitHub personnels à des fins professionnelles, alors faites attention aux e-mails personnels lors des audits et révoquez-les s'ils n'appartiennent pas à un employé actuel.
Encouragez les utilisateurs à inspecter régulièrement les journaux de sécurité
Les comptes GitHub sont livrés avec une fonctionnalité de journal de sécurité utile accessible en accédant à Paramètres -> Archiver -> Journal de sécurité. Ce journal contient les détails de toutes les actions effectuées sur un compte au cours des 90 derniers jours. Une variété d'opérateurs permet aux développeurs d'inspecter les journaux de sécurité pour des actions spécifiques, telles que des événements d'authentification ou des ressources en cours de modification.
Intégrez en 30 minutes la base de données sur la cybercriminalité la plus accessible et complète au monde dans votre programme de cybersécurité.
Il vaut la peine d'encourager les développeurs à inspecter régulièrement ce journal dans les référentiels utilisés au sein de votre organisation. Les événements indiquant une activité malveillante peuvent devenir évidents lors de la recherche dans ces journaux.
Jamais de secrets codés en dur
Les rapports sur les pratiques de sécurité de GitHub révèlent avec une régularité surprenante que les développeurs codent en dur les secrets dans les référentiels GitHub. Ces secrets incluent les clés API, les informations d'identification pour les bases de données et diverses clés privées. Étant donné que les développeurs peuvent faire des erreurs de temps en temps, il vaut la peine d'utiliser un outil comme git-secrets pour analyser par programme les validations de code et les messages de validation associés à la recherche de secrets. Si un secret est détecté, git-secrets rejette la validation de votre référentiel.
Faites attention aux risques liés aux applications du marché GitHub
De nombreuses équipes de développement réalisent rapidement la valeur de l'utilisation du marché GitHub pour trouver des applications et des outils tiers qui affinent leurs flux de travail. Ces applications peuvent inclure des outils de révision de code ou des logiciels de gestion de projet. Étant donné que les applications du marché GitHub sont codées par des développeurs tiers extérieurs à votre organisation, il convient de prendre des précautions supplémentaires et de reconnaître leurs risques de sécurité potentiels.
Lorsque vous ajoutez une application de marché à votre flux de travail, appliquez le principe du moindre privilège. L'accès au moindre privilège signifie que l'application n'obtient que les autorisations minimales nécessaires pour effectuer ses tâches ou fonctionnalités pertinentes sur votre base de code ou votre flux de travail. Il vaut également la peine de faire preuve de diligence raisonnable auprès de l'auteur de l'application pour s'assurer qu'il a établi un niveau de fiabilité et de sécurité au sein de la communauté GitHub.
Comprendre les dépendances et corriger les vulnérabilités
Les risques de sécurité liés aux dépendances peuvent rapidement échapper à tout contrôle en raison de leur nombre dans la plupart des projets. Même une base de code avec peu de dépendances directes peut introduire des dépendances transitives du fait qu'un composant directement référencé s'appuie sur une autre bibliothèque ou un autre framework. De plus, à mesure que l'open source s'accélère, les référentiels privés exploitent de plus en plus les fonctionnalités facilement disponibles à partir de composants tiers.
Pour comprendre les dépendances, GitHub inclut des outils tels que le graphique et la révision des dépendances pour cartographier les choses et permettre aux développeurs de voir facilement ce qu'ils introduisent dans les bases de code, y compris les vulnérabilités et les informations de licence. Lorsqu'il est associé à un outil comme Dependabot, vous pouvez non seulement comprendre les dépendances, mais également corriger les vulnérabilités en obtenant les versions les plus récentes et les plus sécurisées des composants.
Mettez en place la surveillance des fuites de données
Une bonne pratique souvent recommandée pour renforcer la sécurité de Github consiste à utiliser l'édition Enterprise. L'édition Enterprise permet à votre entreprise d'auto-héberger GitHub dans votre environnement réseau privé sur site. Cependant, ce qui est souvent ignoré dans cette recommandation, c'est qu'elle s'accompagne de considérations de sécurité supplémentaires, telles que les pare-feu, les politiques réseau, IAM, la surveillance et les VPN.
Pour les entreprises qui ne sont peut-être pas en mesure d'implémenter en toute sécurité GitHub sur site ou qui préfèrent simplement l'offre hébergée dans le cloud, les solutions de surveillance des fuites de données peuvent surveiller vos référentiels à la recherche d'informations accidentellement divulguées. Être capable de surveiller GitHub pour les fuites de données vous offre une cybersécurité proactive afin que vous puissiez résoudre le problème avant que vous ne soyez piraté.
Plateforme de surveillance des fuites de données de Flare
Flare fournit une détection des fuites de données 24 heures sur 7 et XNUMX jours sur XNUMX pour les référentiels GitHub, les informations d'identification des employés sur le Web sombre, profond et clair, et le code ou d'autres secrets publiés sur des sites de partage anonymes (par exemple, Pastebin).
Obtenez votre démo ici.