Technologie

CISA, l’agence qui défend les réseaux fédéraux US, a laissé ses clés AWS sur GitHub

Susan Hill

Un chercheur de GitGuardian nommé Guillaume Valadon parcourait des commits publics sur GitHub lorsqu’il est tombé sur un dépôt dont le nom ressemblait à une bourde : Private-CISA. Il appartenait à un sous-traitant de la Cybersecurity and Infrastructure Security Agency, l’organisme fédéral chargé de défendre les réseaux du gouvernement américain. À l’intérieur, on trouvait des identifiants d’administration pour trois comptes AWS GovCloud, un fichier CSV contenant en clair les noms d’utilisateur et mots de passe de dizaines de systèmes internes de la CISA, ainsi que des notes pas à pas sur la manière dont l’agence construit, teste et déploie ses propres logiciels. Le sous-traitant avait également désactivé la fonctionnalité de GitHub qui analyse les pushes à la recherche de secrets exposés.

Deux noms de fichiers dans l’arborescence Private-CISA concentrent à eux seuls l’essentiel des dégâts. Le premier, importantAWStokens, énumère les clés administrateur des trois serveurs GovCloud. Le second, AWS-Workspace-Firefox-Passwords.csv, est exactement ce qu’il annonce : un export de mots de passe Firefox, en clair, couvrant les espaces de travail internes de la CISA, l’artifactory de paquets de code interne de l’agence, et son environnement Landing Zone DevSecOps, l’espace contrôlé où les équipes fédérales écrivent et relisent du code à sensibilité quasi classifiée. Aucune couche de chiffrement, aucune référence à un coffre-fort, aucune logique de rotation de jetons. C’est un CSV.

AWS GovCloud est la région cloud isolée qu’Amazon opère pour les charges du gouvernement américain devant rester dans le cadre de conformité FedRAMP High et équivalents. Les clés de niveau administrateur dans cette région ne sont pas des identifiants cloud ordinaires. Ce sont les clés qui permettent à un attaquant de créer de nouveaux comptes, de modifier la configuration des journaux et de déployer de l’infrastructure dans une région censée rester hermétique à l’internet public. Quiconque a copié le fichier importantAWStokens pendant les six mois où il est resté en accès public a pu pénétrer directement dans cet environnement.

Le schéma du sous-traitant, pour ceux qui ont ensuite épluché l’historique de commits, ressemblait moins à une malveillance qu’à de la simple commodité. Les pushes suivaient la cadence d’une personne synchronisant des fichiers entre un ordinateur portable professionnel et une machine personnelle via Git. Pour que ce flux de travail fonctionne sans déclencher les alarmes de scan de secrets, le propriétaire du compte a dû désactiver manuellement la protection par défaut des pushes sur GitHub, un paramètre qui existe précisément pour éviter ce type d’accident. Le verrou a été levé, et les commits ont commencé.

La déclaration officielle de la CISA présente l’épisode comme circonscrit. « Rien n’indique qu’une donnée sensible ait été compromise à la suite de cet incident », a déclaré l’agence, ajoutant qu’elle mettrait en place des garde-fous supplémentaires. C’est une affirmation plus étroite qu’elle n’en a l’air. Pour savoir qu’aucun compte GovCloud n’a été détourné sur six mois, un auditeur doit reprendre chaque entrée CloudTrail, chaque modification de rôle IAM et chaque connexion aux espaces de travail sur cette fenêtre — et l’agence n’a pas dit qu’elle l’avait fait, seulement qu’elle ne voit pas de preuve à ce stade. Des observateurs indépendants ont également relevé que les clés d’accès AWS divulguées sont restées valides pendant environ deux jours après le retrait du dépôt, soit l’intervalle durant lequel toute copie effectuée auparavant aurait encore fonctionné.

C’est la même agence qui pilote le programme fédéral Secret Sprawl, qui publie à l’attention des autres administrations des recommandations sur l’hygiène des identifiants et qui n’a cessé d’avertir les opérateurs privés que l’exposition de jetons d’API dans le contrôle de version est l’un des points d’entrée les plus courants pour les groupes de rançongiciel. Son propre catalogue Known Exploited Vulnerabilities, celui que les sous-traitants américains sont légalement tenus de suivre, classe les identifiants cloud non renouvelés comme une vulnérabilité à sévérité élevée. Le dépôt Private-CISA cochait chacun des critères que l’agence utilise pour signaler aux autres qu’ils ont failli.

Valadon, qui travaille au sein de l’équipe de recherche de GitGuardian, a dit que la trouvaille restait difficile à digérer même après vérification. « Des mots de passe stockés en clair dans un CSV, des sauvegardes dans Git, des commandes explicites pour désactiver la détection de secrets de GitHub », a-t-il écrit. « Honnêtement, je pensais que tout cela était faux avant d’analyser le contenu en profondeur. C’est, sans hésiter, la pire fuite à laquelle j’ai assisté dans ma carrière. » GitGuardian a alerté la CISA le 15 mai, et le dépôt a été rendu privé au cours du week-end qui a suivi.

Ce que la CISA n’a pas encore dit publiquement, c’est si les comptes GovCloud affectés ont été intégralement renouvelés, quels systèmes internes figurant sur le CSV de mots de passe ont vu leurs identifiants changés, et si l’Office of Inspector General du Department of Homeland Security ouvrira un examen formel. Le sous-traitant, qui travaillerait pour la société fédérale de cybersécurité Nightwing, n’a pas été nommé. Le dépôt a été créé le 13 novembre 2025 et retiré à la mi-mai 2026, ce qui porte la fenêtre d’exposition publique à six mois et deux jours. Le chiffre que le public est en droit d’attendre ensuite, c’est combien de ces journées les clés ont effectivement été utilisées.

Étiquettes: , , , , , , , ,

Discussion

Il y a 0 commentaire.