Abordons l'attaque de la chaîne d'approvisionnement tj-actions/changed-files. Lisez la suite pour un résumé (TL;DR), ce que vous devez faire, ce qui s'est passé et des informations complémentaires.
TL;DR
- Le tj-actions/changed-files Une GitHub Action, actuellement utilisée dans plus de 23 000 dépôts, a été compromise, faisant fuiter des secrets via les journaux de workflow et impactant des milliers de pipelines CI.
- Toutes les versions taguées ont été modifiées, rendant l'épinglage basé sur les tags non sécurisé. Les dépôts publics sont les plus exposés, mais les dépôts privés devraient également vérifier leur exposition.
- Les mesures immédiates comprennent l'identification des workflows affectés, la suppression de toutes les références à l'action compromise, la rotation des secrets et la vérification des journaux pour toute activité suspecte.
Réponse d'Aikido : Nous avons publié une nouvelle règle SAST qui signale toute utilisation avec une gravité critique (Score 100). Aikido peut épingler automatiquement vos actions Github pour prévenir ce type d'exploit à l'avenir.
Pour commencer, que devriez-vous faire ?
Vérifier si vous êtes concerné(e) par le/la j-actions/changed-files attaque de la chaîne d'approvisionnement :
A) Rechercher tj-actions dans votre base de code
B) Utilisez cette requête Github pour trouver les références à l'action GitHub affectée dans les dépôts de votre organisation (remplacez [votre-organisation] par le nom de votre organisation).
Cesser d'utiliser tj-actions/changed-files dès que possible et supprimer toutes les références à l'action compromise.
Faites pivoter les secrets des pipelines affectés et vérifiez les logs de vos services (tiers) pour détecter toute utilisation suspecte des tokens exposés ; concentrez-vous d'abord sur les repos dont les logs des runners CI sont accessibles publiquement.
Abordons l'attaque : Que s'est-il passé ?
Un incident de sécurité impliquant le tj-actions/changed-files Une GitHub Action a été identifiée à la mi-mars 2025. Des attaquants ont introduit du code malveillant qui a exposé des secrets CI/CD via les journaux de workflow. Signalé pour la première fois par Step Security, l'incident s'est vu attribuer la référence CVE-2025-30066.
Bien qu'il subsiste un manque de clarté sur ce qui s'est passé et comment le code a été poussé, la plupart des rapports indiquent que l'attaquant a compromis un jeton d'accès personnel (PAT) GitHub lié au compte tj-actions-bot, ce qui lui a permis d'apporter des modifications non autorisées, d'injecter du code malveillant et de manipuler les balises de version.
Chronologie des événements :
Avant le 14 mars 2025 : Le code malveillant a commencé à affecter les dépôts concernés, entraînant la fuite de secrets dans les journaux publics.
14 mars 2025 : Des chercheurs en sécurité ont identifié la compromission et ont sensibilisé le public.
15 mars 2025 : Le script malveillant hébergé sur GitHub Gist a été supprimé. Le dépôt compromis a été brièvement mis hors ligne pour annuler les modifications malveillantes et a ensuite été restauré sans les commits nuisibles.
15 mars 2025 : Le dépôt est de nouveau en ligne avec une déclaration sur l'attaque ; le mainteneur a également commenté l'attaque.
Bien que la menace immédiate ait été traitée, les versions mises en cache de l'action compromise pourraient toujours présenter un risque. Une atténuation proactive est nécessaire pour sécuriser les identifiants sensibles.
Quel est l'impact de l'attaque tj-actions/changed-files ?
Dépôts utilisant des technologies populaires tj-actions/changed-files, en particulier les publics, risquent de divulguer les secrets utilisés dans leurs pipelines. Ces secrets ont été exposés dans les logs de workflow par le code malveillant de l'acteur de la menace. Bien qu'aucune exfiltration de données externe confirmée n'ait eu lieu, les logs des dépôts publics pourraient être accessibles par des acteurs malveillants. Les dépôts privés sont moins affectés mais devraient tout de même évaluer leur exposition et faire pivoter les secrets s'ils sont concernés.
Dépôts publics : Risque élevé en raison de l'exposition publique des logs de workflow contenant des secrets.
Dépôts privés : Risque plus faible, mais l'exposition de secrets actifs dans vos logs de workflow reste un risque significatif.
Utilisateurs d'actions mises en cache : Les workflows qui ont mis en cache l'action compromise peuvent rester à risque jusqu'à ce que les caches soient purgés.
Comment Aikido peut-il vous aider ?
Nous avons publié un nouvelle règle SAST qui signale toute tj-actions/changed-files utilisation avec gravité critique (Score 100). Si vous utilisez déjà Aikido, vous êtes couvert. Si vous n'avez pas de compte Aikido, vous pouvez vous connecter et analyser votre configuration en quelques secondes.
Au-delà de cette attaque, Aikido épingle également automatiquement vos actions Github pour prévenir ce type d'exploit à l'avenir.
Et notre flux de menaces de logiciels malveillants propriétaire – Aikido Intel – détecte les logiciels malveillants dans les 3 minutes suivant leur publication sur npm, pypi, et sera bientôt étendu aux actions Github.
Nous facilitons la gestion de votre chaîne d'approvisionnement logicielle, et vous fournissons les alertes les plus précoces concernant les nouveaux risques et attaques.
En savoir plus sur l'attaque :
- Une analyse détaillée de “Comprendre et recréer l'attaque de la chaîne d'approvisionnement tj-actions/changed-files” par James Berthoty, analyste chez Latio. James vous montre également comment recréer l'attaque dans votre propre environnement pour tester votre capteur (soyez prudent).
- Step Security, qui a signalé l'attaque en premier, a publié une analyse d'enquête, “Détection Harden-Runner : l'action tj-actions/changed-files est compromise”
- Voir CVE-2023-51664
Sécurisez votre logiciel dès maintenant.


.jpg)

