Skip to main content

Prévention de l’exposition d’identifiants dans du code

Objectifs de formation

Une fois cette unité terminée, vous pourrez :

  • Identifier pourquoi l’exposition des secrets peut être un problème dans votre organisation
  • Expliquer comment empêcher l’exposition accidentelle de secrets

Exposition des identifiants

L’une des violations les plus courantes en matière de sécurité des données provient des données sensibles stockées dans le code que vous développez. Pour cette raison, vous devez apprendre à protéger ces données, y compris les identifiants, les clés de chiffrement, etc. S’ils tombaient entre de mauvaises mains, ces derniers pourraient en effet être utilisés par des attaquants pour compromettre les données sensibles de votre organisation.

Si vous êtes développeur, vous êtes responsable du code et des scripts qui accèdent aux piles technologiques telles que le cloud, les applications et d’autres outils. Toutes ces instances nécessitent généralement des identifiants, et il est essentiel que vous les protégiez contre toute exposition. 

Les groupes de développement qui travaillent sur le développement cyclique fixent souvent des dates butoirs ambitieuses et sont souvent contraints de travailler très rapidement. Les développeurs peuvent utiliser GitHub ou d’autres référentiels de code open source comme moyen de collaborer les uns avec les autres et de mener à bien des projets. 

Ces référentiels de code peuvent présenter un risque d’exposition des identifiants, car les développeurs, pressés, codent parfois leurs identifiants en dur dans leur code en tant que raccourci. Une fois le code rendu public, les identifiants de l’organisation deviennent alors disponibles dans le domaine public. Une fois que vous avez validé et publié du code, il est difficile de le supprimer. En outre, même si votre système de contrôle de versions vous permet de supprimer la validation du code compromis, il est possible qu’un autre développeur ou service ait extrait une copie du code compromis avant sa suppression. 

Cela signifie que toute personne sachant utiliser le contrôle des versions ou ayant effectué une copie du code peut récupérer ces identifiants et y accéder, même si le code est ancien. S’ils n’appliquent pas de conventions et de pratiques de codage sécurisées, les développeurs peuvent accidentellement révéler des identifiants à des personnes non autorisées, leur permettant d’accéder aux systèmes centraux. 

C’est une erreur facile et courante que commettent les développeurs lorsqu’ils se précipitent pour proposer leur nouvelle fonctionnalité aux clients. Cela signifie que vous devez veiller à ne jamais inclure d’identifiants dans du code. 

Journaux de site Web avec nom d’utilisateur et mot de passe exposés sous forme lisible.

Fuite d’identifiants

Les services de suivi logiciel tels que GitHub, Bitbucket et SourceForge travaillent depuis des années pour atténuer les problèmes de fuite d’identifiants. Certains de ces services alertent même l’utilisateur s’il transmet un jeton d’accès à un référentiel public et révoquent ces jetons afin qu’ils ne puissent pas être utilisés pour effectuer des actions non autorisées. Malgré cela, il est encore courant que les référentiels incluent par erreur des jetons et des clés d’interface de programmation d’application (API).

Votre organisation est probablement consciente de ce problème. Par conséquent, votre équipe de sécurité doit vérifier régulièrement si des ID utilisateur, des clés d’API, des jetons d’accès, des fichiers de base de données et d’autres clés ont été accidentellement exposés dans du code sur des référentiels publics ou des instances cloud. 

Comment empêcher l’exposition d’identifiants

Tout comme il est recommandé d’intégrer le cycle de vie de développement sécurisé à votre processus de développement, il est également conseillé d’instaurer de bonnes pratiques de gestion des identifiants à chaque étape de vos processus de codage. N’oubliez pas deux points importants afin de protéger votre code contre toute exposition des identifiants. 

  • Stockez les secrets uniquement dans le service de gestion des secrets approuvé de votre organisation.
  • N’incluez jamais de secrets dans votre code.

Dans le parcours Mise en œuvre de la gestion des secrets dans votre organisation, et plus précisément les modules Infrastructure à clés publiques et chiffrement et Gestion des clés, nous présentons des bonnes pratiques vouées à vous aider à gérer les clés qui protègent vos secrets, ainsi que la façon de protéger ces secrets en transit et au repos.

Conclusion

Dans ce module, vous avez découvert des méthodes de création et de protection de mots de passe forts, ainsi que les avantages des gestionnaires de mots de passe. Vous avez également appris à mettre en œuvre le principe du moindre privilège lors de la gestion des accès privilégiés, et l’importance de surveiller vos utilisateurs et vos comptes au fil du temps. 

Avec les connaissances que vous avez acquises dans le module Secrets organisationnels, vous devriez maintenant avoir une meilleure idée des mesures à mettre en place pour protéger les secrets de votre organisation, y compris ses identifiants d’accès. Dans le module suivant, Infrastructure à clés publiques et chiffrement, nous abordons les méthodes de protection de vos données en transit et au repos. Pour en savoir plus sur les meilleures pratiques en matière de cybersécurité et accéder aux conseils de véritables professionnels de la sécurité, visitez le centre de formations sur la cybersécurité sur Trailhead. 

Ressources

Formez-vous gratuitement !
Créez un compte pour continuer.
Qu’est-ce que vous y gagnez ?
  • Obtenez des recommandations personnalisées pour vos objectifs de carrière
  • Mettez en pratique vos compétences grâce à des défis pratiques et à des questionnaires
  • Suivez et partagez vos progrès avec des employeurs
  • Découvrez des opportunités de mentorat et de carrière