Attaque de chaîne d’approvisionnement Trivy s’étend aux dépôts Docker et GitHub

Attaque de chaîne d'approvisionnement Trivy s'étend aux dépôts Docker et GitHub

Les hackers du groupe TeamPCP, responsables de l’attaque par chaîne d’approvisionnement ciblant Aqua Security, ont continué à déployer des images Docker malveillantes et à prendre le contrôle de l’organisation GitHub de la société, modifiant ainsi plusieurs dépôts.

Cette attaque fait suite à une compromission du pipeline de construction de GitHub pour Trivy, le scanner d’Aqua Security, permettant ainsi la distribution d’un malware spécialisé dans le vol de données. L’attaque a été étendue à Docker Hub durant le dernier week-end.

Avec plus de 33 800 étoiles sur GitHub, Trivy est largement adopté pour identifier les vulnérabilités, les mauvaises configurations et les secrets exposés dans divers artefacts logiciels. Selon un communiqué de la société de sécurité Socket publié dimanche, des artefacts Trivy compromis ont été repérés sur Docker Hub.

Les chercheurs de Socket ont indiqué que les nouvelles balises d’image 0.69.5 et 0.69.6 avaient été publiées le 22 mars sans lors des sorties sur GitHub ni balises correspondantes. Leur analyse révèle que ces images contiennent des indicateurs de compromission liés au malware volé par TeamPCP après leur infiltration dans l’organisation GitHub d’Aqua Security.

Il est aussi noté que la dernière version officielle de Trivy est 0.69.3 et il est recommandé aux organisations de ne pas compter uniquement sur les noms de balises pour garantir l’intégrité de leurs dépôts, étant donné que ces balises ne sont pas immuables.

Infiltration de GitHub d’AquaSec

Le 20 mars, Aqua Security a admis qu’un acteur malveillant avait accédé à son organisation GitHub en raison d’une isolation insuffisante d’un précédent incident sur le même outil survenu en début de mois.

Aqua a expliqué qu’ils avaient changé les clés secrètes et les jetons, mais que le processus n’était pas totalement sécurisé, permettant aux attaquants d’accéder à des jetons récemment rafraîchis.

Cette faille a permis aux attaquants d’injecter du code destiné à récolter des informations dans Trivy, engendrant ainsi la publication de versions malveillantes de cet outil. Aqua a réagi en diffusant de nouvelles versions sûres de Trivy le 20 mars et en faisant appel à la société de réponse aux incidents Sygnia pour les aider dans la remédiation et l’analyse judiciaire.

Cependant, un nouvel avis publié récemment indique qu’Aqua a décelé des activités suspectes supplémentaires le 22 mars, suggérant que les mêmes acteurs auraient rétabli un accès non autorisé et réalisé des modifications inadéquates dans leurs dépôts.

Malgré cette nouvelle menace, Aqua a assuré que Trivy n’était pas impacté. Un rapport d’OpenSourceMalware, une plateforme d’intelligence sur les malwares, indique que TeamPCP avait accédé à l’organisation GitHub aquasec-com, où Aqua héberge son code propriétaire, distinct de l’organisation publique aquasecurity.

Les hackers, utilisant un script d’automatisation, auraient pris approximativement deux minutes pour ajouter le préfixe tpcp-docs- à l’ensemble des 44 dépôts de l’organisation, modifiant toutes les descriptions pour indiquer que « TeamPCP possède Aqua Security ».

Les chercheurs pensent que les attaquants ont obtenu l’accès via un compte de service nommé Argon-DevOps-Mgt, qui avait des autorisations sur les deux organisations GitHub d’Aqua Security.

Ce compte ciblé autorise des actions basées sur un Personal Access Token (PAT) d’un utilisateur standard au lieu d’une application GitHub. Cela pose problème, car l’authentification PAT fonctionne comme un mot de passe et expire moins rapidement que celle d’une application GitHub. De plus, un compte de service est souvent utilisé pour des tâches automatisées et ne bénéficie pas de la protection multi-facteur (MFA).

Pour confirmer que le compte avait des permissions d’administrateur sur les deux organisations GitHub d’AquaSec, TeamPCP a créé une nouvelle branche update-plugin-links-v0.218.2 dans le dépôt public aquasecurity/trivy-plugin-aqua, qu’ils ont ensuite supprimée presque immédiatement.

Les recherches suggèrent que les hackers auraient récupéré le PAT pour le compte de service Argon-DevOps-Mgt grâce au TeamPCP Cloud stealer, capable de collecter des jetons GitHub, des clés SSH, des identifiants cloud et des variables d’environnement provenant des CI runners.

Aqua Security a assuré qu’il n’existe aucune preuve que la version de Trivy utilisée dans ses produits commerciaux aurait été compromise et a précisé que, par conception, la version dérivée de sa plateforme commerciale est en retrait par rapport à celle open source avec un processus d’intégration contrôlé.

Malgré cela, l’entreprise s’engage à fournir des mises à jour dès que de nouveaux éléments seront disponibles et annoncera ses découvertes supplémentaires mardi, à la fin de la journée.