Trivy compromis : le scanner de vulnérabilités détourné pour voler vos secrets CI/CD
Trivy, le scanner de vulnérabilités open source le plus populaire, maintenu par Aqua Security, vient d’être compromis pour la deuxième fois en un mois. Les GitHub Actions officielles aquasecurity/trivy-action et aquasecurity/setup-trivy ont été détournées pour voler des secrets CI/CD à grande échelle. Un cas d’école d’attaque supply chain qui touche directement les équipes DevSecOps.
Comment Trivy a été compromis : l’attaque en détail
L’attaquant a effectué un force-push sur 75 des 76 tags de version du dépôt aquasecurity/trivy-action. En modifiant ces tags sans créer de nouvelle release ni pousser sur une branche, il a transformé des références de version de confiance en vecteur de distribution pour un infostealer ciblant les pipelines CI/CD.
Le malware s’exécute directement dans les runners GitHub Actions et cible :
- Clés SSH et identifiants cloud (AWS, GCP, Azure)
- Tokens Kubernetes et configurations Docker
- Identifiants de bases de données et tokens Git
- Portefeuilles de cryptomonnaies, notamment les clés de validateurs Solana
L’infostealer opère en trois phases : collecte des variables d’environnement depuis la mémoire du processus runner, chiffrement des données, puis exfiltration vers le serveur scan.aquasecurtiy[.]org (notez le typosquatting sur « aquasecurity »). En cas d’échec, le compte GitHub de la victime est détourné pour stocker les données volées dans un dépôt public nommé « tpcp-docs ».
TeamPCP : le groupe derrière la compromission de Trivy
Cette attaque fait suite à une première compromission fin février 2026, où un bot autonome nommé hackerbot-claw avait exploité un workflow pull_request_target pour voler un Personal Access Token (PAT). Ce token avait ensuite servi à prendre le contrôle du dépôt GitHub de Trivy et à publier une version vérolée (0.69.4).
Aqua Security a reconnu que le confinement du premier incident était incomplet : la rotation des secrets n’était pas atomique, permettant aux attaquants d’intercepter les nouveaux tokens. Cette tendance des outils de défense détournés en armes est de plus en plus préoccupante.
Le groupe identifié, TeamPCP (alias DeadCatx3, PCPcat, ShellForce, CipherForce), est une plateforme de cybercriminalité cloud-native spécialisée dans l’infiltration d’infrastructures modernes pour le vol de données et l’extorsion.
Actions immédiates si vous utilisez Trivy
- Vérifiez vos workflows GitHub Actions : si vous utilisez
aquasecurity/trivy-actionouaquasecurity/setup-trivy, mettez à jour immédiatement - Versions sûres : utilisez Trivy 0.69.3 (la 0.69.4 est compromise) et les dernières versions corrigées des Actions
- Renouvelez tous vos secrets : si vos pipelines ont exécuté une version compromise, considérez l’ensemble de vos secrets comme compromis
- Épinglez par SHA, pas par tag : remplacez
uses: action@v1paruses: action@sha256:abc... - Auditez vos logs réseau : recherchez des connexions vers
scan.aquasecurtiy[.]orgdans les logs de vos runners
Guide : protéger votre pipeline CI/CD contre les attaques supply chain
L’incident Trivy illustre une réalité : les attaques supply chain ciblent désormais les outils de sécurité eux-mêmes. Voici les mesures concrètes pour durcir votre chaîne de livraison logicielle.
Verrouiller les dépendances avec des hashes
Ne vous fiez jamais uniquement aux tags de version. Un attaquant peut détourner un tag Git pour pointer vers du code malveillant — c’est exactement ce qui s’est passé avec Trivy.
- GitHub Actions : utilisez le SHA complet du commit (
uses: action@sha256:abc...) - Docker : épinglez vos images par digest (
image@sha256:...) - npm/pip : utilisez des lockfiles avec vérification d’intégrité
Protéger les secrets du pipeline
Les infostealers de pipeline CI ciblent principalement les variables d’environnement. Protégez-les :
- Utilisez un gestionnaire de secrets (HashiCorp Vault, AWS Secrets Manager) au lieu de variables en clair
- Activez la rotation automatique des tokens CI/CD
- Appliquez le principe du moindre privilège sur chaque token
Surveiller l’intégrité des outils tiers
Intégrez une vérification automatique de vos dépendances de sécurité :
- Vérifiez les signatures GPG des binaires téléchargés
- Comparez les checksums SHA-256 avec les sources officielles
- Configurez des alertes sur les modifications de tags de version en amont
Détection comportementale des runners CI
Un outil compromis peut passer les contrôles d’intégrité statiques. La surveillance comportementale, déjà recommandée pour les agents IA en entreprise, s’applique aussi aux runners CI :
- Bloquez les connexions sortantes non autorisées depuis les runners
- Journalisez toutes les résolutions DNS et connexions réseau
- Détectez l’exfiltration via des patterns de trafic anormaux
Checklist de sécurité CI/CD
- ✅ Dépendances épinglées par hash de commit (jamais par tag seul)
- ✅ Secrets gérés par un vault, pas en variables d’environnement en clair
- ✅ Signatures et checksums vérifiés automatiquement à chaque build
- ✅ Réseau des runners segmenté et surveillé
- ✅ Alertes configurées sur les modifications de tags en amont
- ✅ Rotation régulière de tous les tokens CI/CD
- ✅ Audit post-incident immédiat en cas de compromission d’un outil tiers
La compromission de Trivy rappelle une vérité fondamentale : la sécurité de votre supply chain logicielle ne se limite pas à scanner votre code — il faut aussi protéger les outils qui le scannent.