Le groupe TeamPCP a compromis l'outil de sécurité Trivy pour déployer CanisterWorm, un ver npm auto-propagatif utilisant la blockchain ICP comme infrastructure C2 furtive. 66 packages open source infectés, des milliers de pipelines CI/CD exposés.
En bref
- TeamPCP a compromis Trivy, l'un des scanners de vulnérabilités les plus utilisés en CI/CD, pour y injecter un credential stealer.
- À partir de Trivy, le groupe a déployé CanisterWorm, un ver npm auto-propagatif qui a infecté 66 packages open source et 141 artefacts malveillants.
- Innovation technique majeure : CanisterWorm utilise un canister ICP (smart contract sur la blockchain Internet Computer) comme serveur C2, rendant le démantèlement quasi impossible.
Comment TeamPCP a transformé Trivy en arme d'infection
Le 20 mars 2026, des chercheurs d'Aikido Security et de Wiz ont détecté une activité anormale dans les releases officielles de Trivy, l'outil open source d'Aqua Security utilisé par des millions de pipelines DevOps pour scanner les images Docker et les dépendances. Le groupe TeamPCP, déjà connu pour ses attaques supply chain contre LiteLLM et Checkmarx KICS, avait injecté un credential stealer dans les packages trivy, trivy-action et setup-trivy. Tout développeur ou pipeline ayant exécuté Trivy pendant la fenêtre d'exposition a potentiellement été compromis.
À partir de ces accès, TeamPCP a déployé CanisterWorm, un ver npm d'un genre nouveau. En exploitant les tokens npm volés, le ver a publié de manière autonome des versions malveillantes de 66 packages appartenant à des organisations comme EmilGroup, OpenGov, Airtm et Pypestream — soit 141 artefacts malveillants au total. Une fois installé sur un système Linux, CanisterWorm établit sa persistance via une unité systemd et survit aux redémarrages. La propagation s'est faite entièrement via les pipelines CI/CD, sans interaction humaine requête par requête.
L'élément le plus préoccupant de cette attaque est son infrastructure de commande et contrôle. Selon Palo Alto Networks et Wiz, CanisterWorm utilise un canister ICP — un smart contract immuable déployé sur la blockchain Internet Computer — comme dead-drop resolver. Ce canister retourne simplement une URL de C2 lorsqu'il est interrogé. Contrairement à un domaine ou à une IP, un canister blockchain ne peut pas être saisi, bloqué par les registres DNS ou retiré sur plainte. C'est la première utilisation publiquement documentée d'ICP comme infrastructure C2 pour un malware.
Pourquoi cette attaque redéfinit les risques supply chain DevSecOps
Les attaques supply chain via npm ne sont pas nouvelles, mais celle-ci franchit un seuil symbolique : l'outil de sécurité lui-même est devenu le vecteur d'infection. Trivy est intégré dans les pipelines CI/CD précisément pour détecter ce type de compromission — le retourner contre ses utilisateurs est une stratégie de confusion délibérée. Pour les équipes DevSecOps, cela signifie que la chaîne de confiance ne peut plus s'arrêter aux outils de sécurité : chaque composant, y compris les scanners, doit faire l'objet d'une vérification d'intégrité indépendante (hash SHA, signature Sigstore/Cosign).
L'usage d'ICP comme C2 complique également la réponse aux incidents. Les équipes de sécurité habituées à bloquer des IOC réseau (IP, domaines) n'ont ici aucune prise directe sur l'infrastructure de contrôle. Les défenseurs doivent désormais envisager le blocage des requêtes sortantes vers les nœuds ICP comme mesure préventive dans les environnements sensibles, au risque de bloquer des applications Web3 légitimes.
Ce qu'il faut retenir
- Vérifiez immédiatement les logs de vos pipelines CI/CD entre le 19 et le 25 mars 2026 pour toute exécution de Trivy, trivy-action ou setup-trivy.
- Activez la vérification des signatures (Sigstore/Cosign) et des checksums SHA pour tous vos outils de sécurité, pas seulement vos dépendances applicatives.
- Mettez à jour Trivy vers la dernière version vérifiée et révoquez tout token npm potentiellement exposé dans vos environnements CI/CD.
Comment savoir si mon pipeline CI/CD a été infecté par CanisterWorm ?
Recherchez dans vos logs CI/CD toute exécution de Trivy entre le 19 et le 25 mars 2026. Vérifiez ensuite vos tokens npm pour détecter des publications non autorisées, et analysez les connexions réseau sortantes de vos agents CI/CD vers des endpoints inhabituels. Les IOC publiés par Aikido Security et Wiz incluent les hashes des artefacts malveillants et l'identifiant du canister ICP utilisé comme C2.
Besoin d'un accompagnement expert ?
Ayi NEDJIMI vous accompagne sur vos projets cybersécurité et IA.
Prendre contactÀ propos de l'auteur
Ayi NEDJIMI
Expert Cybersécurité Offensive & Intelligence Artificielle
Ayi NEDJIMI est un expert senior en cybersécurité offensive et intelligence artificielle avec plus de 20 ans d'expérience. Spécialisé en rétro-ingénierie, forensics numériques et développement de modèles IA, il accompagne les organisations dans la sécurisation d'infrastructures critiques.
Expert judiciaire et conférencier reconnu, il intervient auprès des plus grandes organisations françaises et européennes. Ses domaines couvrent l'audit Active Directory, le pentest cloud (AWS, Azure, GCP), la rétro-ingénierie de malwares et l'IA générative (RAG, LLM).
Ressources & Outils de l'auteur
Articles connexes
Conduent : brèche SafePay expose 25 millions d'Américains
SafePay ransomware a compromis Conduent entre octobre 2024 et janvier 2025, exfiltrant 8,5 To de données sur 25 millions de citoyens bénéficiaires de prestations sociales américaines. Les notifications aux victimes n'ont débuté que 9 mois après la découverte.
Qilin cible Malaysia Airlines : données passagers volées
Le groupe Qilin ransomware revendique une intrusion dans les systèmes de Malaysia Airlines, exposant potentiellement dossiers de réservation, données d'employés et contrats fournisseurs. La compagnie n'a pas officiellement confirmé la brèche à ce jour.
CVE-2026-33017 Langflow : RCE non authentifié exploité
CVE-2026-33017 affecte Langflow ≤ 1.8.1 avec un score CVSS 9.3 : exécution de code Python sans authentification via l'API publique. La CISA a inscrit la faille au catalogue KEV le 25 mars 2026, après exploitation active détectée 20 heures après la divulgation.
Commentaires
Aucun commentaire pour le moment. Soyez le premier à commenter !
Laisser un commentaire