{"id":180742,"date":"2026-03-31T09:13:05","date_gmt":"2026-03-31T16:13:05","guid":{"rendered":"https:\/\/unit42.paloaltonetworks.com\/?p=180742"},"modified":"2026-05-15T09:55:05","modified_gmt":"2026-05-15T16:55:05","slug":"teampcp-supply-chain-attacks","status":"publish","type":"post","link":"https:\/\/unit42.paloaltonetworks.com\/fr\/teampcp-supply-chain-attacks\/","title":{"rendered":"Quand les remparts deviennent des armes : l\u2019attaque multi-\u00e9tapes de TeamPCP contre l\u2019infrastructure de s\u00e9curit\u00e9"},"content":{"rendered":"<h2><a id=\"post-180742-_heading=h.dgsak57o0vos\"><\/a>Avant-propos<\/h2>\n<p>Entre la fin f\u00e9vrier et mars\u00a02026, TeamPCP s\u2019en est pris \u00e0 la supply\u00a0chain via une s\u00e9rie d\u2019attaques aussi m\u00e9thodiques qu\u2019offensives. Le groupe a compromis de fa\u00e7on syst\u00e9matique plusieurs outils open\u00a0source de s\u00e9curit\u00e9 tr\u00e8s r\u00e9pandus et r\u00e9put\u00e9s fiables, dont les scanners de vuln\u00e9rabilit\u00e9s <a href=\"https:\/\/www.aquasec.com\/blog\/trivy-supply-chain-attack-what-you-need-to-know\/\" target=\"_blank\" rel=\"noopener\">Trivy<\/a> et <a href=\"https:\/\/checkmarx.com\/blog\/checkmarx-security-update\/\" target=\"_blank\" rel=\"noopener\">KICS<\/a>, ainsi que <a href=\"https:\/\/docs.litellm.ai\/blog\/security-update-march-2026\" target=\"_blank\" rel=\"noopener\">LiteLLM<\/a>, une passerelle IA tr\u00e8s appr\u00e9ci\u00e9e. Le SDK\u00a0Python officiel de Telnyx figure lui aussi parmi les logiciels touch\u00e9s.<\/p>\n<p>Dans le cadre de cette campagne, des payloads malveillants d\u2019infostealer ont \u00e9t\u00e9 inject\u00e9s directement dans des registres GitHub\u00a0Actions et Python\u00a0Package Index\u00a0(PyPI). Une fois ex\u00e9cut\u00e9 au sein de workflows automatis\u00e9s, ce code malveillant exfiltre en toute discr\u00e9tion des donn\u00e9es hautement sensibles, parmi lesquelles\u00a0:<\/p>\n<ul>\n<li>Des jetons d\u2019acc\u00e8s au cloud<\/li>\n<li>Des cl\u00e9s\u00a0SSH<\/li>\n<li>Des secrets Kubernetes<\/li>\n<\/ul>\n<p>Ces attaques permettent \u00e9galement de mettre en place des backdoors persistantes, ouvrant la voie \u00e0 la lat\u00e9ralisation entre clusters.<\/p>\n<p>Parmi les logiciels concern\u00e9s, citons notamment\u00a0:<\/p>\n<ul>\n<li>BerriAI <a href=\"https:\/\/www.litellm.ai\/\" target=\"_blank\" rel=\"noopener\">LiteLLM<\/a>, une biblioth\u00e8que open\u00a0source utilis\u00e9e pour acheminer les requ\u00eates entre diff\u00e9rents fournisseurs de LLM (sa documentation fait \u00e9tat de plus de 95\u00a0millions de t\u00e9l\u00e9chargements mensuels)<\/li>\n<li>Aqua\u00a0Security <a href=\"https:\/\/www.aquasec.com\/products\/trivy\/\" target=\"_blank\" rel=\"noopener\">Trivy<\/a> et Checkmarx\u00a0<a href=\"https:\/\/checkmarx.com\/product\/kics\/\" target=\"_blank\" rel=\"noopener\">KICS<\/a> (Keeping Infrastructure as Code Secure), int\u00e9gr\u00e9s dans des millions de pipelines\u00a0CI\/CD d\u2019entreprise<\/li>\n<li>Le SDK\u00a0Python officiel de <a href=\"https:\/\/telnyx.com\/\" target=\"_blank\" rel=\"noopener\">Telnyx,<\/a> une plateforme mondiale de communication tr\u00e8s r\u00e9pandue fournissant des API programmables pour la voix et la messagerie<\/li>\n<\/ul>\n<p>D\u2019apr\u00e8s certaines sources, dont <a href=\"https:\/\/x.com\/vxunderground\/status\/2036532168084672816?s=20\" target=\"_blank\" rel=\"noopener\">vx-underground<\/a>, les attaquants auraient d\u00e9j\u00e0 exfiltr\u00e9 plus de 300\u00a0Go de donn\u00e9es et de secrets depuis 500\u00a0000\u00a0machines infect\u00e9es. Et de grandes organisations, tous secteurs confondus, sont ainsi confront\u00e9es \u00e0 de graves attaques de second niveau.<\/p>\n<p>\u00c0 la diff\u00e9rence des pr\u00e9c\u00e9dentes attaques sur la supply\u00a0chain, cette op\u00e9ration transforme d\u00e9lib\u00e9r\u00e9ment en armes des infrastructures de s\u00e9curit\u00e9 et de d\u00e9veloppement qui, par nature, exigent des privil\u00e8ges \u00e9lev\u00e9s. Les attaquants acc\u00e8dent ainsi sans entrave aux secrets de production, avec, \u00e0 la cl\u00e9, la capacit\u00e9 de ran\u00e7onner les organisations compromises et d\u2019exiger des paiements d\u2019extorsion.<\/p>\n<p>Le p\u00e9rim\u00e8tre actuel de l\u2019attaque est consid\u00e9rable\u00a0:<\/p>\n<ul>\n<li><strong>Ampleur de l\u2019impact\u00a0:<\/strong> l\u2019acteur aurait exfiltr\u00e9 plus de 300\u00a0Go de donn\u00e9es et 500\u00a0000\u00a0identifiants, parmi lesquels des jetons cloud et des secrets Kubernetes.<\/li>\n<li><strong>\u00c9tendue de la compromission\u00a0:<\/strong> au-del\u00e0 des cibles initiales, TeamPCP a exploit\u00e9 les jetons d\u00e9rob\u00e9s pour infecter 48\u00a0packages suppl\u00e9mentaires. Le groupe a \u00e9galement identifi\u00e9, puis divulgu\u00e9, au moins 16\u00a0organisations victimes sur des sites de fuite publics.<\/li>\n<li><strong>Sophistication\u00a0:<\/strong> les attaquants ont d\u00e9ploy\u00e9 CanisterWorm, qui repose \u00e0 la fois sur une architecture CnC d\u00e9centralis\u00e9e et sur des composants destructeurs cibl\u00e9s de type wiper. Un mode op\u00e9ratoire qui illustre une mont\u00e9e en gamme technique, r\u00e9solument tourn\u00e9e vers les op\u00e9rations cloud natives.<\/li>\n<\/ul>\n<p>Au 27\u00a0mars\u00a02026, Palo\u00a0Alto Networks<a href=\"https:\/\/docs-cortex.paloaltonetworks.com\/p\/XPANSE\" target=\"_blank\" rel=\"noopener\"> Cortex\u00a0Xpanse<\/a> avait identifi\u00e9 la pr\u00e9sence de trois certificats autosign\u00e9s distincts, associ\u00e9s aux trois vagues d\u2019op\u00e9rations.<\/p>\n<p>Les clients de Palo\u00a0Alto\u00a0Networks sont mieux prot\u00e9g\u00e9s contre les menaces d\u00e9crites dans cet article gr\u00e2ce aux produits et services suivants\u00a0:<\/p>\n<ul>\n<li><a href=\"https:\/\/docs.paloaltonetworks.com\/advanced-threat-prevention\/administration\" target=\"_blank\" rel=\"noopener\">Advanced Threat Prevention<\/a><\/li>\n<li><a href=\"https:\/\/docs-cortex.paloaltonetworks.com\/p\/XDR\" target=\"_blank\" rel=\"noopener\">Cortex XDR<\/a> et <a href=\"https:\/\/docs-cortex.paloaltonetworks.com\/p\/XSIAM\" target=\"_blank\" rel=\"noopener\">XSIAM<\/a><\/li>\n<li><a href=\"https:\/\/docs-cortex.paloaltonetworks.com\/r\/Cortex-CLOUD\/Cortex-Cloud-Runtime-Security-Documentation\/Endpoint-protection\" target=\"_blank\" rel=\"noopener\">Cortex Cloud<\/a><\/li>\n<li><a href=\"https:\/\/docs-cortex.paloaltonetworks.com\/p\/XPANSE\" target=\"_blank\" rel=\"noopener\">Cortex Xpanse<\/a><\/li>\n<li><a href=\"https:\/\/www.paloaltonetworks.com\/cortex\/agentix\" target=\"_blank\" rel=\"noopener\">Cortex Agentix<\/a> Threat Intel Agent<\/li>\n<\/ul>\n<p>Palo\u00a0Alto Networks recommande \u00e9galement de prendre les mesures n\u00e9cessaires pour identifier les packages vuln\u00e9rables et renforcer les politiques\u00a0CI\/CD, comme indiqu\u00e9 dans la section <a href=\"#post-180742-_heading=h.vsd3xlozm8t\" target=\"_blank\" rel=\"noopener\">Recommandations provisoires<\/a>.<\/p>\n<p>L\u2019offre <a href=\"https:\/\/www.paloaltonetworks.com\/unit42\/assess\/cloud-security-assessment\" target=\"_blank\" rel=\"noopener\">Unit\u00a042 Cloud Security\u00a0Assessment<\/a> est un service d\u2019\u00e9valuation qui examine l\u2019infrastructure\u00a0cloud afin d\u2019identifier les erreurs de configuration et les failles de s\u00e9curit\u00e9.<\/p>\n<p>L\u2019<a href=\"https:\/\/start.paloaltonetworks.com\/contact-unit42.html\" target=\"_blank\" rel=\"noopener\">\u00e9quipe de r\u00e9ponse \u00e0 incident d\u2019Unit\u00a042<\/a> peut \u00e9galement intervenir en cas de compromission ou r\u00e9aliser une \u00e9valuation proactive afin de r\u00e9duire votre niveau de risque.<\/p>\n<h2><a id=\"post-180742-_heading=h.ycfnz6ldqhcn\"><\/a>\u00c9tendue actuelle de l\u2019attaque sur la supply\u00a0chain<\/h2>\n<p>TeamPCP (\u00e9galement suivi sous les noms PCPcat, ShellForce et DeadCatx3) m\u00e8ne des op\u00e9rations depuis au moins septembre\u00a02025. Le groupe s\u2019est fait conna\u00eetre en d\u00e9cembre\u00a02025, dans le sillage de la vaste campagne React2Shell visant les environnements\u00a0cloud.<\/p>\n<p>Cette campagne exploitait la vuln\u00e9rabilit\u00e9 <a href=\"https:\/\/unit42.paloaltonetworks.com\/fr\/cve-2025-55182-react-and-cve-2025-66478-next\/\" target=\"_blank\" rel=\"noopener\">React2Shell<\/a> (CVE-2025-55182), permettant au groupe de tirer parti d\u2019une ex\u00e9cution de code \u00e0 distance\u00a0(RCE) sur des terminaux cloud vuln\u00e9rables. Au cours de ces op\u00e9rations, l\u2019un des artefacts de d\u00e9tection les plus r\u00e9v\u00e9lateurs du groupe, aux c\u00f4t\u00e9s des indicateurs d\u2019exploitation React2Shell d\u00e9j\u00e0 bien document\u00e9s, r\u00e9sidait dans l\u2019utilisation du port\u00a0666 pour la quasi-totalit\u00e9 de ses activit\u00e9s d\u2019exploitation.<\/p>\n<p>La trajectoire du groupe a ensuite rapidement \u00e9volu\u00e9. D\u2019abord centr\u00e9 sur le <a href=\"https:\/\/flare.io\/learn\/resources\/blog\/teampcp-cloud-native-ransomware\" target=\"_blank\" rel=\"noopener\">ransomware<\/a>, TeamPCP puise aussi ses origines dans le mining et le vol de cryptos. Depuis la mi-mars\u00a02026, il s\u2019est plus r\u00e9cemment orient\u00e9 vers des op\u00e9rations opportunistes de compromission de la supply\u00a0chain, men\u00e9es selon une logique \u00ab\u00a0smash-and-grab\u00a0\u00bb.<\/p>\n<p>R\u00e9cemment, le rythme des activit\u00e9s du groupe s\u2019est acc\u00e9l\u00e9r\u00e9. TeamPCP a multipli\u00e9 ses publications, aussi bien sur sa cha\u00eene Telegram que sur son site de fuite h\u00e9berg\u00e9 sur le dark\u00a0web.<\/p>\n<p>Dans ses annonces les plus r\u00e9centes, le groupe affirme unir ses forces \u00e0 <a href=\"https:\/\/www.ransomlook.io\/group\/cipherforce\" target=\"_blank\" rel=\"noopener\">CipherForce<\/a>, un autre groupe de ransomware, pour publier des informations relatives \u00e0 des compromissions. Par ailleurs, un message publi\u00e9 sur BreachForums \u2013\u00a0site fr\u00e9quent\u00e9 par les cybercriminels pour \u00e9changer sur les activit\u00e9s de piratage et les violations de donn\u00e9es\u00a0\u2013 indique que le groupe s\u2019est \u00e9galement associ\u00e9 au groupe de ransomware <a href=\"https:\/\/www.ransomware.live\/group\/vect\" target=\"_blank\" rel=\"noopener\">Vect<\/a> (voir la figure\u00a01).<\/p>\n<figure id=\"attachment_180743\" aria-describedby=\"caption-attachment-180743\" style=\"width: 1000px\" class=\"wp-caption alignnone\"><img  class=\"wp-image-180743 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-790891-180742-1.png\" alt=\"Capture d\u2019\u00e9cran d\u2019un message publi\u00e9 sur un forum, annon\u00e7ant un partenariat entre BreachForums et TeamPCP. Le message met en avant une collaboration destin\u00e9e \u00e0 renforcer leurs op\u00e9rations. La publication appara\u00eet sur une page \u00e0 th\u00e8me sombre, avec une typographie en rouge et blanc, en gras.\" width=\"1000\" height=\"595\" srcset=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-790891-180742-1.png 1280w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-790891-180742-1-739x440.png 739w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-790891-180742-1-1176x700.png 1176w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-790891-180742-1-768x457.png 768w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/><figcaption id=\"caption-attachment-180743\" class=\"wp-caption-text\">Figure 1. Capture d\u2019\u00e9cran de l\u2019annonce publi\u00e9e sur BreachForums.<\/figcaption><\/figure>\n<p>Ce partenariat devrait permettre \u00e0 TeamPCP de concentrer davantage ses efforts sur les op\u00e9rations de supply\u00a0chain. Fin mars, le groupe revendiquait d\u00e9j\u00e0 la compromission d\u2019au moins 16\u00a0organisations, comme le montre la figure\u00a02.<\/p>\n<figure id=\"attachment_180754\" aria-describedby=\"caption-attachment-180754\" style=\"width: 1000px\" class=\"wp-caption alignnone\"><img  class=\"wp-image-180754 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-793984-180742-2.png\" alt=\"L\u2019image montre une capture d\u2019\u00e9cran d\u2019un site \u00e0 th\u00e8me sombre intitul\u00e9 \u00ab CIPHERFORCE \u00bb. On y voit un grand message en lettres blanches : \u00ab Secure your data \u00bb (S\u00e9curisez vos donn\u00e9es), accompagn\u00e9 du sous-titre suivant : \u00ab Companies that refused to pay are published here. Countdowns are until data release. \u00bb (Les noms des entreprises refusant de payer apparaissent ici. Comptes \u00e0 rebours jusqu\u2019\u00e0 la publication des donn\u00e9es) En dessous figurent trois encadr\u00e9s chiffr\u00e9s : \u00ab 16 \u00bb pour le nombre total de victimes, \u00ab 1 \u00bb pour les comptes \u00e0 rebours actifs et \u00ab 11 \u00bb pour les entreprises publi\u00e9es. Un menu de navigation, \u00e0 droite, comprend les rubriques \u00ab Home \u00bb, \u00ab Victims \u00bb et \u00ab News \u00bb.\" width=\"1000\" height=\"635\" srcset=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-793984-180742-2.png 2048w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-793984-180742-2-693x440.png 693w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-793984-180742-2-1102x700.png 1102w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-793984-180742-2-768x488.png 768w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-793984-180742-2-1536x976.png 1536w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/><figcaption id=\"caption-attachment-180754\" class=\"wp-caption-text\">Figure 2. Capture d\u2019\u00e9cran du site de fuite de donn\u00e9es du ransomware CipherForce.<\/figcaption><\/figure>\n<h3><a id=\"post-180742-_heading=h.xi0kyci0dbn1\"><\/a>Aqua\u00a0Security Trivy<\/h3>\n<p>Cette derni\u00e8re campagne a d\u00e9but\u00e9 le 19\u00a0mars 2026, lorsque TeamPCP a exploit\u00e9 une rotation incompl\u00e8te des identifiants \u00e0 la suite d\u2019une compromission mineure survenue fin f\u00e9vrier dans le d\u00e9p\u00f4t GitHub d\u2019Aqua\u00a0Security Trivy.<\/p>\n<p>TeamPCP a compromis le compte de service <span style=\"font-family: 'courier new', courier, monospace;\">aqua-bot<\/span> et men\u00e9 une attaque par imposter commit. Le groupe a ainsi inject\u00e9, via force-push, du code malveillant dans 76 des 77\u00a0tags de version du d\u00e9p\u00f4t <span style=\"font-family: 'courier new', courier, monospace;\">aquasecurity\/trivy-action<\/span>, ainsi que dans l\u2019ensemble des tags d\u2019<span style=\"font-family: 'courier new', courier, monospace;\">aquasecurity\/setup-trivy<\/span>.<\/p>\n<p>Cette premi\u00e8re vague a introduit le payload principal de TeamPCP, baptis\u00e9 \u00ab\u00a0TeamPCP cloud stealer\u00a0\u00bb. Celui-ci s\u2019ex\u00e9cutait par l\u2019interm\u00e9diaire du script <span style=\"font-family: 'courier new', courier, monospace;\">kamikaze.sh<\/span>, qui a ensuite \u00e9volu\u00e9 en trois versions distinctes\u00a0:<\/p>\n<ul>\n<li><strong>Version\u00a01\u00a0\u2013 Architecture monolithique\u00a0:<\/strong> un script bash de 150\u00a0lignes centr\u00e9 sur le fingerprinting de l\u2019environnement et la collecte imm\u00e9diate d\u2019identifiants AWS\/GCP\/Azure via l\u2019instance metadata service\u00a0(IMDS) du terminal compromis. Pour contourner le masquage des secrets de GitHub, le script lisait directement la m\u00e9moire du processus <span style=\"font-family: 'courier new', courier, monospace;\">runner.worker<\/span> via <span style=\"font-family: 'courier new', courier, monospace;\">\/proc\/&lt;pid&gt;\/mem<\/span> afin d\u2019extraire les jetons en clair.<\/li>\n<li><strong>Version\u00a02\u00a0\u2013 Architecture modulaire\u00a0:<\/strong> deux heures apr\u00e8s le premier d\u00e9ploiement de la v1, TeamPCP a remplac\u00e9 ce script initial par un loader all\u00e9g\u00e9 de 15\u00a0lignes. Cette version utilisait une m\u00e9thode pull pour t\u00e9l\u00e9charger, en deuxi\u00e8me \u00e9tape, un payload nomm\u00e9 \u00ab\u00a0<span style=\"font-family: 'courier new', courier, monospace;\">kube.py<\/span>\u00a0\u00bb. Les acteurs pouvaient ainsi faire \u00e9voluer le payload sans avoir \u00e0 r\u00e9empoisonner les tags GitHub. La version\u00a02 introduisait \u00e9galement une commande d\u2019auto-suppression, <span style=\"font-family: 'courier new', courier, monospace;\">rm \u2013 \u201c$0\u201d<\/span>, destin\u00e9e \u00e0 s\u2019effacer apr\u00e8s ex\u00e9cution.<\/li>\n<li><strong>Version\u00a03\u00a0\u2013 Le ver et le wiper\u00a0:<\/strong> dans cette derni\u00e8re version connue, le script a \u00e9volu\u00e9 vers un code malveillant dot\u00e9 de capacit\u00e9s d\u2019auto-r\u00e9plication, dans le cadre d\u2019une campagne baptis\u00e9e \u00ab\u00a0CanisterWorm\u00a0\u00bb. Nous reviendrons plus en d\u00e9tail sur CanisterWorm <a href=\"#post-180742-_heading=h.dz48bwymf53c\" target=\"_blank\" rel=\"noopener\">plus loin<\/a>. La version\u00a03 permettait de scanner les API\u00a0Docker expos\u00e9es, le port\u00a02375 ainsi que le sous-r\u00e9seau local. Elle permettait \u00e9galement de collecter des cl\u00e9s\u00a0SSH.<\/li>\n<\/ul>\n<p>Cette op\u00e9ration se distingue par un degr\u00e9 de tromperie particuli\u00e8rement abouti. Le code malveillant s\u2019ex\u00e9cutait, par exemple, avant m\u00eame que la logique l\u00e9gitime d\u2019analyse de Trivy n\u2019entre en jeu\u00a0\u2013 tout en laissant simultan\u00e9ment le scanner poursuivre son fonctionnement normal. R\u00e9sultat\u00a0: les op\u00e9rations d\u2019analyse affichaient un statut apparemment sain alors qu\u2019en coulisses, le malware exfiltrait discr\u00e8tement des donn\u00e9es vers le domaine typosquatt\u00e9 <span style=\"font-family: 'courier new', courier, monospace;\">scan.aquasecurtiy[.]org<\/span>. En cas de d\u00e9faillance du serveur\u00a0CnC principal, le payload basculait sur le domaine de secours <span style=\"font-family: 'courier new', courier, monospace;\">tdtqy-oyaaa-aaaae-af2dq-cai.raw.icp0[.]io<\/span>.<\/p>\n<p>En parall\u00e8le, \u00e0 l\u2019aide de jetons de publication npm r\u00e9cup\u00e9r\u00e9s lors de la premi\u00e8re vague de compromissions visant Trivy, les acteurs li\u00e9s \u00e0 TeamPCP ont d\u00e9clench\u00e9 un script automatis\u00e9 qui a identifi\u00e9 puis infect\u00e9 47\u00a0packages suppl\u00e9mentaires au sein des espaces de noms <span style=\"font-family: 'courier new', courier, monospace;\">@emilgroup, @opengov<\/span> et <span style=\"font-family: 'courier new', courier, monospace;\">@v7<\/span>. D\u2019apr\u00e8s l\u2019ensemble des \u00e9l\u00e9ments disponibles, ces op\u00e9rations se seraient d\u00e9roul\u00e9es en moins de 60\u00a0secondes.<\/p>\n<p>L\u2019infection reposait sur l\u2019injection d\u2019un script malveillant de type pre-install ou post-install dans le fichier <span style=\"font-family: 'courier new', courier, monospace;\">package.json<\/span> de chaque biblioth\u00e8que. Ce m\u00e9canisme garantissait l\u2019ex\u00e9cution imm\u00e9diate du payload TeamPCP\u00a0cloud stealer d\u00e8s lors qu\u2019un d\u00e9veloppeur ou un runner\u00a0CI\/CD lan\u00e7ait un npm\u00a0install incluant l\u2019un de ces packages npm empoisonn\u00e9s. Un runner\u00a0CI\/CD est un agent l\u00e9ger, ou une application l\u00e9g\u00e8re, charg\u00e9 d\u2019ex\u00e9cuter les t\u00e2ches d\u2019un pipeline logiciel.<\/p>\n<p>Cette vague s\u2019est largement appuy\u00e9e sur une technique dite de \u00ab\u00a0SDK-squatting\u00a0\u00bb, en ciblant des kits de d\u00e9veloppement internes utilis\u00e9s pour des services de facturation, d\u2019assurance et de comptabilit\u00e9. Une approche qui augmentait fortement les chances de voir le malware s\u2019introduire dans des environnements d\u2019entreprise \u00e0 privil\u00e8ges \u00e9lev\u00e9s.<\/p>\n<p>Chaque package infect\u00e9 agissait alors comme un nouveau n\u0153ud de t\u00e9l\u00e9m\u00e9trie, proc\u00e9dant au fingerprinting de l\u2019environnement et tentant d\u2019exfiltrer les donn\u00e9es contenues dans les fichiers\u00a0<span style=\"font-family: 'courier new', courier, monospace;\">.env<\/span> locaux ainsi que dans les r\u00e9pertoires de configuration\u00a0AWS et Azure vers l\u2019infrastructure\u00a0CnC du groupe. En pratique, une compromission initialement circonscrite \u00e0 un seul fournisseur s\u2019est ainsi mu\u00e9e en risque syst\u00e9mique de la supply\u00a0chain, potentiellement \u00e0 grande \u00e9chelle, pour tous les utilisateurs en aval de ces SDK priv\u00e9s comme publics.<\/p>\n<h3><a id=\"post-180742-_heading=h.nr4yvxwvzug\"><\/a>Checkmarx\u00a0KICS<\/h3>\n<p>\u00c0 la suite de la compromission initiale d\u2019Aqua\u00a0Security Trivy, TeamPCP a utilis\u00e9, le 21\u00a0mars 2026, des GitHub\u00a0Personal Access Tokens\u00a0(PAT) d\u00e9rob\u00e9s pour cibler Checkmarx\u00a0KICS. KICS est un scanner open source d\u2019infrastructure as code (IaC).<\/p>\n<p>Les attaquants ont inject\u00e9, via force-push, des commits malveillants dans l\u2019ensemble des 35\u00a0tags de version du d\u00e9p\u00f4t <span style=\"font-family: 'courier new', courier, monospace;\">checkmarx\/kics-github-action<\/span>, et empoisonn\u00e9 la version 2.3.28 de <span style=\"font-family: 'courier new', courier, monospace;\">checkmarx\/ast-github-action<\/span>. Sur le plan technique, l\u2019op\u00e9ration a consist\u00e9 \u00e0 d\u00e9tourner l\u2019entrypoint officiel du conteneur (<span style=\"font-family: 'courier new', courier, monospace;\">setup.sh<\/span>) pour y substituer un payload en trois \u00e9tapes baptis\u00e9 \u00ab\u00a0TeamPCP cloud stealer\u00a0\u00bb.<\/p>\n<p>Ce payload pr\u00e9sente des fonctionnalit\u00e9s similaires \u00e0 celles observ\u00e9es lors de la vague visant Trivy. Afin d\u2019\u00e9chapper \u00e0 une d\u00e9tection manuelle, le malware exfiltrait les donn\u00e9es vol\u00e9es vers le domaine typosquatt\u00e9 <span style=\"font-family: 'courier new', courier, monospace;\">checkmarx[.]zone<\/span>, construit dans l\u2019univers de marque du fournisseur. Il int\u00e9grait \u00e9galement un m\u00e9canisme de repli secondaire\u00a0: en cas d\u2019\u00e9chec des communications CnC principales, le payload utilisait le propre <span style=\"font-family: 'courier new', courier, monospace;\">GITHUB_TOKEN<\/span> de la victime pour cr\u00e9er un d\u00e9p\u00f4t cach\u00e9, nomm\u00e9 \u00ab\u00a0<span style=\"font-family: 'courier new', courier, monospace;\">docs-tpcp\u00a0<\/span>\u00bb, au sein de son organisation GitHub.<\/p>\n<h3><a id=\"post-180742-_heading=h.ry983fkdtjm\"><\/a>LiteLLM<\/h3>\n<p>Le 23\u00a0mars 2026, TeamPCP a d\u00e9laiss\u00e9 les GitHub\u00a0Personal Access Tokens\u00a0(PAT) pour cibler, via BerriAI LiteLLM, des jetons de publication PyPI. Le groupe aurait vraisemblablement r\u00e9cup\u00e9r\u00e9 ces jetons lors d\u2019une compromission ant\u00e9rieure du scanner de vuln\u00e9rabilit\u00e9s Trivy. Les attaquants ont empoisonn\u00e9 le pipeline\u00a0CI\/CD de LiteLLM afin de permettre la publication sur PyPI de versions malveillantes, les v1.82.7 et v1.82.8.<\/p>\n<p>Cette vague a introduit une m\u00e9thode d\u2019ex\u00e9cution particuli\u00e8rement furtive, reposant sur un fichier\u00a0<span style=\"font-family: 'courier new', courier, monospace;\">.pth<\/span> nomm\u00e9 \u00ab\u00a0<span style=\"font-family: 'courier new', courier, monospace;\">litellm_init.pth\u00a0<\/span>\u00bb dans la version 1.82.8. Dans la mesure o\u00f9 l\u2019interpr\u00e9teur Python traite automatiquement les fichiers\u00a0.pth au d\u00e9marrage, le malware s\u2019ex\u00e9cutait \u00e0 chaque initialisation d\u2019un processus Python sur un h\u00f4te\u00a0\u2013 que LiteLLM ait \u00e9t\u00e9 import\u00e9 ou non. Une m\u00e9canique qui a permis \u00e0 TeamPCP d\u2019\u00e9largir sensiblement le champ des victimes potentielles.<\/p>\n<p>Le payload, con\u00e7u en plusieurs \u00e9tapes, reposait sur un script doublement encod\u00e9 en Base64 afin de d\u00e9jouer l\u2019analyse statique. Il agissait comme un v\u00e9ritable outil de ratissage des secrets, en collectant notamment\u00a0:<\/p>\n<ul>\n<li>des cl\u00e9s SSH\u00a0;<\/li>\n<li>les identifiants cloud (AWS, Google\u00a0Cloud, Azure)\u00a0;<\/li>\n<li>les fichiers de configuration Kubernetes\u00a0;<\/li>\n<li>et, fait particuli\u00e8rement critique, les variables d\u2019environnement contenant des cl\u00e9s d\u2019API de LLM (par exemple <span style=\"font-family: 'courier new', courier, monospace;\">OPENAI_API_KEY, ANTHROPIC_API_KEY<\/span>)<\/li>\n<\/ul>\n<p>La figure\u00a03 ci-dessous en pr\u00e9sente un exemple sous la forme d\u2019un extrait de code.<\/p>\n<figure id=\"attachment_180765\" aria-describedby=\"caption-attachment-180765\" style=\"width: 1000px\" class=\"wp-caption alignnone\"><img  class=\"wp-image-180765 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-796568-180742-3.png\" alt=\"Capture d\u2019\u00e9cran d\u2019une interface en ligne de commande. La commande ex\u00e9cut\u00e9e lance un script Python 3 qui importe le module base64 et ex\u00e9cute un script encod\u00e9 en Base64. \" width=\"1000\" height=\"122\" srcset=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-796568-180742-3.png 1390w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-796568-180742-3-786x96.png 786w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-796568-180742-3-768x94.png 768w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/><figcaption id=\"caption-attachment-180765\" class=\"wp-caption-text\">Figure 3. Extrait de code illustrant le script doublement encod\u00e9 en Base64.<\/figcaption><\/figure>\n<p>Au sein de ce premier encodage Base64 se trouvait un second bloc, lui aussi encod\u00e9 en Base64, qui fournissait le terminal CnC destin\u00e9 aux commandes de commande et contr\u00f4le. La figure\u00a04 montre le code \u00e9crit dans le chemin <span style=\"font-family: 'courier new', courier, monospace;\">\/host\/root\/.config\/sysmon\/sysmon.py<\/span>.<\/p>\n<figure id=\"attachment_180776\" aria-describedby=\"caption-attachment-180776\" style=\"width: 1000px\" class=\"wp-caption alignnone\"><img  class=\"wp-image-180776 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-798534-180742-4.png\" alt=\"Un extrait de code Python est affich\u00e9. Il d\u00e9finit une fonction qui envoie une requ\u00eate vers une URL sp\u00e9cifi\u00e9e par la variable C_URL. La requ\u00eate inclut un en-t\u00eate user-agent.\" width=\"1000\" height=\"495\" srcset=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-798534-180742-4.png 1300w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-798534-180742-4-786x389.png 786w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-798534-180742-4-768x380.png 768w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/><figcaption id=\"caption-attachment-180776\" class=\"wp-caption-text\">Figure 4. Code \u00e9crit dans <span style=\"font-family: 'courier new', courier, monospace;\">\/host\/root\/.config\/sysmon\/sysmon.py<\/span>.<\/figcaption><\/figure>\n<p>Les donn\u00e9es exfiltr\u00e9es \u00e9taient trait\u00e9es selon le m\u00eame sch\u00e9ma que lors de la vague Checkmarx\u00a0: elles \u00e9taient chiffr\u00e9es \u00e0 l\u2019aide d\u2019une cl\u00e9 de session AES-256-CBC, elle-m\u00eame prot\u00e9g\u00e9e par une cl\u00e9 publique RSA 4096\u00a0bits cod\u00e9e en dur. Pour le terminal\u00a0CnC d\u2019exfiltration li\u00e9 \u00e0 LiteLLM, les attaquants ont utilis\u00e9 le domaine typosquatt\u00e9 <span style=\"font-family: 'courier new', courier, monospace;\">models.litellm[.]cloud<\/span>. Le code pr\u00e9sent\u00e9 dans la figure\u00a05 illustre le sous-processus charg\u00e9 de l\u2019exfiltration des donn\u00e9es collect\u00e9es.<\/p>\n<figure id=\"attachment_180787\" aria-describedby=\"caption-attachment-180787\" style=\"width: 1000px\" class=\"wp-caption alignnone\"><img  class=\"wp-image-180787 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-800647-180742-5.png\" alt=\"Un extrait de code Python faisant appel au module &#96;subprocess&#96;. Il envoie une requ\u00eate POST vers une URL \u00e0 l\u2019aide de &#96;curl&#96;. \" width=\"1000\" height=\"295\" srcset=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-800647-180742-5.png 1266w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-800647-180742-5-786x232.png 786w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-800647-180742-5-768x227.png 768w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/><figcaption id=\"caption-attachment-180787\" class=\"wp-caption-text\">Figure 5. Sous-processus charg\u00e9 de l\u2019exfiltration des donn\u00e9es collect\u00e9es.<\/figcaption><\/figure>\n<p>La liste ci-dessous recense l\u2019ensemble des domaines\u00a0CnC d\u2019exfiltration connus au 27\u00a0mars 2026\u00a0:<\/p>\n<ul>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">scan.aquasecurtiy[.]org<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">checkmarx[.]zone<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">models.litellm[.]cloud<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">tdtqy-oyaaa-aaaae-af2dq-cai.raw.icp0[.]io<\/span><\/li>\n<\/ul>\n<h3><a id=\"post-180742-_heading=h.oort6v225ndf\"><\/a>Telnyx<\/h3>\n<p>Le 27\u00a0mars 2026, TeamPCP a compromis le SDK\u00a0Python de Telnyx. L\u2019op\u00e9ration s\u2019inscrit dans une logique proche de celle observ\u00e9e avec LiteLLM\u00a0: l\u2019acteur de la menace a d\u00e9tourn\u00e9 des identifiants de publication\u00a0PyPI afin de mettre en ligne les versions malveillantes\u00a04.87.1 et 4.87.2 du package <span style=\"font-family: 'courier new', courier, monospace;\">telnyx<\/span>.<\/p>\n<p>Ces versions embarquent, dans la biblioth\u00e8que cliente, un injecteur furtif qui s\u2019ex\u00e9cute d\u00e8s l\u2019import afin d\u2019exfiltrer des identifiants cloud et des secrets syst\u00e8me. L\u2019attaque utilise la st\u00e9ganographie dans des fichiers\u00a0WAV pour dissimuler des payloads chiffr\u00e9s de deuxi\u00e8me \u00e9tape au sein de fichiers audio l\u00e9gitimes, permettant ainsi au malware de contourner les filtres r\u00e9seau tout en \u00e9tablissant sa persistance sur des syst\u00e8mes Windows, Linux et macOS.<\/p>\n<p>Le fichier audio Windows portait le nom <span style=\"font-family: 'courier new', courier, monospace;\">hangup.wav<\/span>, cod\u00e9 en dur, tandis que le fichier audio\u00a0Linux utilisait le nom \u00ab\u00a0<span style=\"font-family: 'courier new', courier, monospace;\">ringtone.wav<\/span>\u00a0\u00bb, lui aussi cod\u00e9 en dur. Cette campagne cible plus particuli\u00e8rement les outils d\u2019infrastructure et de communication afin de d\u00e9rober des jetons d\u2019acc\u00e8s \u00e0 forte valeur et des cl\u00e9s de compte de service, en vue d\u2019une exploitation plus large des clusters.<\/p>\n<h3><a id=\"post-180742-_heading=h.dz48bwymf53c\"><\/a>CanisterWorm<\/h3>\n<p>CanisterWorm s\u2019appuie, pour son C2, sur un <em>canister<\/em> d\u00e9centralis\u00e9 fond\u00e9 sur l\u2019<a href=\"https:\/\/internetcomputer.org\/\" target=\"_blank\" rel=\"noopener\">Internet Computer Protocol<\/a>\u00a0(ICP), offrant ainsi un dead-drop inviolable pour la livraison des payloads et r\u00e9sistant aux op\u00e9rations classiques de d\u00e9mant\u00e8lement visant les vers informatiques. Au-del\u00e0 du vol d\u2019identifiants et de l\u2019\u00e9tablissement d\u2019une persistance, les acteurs de la menace ont \u00e9galement maquill\u00e9 leur activit\u00e9 en services l\u00e9gitimes tels que <a href=\"https:\/\/systemd.io\/\" target=\"_blank\" rel=\"noopener\">systemd<\/a>, tout en dissimulant la menace sous l\u2019apparence d\u2019un utilitaire\u00a0PostgreSQL baptis\u00e9 <a href=\"https:\/\/lib.rs\/crates\/pgmon\" target=\"_blank\" rel=\"noopener\">pgmon<\/a><a href=\"https:\/\/github.com\/flightaware\/pgmon\">.<\/a><\/p>\n<p>La campagne a r\u00e9cemment int\u00e9gr\u00e9 un composant destructeur de type wiper, <a href=\"https:\/\/krebsonsecurity.com\/2026\/03\/canisterworm-springs-wiper-attack-targeting-iran\/\" target=\"_blank\" rel=\"noopener\">observ\u00e9<\/a> le 23\u00a0mars 2026 dans des op\u00e9rations visant l\u2019Iran. Celui-ci appara\u00eet dans les blocs de code extraits du fichier\u00a0<span style=\"font-family: 'courier new', courier, monospace;\">kube.py<\/span> pr\u00e9sent\u00e9s dans les figures\u00a06 et 7.<\/p>\n<figure id=\"attachment_180798\" aria-describedby=\"caption-attachment-180798\" style=\"width: 700px\" class=\"wp-caption alignnone\"><img  class=\"wp-image-180798 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-802630-180742-6.png\" alt=\"Extrait de code montrant la structure d\u2019une fonction principale avec une logique conditionnelle. Le script se termine avec un code d\u2019erreur lorsque certaines conditions sont r\u00e9unies.\" width=\"700\" height=\"402\" srcset=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-802630-180742-6.png 776w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-802630-180742-6-766x440.png 766w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-802630-180742-6-768x441.png 768w\" sizes=\"(max-width: 700px) 100vw, 700px\" \/><figcaption id=\"caption-attachment-180798\" class=\"wp-caption-text\">Figure 6. Bloc de code issu de <span style=\"font-family: 'courier new', courier, monospace;\">kube.py<\/span> (1\/2).<\/figcaption><\/figure>\n<figure id=\"attachment_180809\" aria-describedby=\"caption-attachment-180809\" style=\"width: 1000px\" class=\"wp-caption alignnone\"><img  class=\"wp-image-180809 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-804715-180742-7.png\" alt=\"L\u2019image montre un extrait de code Python v\u00e9rifiant si le fuseau horaire est d\u00e9fini sur l\u2019Iran. \" width=\"1000\" height=\"472\" srcset=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-804715-180742-7.png 1398w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-804715-180742-7-786x371.png 786w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-804715-180742-7-768x363.png 768w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/><figcaption id=\"caption-attachment-180809\" class=\"wp-caption-text\">Figure 7. Bloc de code issu de <span style=\"font-family: 'courier new', courier, monospace;\">kube.py<\/span> (2\/2).<\/figcaption><\/figure>\n<p>Ce payload de deuxi\u00e8me \u00e9tape proc\u00e8de au fingerprinting de l\u2019environnement afin d\u2019identifier les clusters\u00a0Kubernetes, puis d\u00e9ploie des DaemonSets privil\u00e9gi\u00e9s capables de neutraliser des clusters entiers, ou ex\u00e9cute des suppressions r\u00e9cursives de fichiers sur des h\u00f4tes non conteneuris\u00e9s. La combinaison de cette propagation automatis\u00e9e, d\u2019une infrastructure d\u00e9centralis\u00e9e et d\u2019une capacit\u00e9 de destruction cibl\u00e9e fait de CanisterWorm l\u2019une des menaces cloud natives les plus complexes identifi\u00e9es \u00e0 ce jour\u00a0\u2013 en d\u00e9pit d\u2019un historique op\u00e9rationnel aussi bruyant qu\u2019\u00e9ph\u00e9m\u00e8re.<\/p>\n<h2><a id=\"post-180742-_heading=h.vsd3xlozm8t\"><\/a>Recommandations provisoires<\/h2>\n<h3><a id=\"post-180742-_heading=h.ithx5sjxrqxu\"><\/a>Renforcer les actifs\u00a0cloud face aux attaques de la supply\u00a0chain<\/h3>\n<p>Cortex\u00a0Cloud propose de vastes capacit\u00e9s de gestion de la posture de s\u00e9curit\u00e9 des applications\u00a0(ASPM) et de s\u00e9curisation de la supply\u00a0chain, afin d\u2019aider les organisations \u00e0 identifier les vuln\u00e9rabilit\u00e9s et les erreurs de configuration sur lesquelles TeamPCP s\u2019appuie. Les recommandations ci-dessous comportent \u00e9galement certaines indications propres aux produits Palo\u00a0Alto Networks. Nous recommandons \u00e0 toutes les organisations de mettre en place un dispositif adapt\u00e9 pour renforcer leurs actifs cloud selon les principes d\u00e9crits ici.<\/p>\n<p>(Remarque\u00a0: les clients Prisma\u00a0Cloud qui n\u2019ont pas encore migr\u00e9 vers Cortex\u00a0Cloud doivent appliquer les m\u00eames mesures de pr\u00e9caution.)<\/p>\n<p><strong>1. Identifier les packages vuln\u00e9rables\u00a0: analyse de composition logicielle\u00a0(SCA) et nomenclature logicielle\u00a0(SBOM)<\/strong><\/p>\n<p>Dans la mesure o\u00f9 l\u2019attribution de CVE \u00e0 ces packages malveillants peut intervenir apr\u00e8s le d\u00e9but de l\u2019attaque, les organisations doivent s\u2019appuyer sur une visibilit\u00e9 en temps r\u00e9el de leur SBOM.<\/p>\n<ul>\n<li>Mod\u00e8le de risque op\u00e9rationnel\u00a0: pour les packages d\u00e9pourvus de CVE publi\u00e9es, le mod\u00e8le propri\u00e9taire Operational\u00a0Risk de Palo\u00a0Alto Networks apporte un niveau de protection suppl\u00e9mentaire. Il \u00e9value les packages open\u00a0source \u00e0 partir de crit\u00e8res tels que l\u2019activit\u00e9 des mainteneurs, le statut d\u2019obsolescence et le niveau d\u2019adoption par la communaut\u00e9, ce qui permet d\u2019identifier les composants \u00e0 risque m\u00eame en l\u2019absence de vuln\u00e9rabilit\u00e9s connues.<\/li>\n<li>Interrogation de la SBOM\u00a0: Cortex\u00a0Cloud permet d\u2019interroger la SBOM de votre organisation \u00e0 partir de la liste des packages malveillants connus afin d\u2019identifier imm\u00e9diatement l\u2019impact.<\/li>\n<\/ul>\n<p><strong>2. Renforcer les politiques CI\/CD\u00a0: r\u00e8gles pr\u00eates \u00e0 l\u2019emploi<\/strong><\/p>\n<p>TeamPCP prosp\u00e8re dans les environnements insuffisamment s\u00e9curis\u00e9s et expos\u00e9s. Les clients Palo\u00a0Alto Networks peuvent s\u2019appuyer sur les r\u00e8gles\u00a0CI\/CD pr\u00eates \u00e0 l\u2019emploi\u00a0(OotB) de Cortex\u00a0Cloud ci-dessous, con\u00e7ues pour pr\u00e9venir ce type d\u2019attaques. Ces r\u00e8gles s\u2019alignent sur des r\u00e9f\u00e9rentiels du secteur tels que <a href=\"https:\/\/owasp.org\/www-project-top-10-ci-cd-security-risks\/\" target=\"_blank\" rel=\"noopener\">les 10\u00a0principaux risques de s\u00e9curit\u00e9 CI\/CD identfi\u00e9s par l\u2019OWASP<\/a> et le <a href=\"https:\/\/www.cisecurity.org\/insights\/white-papers\/cis-software-supply-chain-security-guide\" target=\"_blank\" rel=\"noopener\">Guide\u00a0CIS de la s\u00e9curit\u00e9 de la supply\u00a0chain logicielle<\/a>.<\/p>\n<ul>\n<li><strong>Packages install\u00e9s de mani\u00e8re non s\u00e9curis\u00e9e\u00a0:<\/strong> dans des configurations courantes, GitHub comme npm peuvent distribuer des versions mises \u00e0 jour de packages sans en v\u00e9rifier l\u2019int\u00e9grit\u00e9. Cette faille ouvre la voie \u00e0 des attaquants ayant pris le contr\u00f4le d\u2019un d\u00e9p\u00f4t, qui peuvent alors publier une version malveillante d\u2019un package autoris\u00e9 pour le t\u00e9l\u00e9chargement automatique. Il est donc essentiel, pour les organisations, d\u2019accorder leur confiance tout en v\u00e9rifiant syst\u00e9matiquement chaque package. Dans les pipelines CI\/CD modernes, l\u2019analyse de l\u2019ensemble des packages avant leur mise en \u0153uvre est indispensable.<\/li>\n<li><strong>Package\u00a0npm t\u00e9l\u00e9charg\u00e9 depuis git sans r\u00e9f\u00e9rence \u00e0 un hash de commit\u00a0:<\/strong> en l\u2019absence de hash de commit pr\u00e9cis, l\u2019int\u00e9grit\u00e9 d\u2019un package t\u00e9l\u00e9charg\u00e9 depuis une URL git ne peut pas \u00eatre garantie, ce qui peut conduire un serveur de build \u00e0 r\u00e9cup\u00e9rer une version malveillante.<\/li>\n<li><strong>Projet npm contenant des d\u00e9pendances inutilis\u00e9es\u00a0:<\/strong> des d\u00e9pendances inutilis\u00e9es \u00e9largissent inutilement la surface d\u2019attaque. Si l\u2019une d\u2019elles est compromise par TeamPCP, le projet se retrouve expos\u00e9\u00a0\u2013 m\u00eame si le code concern\u00e9 n\u2019est jamais utilis\u00e9 activement.<\/li>\n<\/ul>\n<h2><a id=\"post-180742-_heading=h.g7k4po0p8pd\"><\/a>Requ\u00eates de l'\u00e9quipe threat\u00a0hunting manag\u00e9 d\u2019Unit\u00a042<\/h2>\n<p>L\u2019\u00e9quipe de services manag\u00e9s de traque des menaces\u00a0(MTH) d\u2019Unit\u00a042 recommande les requ\u00eates\u00a0XQL ci-dessous. Les clients Cortex\u00a0XDR et XSIAM peuvent utiliser ces requ\u00eates pour rechercher d\u2019\u00e9ventuels indicateurs d\u2019exploitation.<\/p>\n<pre class=\"lang:default decode:true\">\/\/ Title: TeamPCP Process Execution Artifacts\r\n\r\n\/\/ Description: Identifies hardcoded components in the deployed payloads - relies on the fact that the python process is being used to execute sub processes with hardcoded command parameters\r\n\r\n\/\/ MITRE ATT&amp;CK TTP ID: T1059\r\n\r\nconfig case_sensitive = false\r\n| dataset = xdr_data\r\n| fields event_type, event_id, event_sub_type, actor_process_image_path, actor_process_command_line, actor_process_image_name, action_process_image_command_line, action_process_image_sha256, action_process_image_name, action_process_image_path, agent_hostname, agent_id\r\n| filter event_type = ENUM.PROCESS and event_sub_type in (ENUM.PROCESS_START) and action_process_image_name in (\"openssl\", \"tar\", \"curl\", \"systemctl\", \"python\") and action_process_image_command_line ~= \"(?:tpcp\\.tar\\.gz|\\-inkey p \\-in session\\.key|models\\.litellm\\.cloud|payload\\.enc|session\\.key\\.enc| sysmon\\.service|openssl rand -out .+session\\.key|import base64; exec\\(base64.b64decode\\(\\')\"<\/pre>\n<pre class=\"lang:default decode:true\">\/\/ Title: TeamPCP File Creation Artifacts\r\n\/\/ Description: Identifies file artifacts related to the TeamPCP enumeration, persistence and exfiltration activity\r\n\/\/ MITRE ATT&amp;CK TTP ID: T1074\r\ndataset = xdr_data\r\n| fields event_type, event_id, event_sub_type, actor_process_image_path, actor_process_command_line, action_file_path, action_file_name, action_file_sha256, actor_process_image_name, agent_hostname, agent_id\r\n| filter event_type = ENUM.FILE and event_sub_type in (ENUM.FILE_CREATE_NEW, ENUM.FILE_WRITE) and (action_file_name in (\"session.key\", \"payload.enc\", \"session.key.enc\", \"tpcp.tar.gz\", \"sysmon.service\", \"pglog\", \".pg_state\") and actor_process_image_name in (\"python*\", \"openssl\"))<\/pre>\n<pre class=\"lang:default decode:true\">\/\/ Title: TeamPCP Network Artifacts\r\n\r\n\/\/ Description: AWS and Kube API interaction from a single python process indicative of the enumeration and lateral movement observed by TeamPCP\r\n\r\n\/\/ MITRE ATT&amp;CK TTP ID: T1021.007\r\n\r\ndataset = xdr_data\r\n| fields event_type, event_id, event_sub_type, actor_process_image_path, actor_process_command_line, actor_process_image_name, uri, actor_process_instance_id, agent_hostname, agent_id\r\n| filter event_type in (ENUM.STORY, ENUM.NETWORK) and uri ~= \"(?:\/api\/v1\/namespaces\/.+\/secrets|\/api\/v1\/secrets|\/api\/v1\/namespaces|\/api\/v1\/nodes|\/api\/v1\/namespaces\/kube-system\/pods|\/latest\/meta-data\/iam\/security-credentials\/|\/latest\/api\/token)\" and actor_process_image_name contains \"python\"\r\n| comp values(agent_hostname) as agent_hostname, values(actor_process_command_line) as actor_process_command_line, values(uri) as uri, count_distinct(uri) as uri_cnt by actor_process_image_name, actor_process_instance_id\r\n| filter uri_cnt &gt; 3<\/pre>\n<h2><a id=\"post-180742-_heading=h.p9t6sawowps3\"><\/a>Conclusion<\/h2>\n<p>Face \u00e0 l\u2019escalade rapide des op\u00e9rations de supply\u00a0chain men\u00e9es par TeamPCP, Palo\u00a0Alto Networks recommande vivement aux organisations d\u2019auditer sans d\u00e9lai, dans leurs environnements de d\u00e9veloppement comme de production, les \u00e9l\u00e9ments suivants\u00a0:<\/p>\n<ul>\n<li>Les pipelines\u00a0CI\/CD<\/li>\n<li>Les GitHub\u00a0Personal Access\u00a0Tokens\u00a0(PAT)<\/li>\n<li>Les identifiants des fournisseurs\u00a0cloud<\/li>\n<li>Les jetons de compte de service Kubernetes\u00a0(SAT)<\/li>\n<li>Les cl\u00e9s\u00a0SSH utilis\u00e9es dans les environnements conteneuris\u00e9s<\/li>\n<\/ul>\n<p>Entre f\u00e9vrier et mars\u00a02026, cet acteur est pass\u00e9 du ransomware et du cryptominage \u00e0 un mod\u00e8le de compromission de la supply\u00a0chain cibl\u00e9 et structur\u00e9. Cette op\u00e9ration a d\u00e9j\u00e0 permis de compromettre des outils de s\u00e9curit\u00e9 de confiance comme Aqua\u00a0Security Trivy et Checkmarx\u00a0KICS, ainsi que la passerelle BerriAI LiteLLM.<\/p>\n<p>Les organisations doivent accorder la priorit\u00e9 \u00e0 la mise en \u0153uvre des recommandations imm\u00e9diates formul\u00e9es dans ce bulletin, en particulier celles relatives \u00e0 la visibilit\u00e9 sur la SBOM et au renforcement des politiques\u00a0CI\/CD, afin de r\u00e9duire les risques de lat\u00e9ralisation et d\u2019exfiltration de donn\u00e9es.<\/p>\n<p>Les clients Palo\u00a0Alto Networks b\u00e9n\u00e9ficient d\u2019une protection renforc\u00e9e gr\u00e2ce \u00e0 nos solutions, comme d\u00e9taill\u00e9 ci-dessous. Nous mettrons \u00e0 jour ce Bulletin s\u00e9curit\u00e9 au fur et \u00e0 mesure de l\u2019\u00e9volution de la situation et de l\u2019arriv\u00e9e de nouvelles informations pertinentes.<\/p>\n<h2><a id=\"post-180742-_heading=h.98raiactm182\"><\/a>Protections des produits Palo\u00a0Alto Networks contre l\u2019attaque en plusieurs \u00e9tapes de la supply\u00a0chain de TeamPCP<\/h2>\n<p>Les clients Palo\u00a0Alto\u00a0Networks peuvent s\u2019appuyer sur un large \u00e9ventail de protections int\u00e9gr\u00e9es aux produits et de mises \u00e0 jour pour identifier et contrer cette menace.<\/p>\n<p>Les bonnes pratiques pr\u00eates \u00e0 l\u2019emploi\u00a0(OotB) de <a href=\"https:\/\/docs-cortex.paloaltonetworks.com\/r\/Cortex-CLOUD\/Cortex-Cloud-Runtime-Security-Documentation\/Endpoint-protection\" target=\"_blank\" rel=\"noopener\">Cortex Cloud<\/a> en mati\u00e8re de s\u00e9curit\u00e9 de la supply chain sont con\u00e7ues pour d\u00e9tecter, au sein d\u2019un environnement, l\u2019utilisation de pipelines CI\/CD Trivy et LiteLLM non \u00e9pingl\u00e9s, et g\u00e9n\u00e9rer les alertes appropri\u00e9es. Nous encourageons les organisations \u00e0 \u00e9pingler des versions de packages pr\u00e9cises et connues pour leurs applications de supply\u00a0chain.<\/p>\n<p>La figure\u00a08 montre ce que la plateforme Cortex\u00a0Cloud affiche lors de la consultation des catalogues Supply\u00a0Chain pour Trivy, Checkmarx et LiteLLM. La figure\u00a09 pr\u00e9sente l\u2019affichage de la couverture Application\u00a0Security pour les actifs d\u2019un environnement. La figure\u00a010 met en \u00e9vidence des d\u00e9tections notables de secrets pr\u00e9sents dans des ressources cloud potentiellement vuln\u00e9rables.<\/p>\n<figure id=\"attachment_180820\" aria-describedby=\"caption-attachment-180820\" style=\"width: 500px\" class=\"wp-caption alignnone\"><img  class=\"wp-image-180820 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-806785-180742-8.png\" alt=\"Capture d\u2019\u00e9cran des r\u00e9sultats de recherche du catalogue Supply Chain dans Cortex Cloud. La requ\u00eate porte sur trivy, checkmarx et litellm.\" width=\"500\" height=\"573\" srcset=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-806785-180742-8.png 522w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-806785-180742-8-384x440.png 384w\" sizes=\"(max-width: 500px) 100vw, 500px\" \/><figcaption id=\"caption-attachment-180820\" class=\"wp-caption-text\">Figure 8. Module Application Security de Cortex Cloud : catalogue des packages de supply chain.<\/figcaption><\/figure>\n<figure id=\"attachment_180831\" aria-describedby=\"caption-attachment-180831\" style=\"width: 1000px\" class=\"wp-caption alignnone\"><img  class=\"wp-image-180831 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-808773-180742-9.png\" alt=\"Tableau de bord Cortex Cloud affichant les statistiques de couverture ASPM : 20 % des actifs sont analys\u00e9s. Des sections pr\u00e9sentent les donn\u00e9es relatives aux vuln\u00e9rabilit\u00e9s, aux faiblesses du code, aux secrets, aux erreurs de configuration et aux malwares, toutes \u00e0 0 %. Deux actifs sont r\u00e9pertori\u00e9s avec des informations telles que le type d\u2019actif et le statut de la derni\u00e8re analyse, tous deux marqu\u00e9s comme termin\u00e9s via GitHub Actions.\" width=\"1000\" height=\"502\" srcset=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-808773-180742-9.png 1355w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-808773-180742-9-786x394.png 786w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-808773-180742-9-768x385.png 768w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/><figcaption id=\"caption-attachment-180831\" class=\"wp-caption-text\">Figure 9. Module Application Security de Cortex Cloud : vue de la couverture.<\/figcaption><\/figure>\n<figure id=\"attachment_180842\" aria-describedby=\"caption-attachment-180842\" style=\"width: 800px\" class=\"wp-caption alignnone\"><img  class=\"wp-image-180842 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-810899-180742-10.png\" alt=\"Tableau de bord Cortex Cloud affichant une liste de probl\u00e8mes de s\u00e9curit\u00e9 class\u00e9s dans la cat\u00e9gorie \u00ab Secrets \u00bb. Plusieurs entr\u00e9es y apparaissent, avec des niveaux de s\u00e9v\u00e9rit\u00e9 vari\u00e9s, allant de faible \u00e0 \u00e9lev\u00e9. Les entr\u00e9es indiquent les actifs associ\u00e9s et proposent des options pour des actions compl\u00e9mentaires.\" width=\"800\" height=\"432\" srcset=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-810899-180742-10.png 876w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-810899-180742-10-786x424.png 786w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/05\/word-image-810899-180742-10-768x415.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption id=\"caption-attachment-180842\" class=\"wp-caption-text\">Figure 10. Module Application Security de Cortex Cloud : vue des secrets d\u00e9tect\u00e9s.<\/figcaption><\/figure>\n<p>L\u2019offre <a href=\"https:\/\/www.paloaltonetworks.com\/unit42\/assess\/cloud-security-assessment\" target=\"_blank\" rel=\"noopener\">Unit\u00a042 Cloud Security\u00a0Assessment<\/a> est un service d\u2019\u00e9valuation qui examine l\u2019infrastructure\u00a0cloud afin d\u2019identifier les erreurs de configuration et les failles de s\u00e9curit\u00e9.<\/p>\n<p>Vous pensez que votre entreprise a \u00e9t\u00e9 compromise\u00a0? Vous devez faire face \u00e0 une urgence\u00a0? Contactez <a href=\"https:\/\/start.paloaltonetworks.com\/contact-unit42.html\" target=\"_blank\" rel=\"noopener\">l\u2019\u00e9quipe Unit\u00a042 de r\u00e9ponse \u00e0 incident<\/a> ou composez l\u2019un des num\u00e9ros suivants\u00a0:<\/p>\n<ul>\n<li>Am\u00e9rique du Nord\u00a0: Gratuit\u00a0: +1 (866) 486-4842 (866.4.UNIT42)<\/li>\n<li>Royaume-Uni\u00a0: +44\u00a020\u00a03743\u00a03660<\/li>\n<li>Europe et Moyen-Orient\u00a0: +31.20.299.3130<\/li>\n<li>Asie\u00a0: +65.6983.8730<\/li>\n<li>Japon\u00a0: +81\u00a050\u00a01790\u00a00200<\/li>\n<li>Australie\u00a0: +61.2.4062.7950<\/li>\n<li>Inde\u00a0: 000 800 050 45107<\/li>\n<li>Cor\u00e9e du Sud\u00a0: +82.080.467.8774<\/li>\n<\/ul>\n<h3><a id=\"post-180742-_heading=h.5ksxfk3mir76\"><\/a>Cloud-Delivered Security Services pour les Next-Generation Firewall<\/h3>\n<p><a href=\"https:\/\/docs.paloaltonetworks.com\/pan-os\/10-1\/pan-os-new-features\/url-filtering-features\/advanced-url-filtering\" target=\"_blank\" rel=\"noopener\">Advanced\u00a0URL\u00a0Filtering<\/a> et <a href=\"https:\/\/docs.paloaltonetworks.com\/dns-security\" target=\"_blank\" rel=\"noopener\">Advanced\u00a0DNS\u00a0Security<\/a> permettent d\u2019identifier les domaines et URL associ\u00e9s \u00e0 cette activit\u00e9 comme \u00e9tant malveillants.<\/p>\n<h3><a id=\"post-180742-_heading=h.glz142exwm4g\"><\/a>Cortex AgentiX<\/h3>\n<p>Les analystes s\u00e9curit\u00e9 peuvent utiliser le langage naturel pour interroger l\u2019agent <a href=\"https:\/\/www.paloaltonetworks.com\/cortex\/agentix\" target=\"_blank\" rel=\"noopener\">Cortex\u00a0AgentiX<\/a> Threat\u00a0Intel et lui demander d\u2019extraire, \u00e0 partir de ce briefing s\u00e9curit\u00e9, les indicateurs de compromission\u00a0(IoC) li\u00e9s aux fichiers. Les organisations devront ensuite enrichir le dossier et maintenir une vigilance active dans leur tenant Cortex vis-\u00e0-vis des alertes associ\u00e9es. L\u2019agent AgentiX fournira une synth\u00e8se rapide de l\u2019impact potentiel pour l\u2019organisation. Les analystes peuvent \u00e9galement s\u2019appuyer sur l\u2019agent Case\u00a0Investigation pour obtenir davantage de d\u00e9tails sur les dossiers et artefacts li\u00e9s \u00e0 cette campagne et, le cas \u00e9ch\u00e9ant, \u00e9laborer un plan de r\u00e9ponse.<\/p>\n<h3><a id=\"post-180742-_heading=h.l6l18f9fhq9s\"><\/a>Cortex\u00a0XDR et XSIAM<\/h3>\n<p><a href=\"https:\/\/docs-cortex.paloaltonetworks.com\/p\/XDR\" target=\"_blank\" rel=\"noopener\">Cortex XDR<\/a> et <a href=\"https:\/\/docs-cortex.paloaltonetworks.com\/p\/XSIAM\" target=\"_blank\" rel=\"noopener\">XSIAM<\/a> offrent une d\u00e9fense multicouche\u00a0\u2013 incluant Behavioral\u00a0Threat Protection\u00a0(BTP), Advanced WildFire et Cortex\u00a0Analytics\u00a0\u2013 pour aider \u00e0 prot\u00e9ger contre l\u2019acc\u00e8s initial, le C2 et le mouvement lat\u00e9ral potentiel d\u00e9crits dans cet article.<\/p>\n<h3>Cortex\u00a0Xpanse<\/h3>\n<p><a href=\"https:\/\/docs-cortex.paloaltonetworks.com\/p\/XPANSE\" target=\"_blank\" rel=\"noopener\">Cortex\u00a0Xpanse<\/a> permet d\u2019identifier les appareils\u00a0LiteLLM expos\u00e9s sur Internet et d\u2019alerter les \u00e9quipes de d\u00e9fense. Les clients peuvent activer l\u2019alerte associ\u00e9e \u00e0 ce risque en veillant \u00e0 ce que la r\u00e8gle LiteLLM\u00a0Attack Surface\u00a0Rule soit bien activ\u00e9e. Les incidents identifi\u00e9s peuvent \u00eatre consult\u00e9s dans le Threat Response Center ou dans la vue incident d\u2019Expander. Ces r\u00e9sultats sont \u00e9galement disponibles pour les clients Cortex\u00a0XSIAM ayant souscrit au module\u00a0ASM.<\/p>\n<h3><a id=\"post-180742-_heading=h.ubo1b5jhyu7n\"><\/a>Cortex\u00a0Cloud<\/h3>\n<ul>\n<li>Les clients Cortex\u00a0Cloud b\u00e9n\u00e9ficient d\u2019une meilleure protection contre les abus pr\u00e9sent\u00e9s dans cet article gr\u00e2ce au d\u00e9ploiement appropri\u00e9 de l\u2019<a href=\"https:\/\/docs-cortex.paloaltonetworks.com\/r\/Cortex-CLOUD\/Cortex-Cloud-Runtime-Security-Documentation\/Endpoint-protection\">agent de terminaux XDR<\/a> de Cortex\u00a0Cloud et des <a href=\"https:\/\/docs-cortex.paloaltonetworks.com\/r\/Cortex-XSIAM\/Cortex-XSIAM-Premium-Documentation\/Use-cases\" target=\"_blank\" rel=\"noopener\">agents serverless<\/a> au sein de leur environnement cloud. Con\u00e7u pour prot\u00e9ger la posture de s\u00e9curit\u00e9 du cloud et ses op\u00e9rations en ex\u00e9cution face \u00e0 ces menaces, Cortex Cloud aide \u00e0 d\u00e9tecter et \u00e0 pr\u00e9venir les op\u00e9rations malveillantes, les modifications de configuration ou les exploitations \u00e9voqu\u00e9es dans cet article.<\/li>\n<li>Cortex\u00a0Cloud <a href=\"https:\/\/docs-cortex.paloaltonetworks.com\/r\/Cortex-CLOUD\/Cortex-Cloud-Runtime-Security-Documentation\/What-is-Cortex-Cloud-Identity-Security\" target=\"_blank\" rel=\"noopener\">Identity\u00a0Security<\/a>, qui regroupe les fonctions de gestion des droits sur l\u2019infrastructure cloud\u00a0(CIEM), de gestion de la posture de s\u00e9curit\u00e9 des identit\u00e9s\u00a0(ISPM), de gouvernance des acc\u00e8s aux donn\u00e9es\u00a0(DAG) ainsi que la d\u00e9tection et r\u00e9ponse aux menaces sur les identit\u00e9s\u00a0(ITDR). Cette solution offre aux organisations les capacit\u00e9s n\u00e9cessaires pour renforcer la s\u00e9curit\u00e9 li\u00e9e aux identit\u00e9s\u00a0: Les modules d\u2019Identity\u00a0Security offrent visibilit\u00e9 compl\u00e8te sur les identit\u00e9s et leurs permissions dans les environnements cloud, d\u00e9tection pr\u00e9cise des configurations erron\u00e9es et identification des acc\u00e8s ind\u00e9sirables aux donn\u00e9es sensibles Ils fournissent \u00e9galement une analyse en temps r\u00e9el des usages et des sch\u00e9mas d\u2019acc\u00e8s, au service d\u2019une surveillance de s\u00e9curit\u00e9 continue.<\/li>\n<li>Le module Application\u00a0Security de Cortex\u00a0Cloud\u00a0(<a href=\"https:\/\/www.paloaltonetworks.com\/cortex\/cloud\/application-security-posture-management\" target=\"_blank\" rel=\"noopener\">ASPM<\/a>) prend en charge l\u2019ingestion des journaux d\u2019audit de s\u00e9curit\u00e9 et des d\u00e9tections issus de fournisseurs\u00a0SaaS tiers mentionn\u00e9s dans cet article, tout en permettant de prioriser les alertes, incidents, politiques et actifs en fonction des applications ing\u00e9r\u00e9es. Les \u00e9quipes s\u00e9curit\u00e9 peuvent ainsi renforcer leur visibilit\u00e9 globale sur leurs environnements on-prem et cloud\u00a0\u2013 et \u00eatre alert\u00e9es sur les menaces d\u00e9crites ici.<\/li>\n<\/ul>\n<table style=\"width: 100.759%; height: 120px;\">\n<tbody>\n<tr style=\"height: 24px;\">\n<td style=\"width: 60.2911%; text-align: center; height: 24px;\"><strong>Nom de l\u2019alerte<\/strong><\/td>\n<td style=\"width: 74.7401%; text-align: center; height: 24px;\"><strong>Tactique MITRE ATT&amp;CK<\/strong><\/td>\n<\/tr>\n<tr style=\"height: 24px;\">\n<td style=\"width: 60.2911%; height: 24px;\"><a href=\"https:\/\/docs-cortex.paloaltonetworks.com\/r\/Cortex-XDR\/Cortex-XDR-Analytics-Alert-Reference-by-Alert-name\/Unusual-Kubernetes-service-account-file-read\" target=\"_blank\" rel=\"noopener\">Lecture inhabituelle d\u2019un fichier de compte de service Kubernetes<\/a><\/td>\n<td style=\"width: 74.7401%; height: 24px;\">Credential Access (Acc\u00e8s aux identifiants) (TA0006)<\/td>\n<\/tr>\n<tr style=\"height: 24px;\">\n<td style=\"width: 60.2911%; height: 24px;\"><a href=\"https:\/\/docs-cortex.paloaltonetworks.com\/r\/Cortex-XDR\/Cortex-XDR-Analytics-Alert-Reference-by-Alert-name\/Unusual-cloud-Instance-Metadata-Service-IMDS-access\" target=\"_blank\" rel=\"noopener\">Acc\u00e8s inhabituel \u00e0 l\u2019Instance Metadata Service (IMDS) d\u2019un environnement cloud<\/a><\/td>\n<td style=\"width: 74.7401%; height: 24px;\">Credential Access (Acc\u00e8s aux identifiants) (TA0006)<\/td>\n<\/tr>\n<tr style=\"height: 24px;\">\n<td style=\"width: 60.2911%; height: 24px;\"><a href=\"https:\/\/docs-cortex.paloaltonetworks.com\/r\/Cortex-XDR\/Cortex-XDR-Analytics-Alert-Reference-by-Alert-name\/Suspicious-access-to-cloud-credential-files\" target=\"_blank\" rel=\"noopener\">Acc\u00e8s suspect \u00e0 des fichiers d\u2019identifiants cloud<\/a><\/td>\n<td style=\"width: 74.7401%; height: 24px;\">Credential Access (Acc\u00e8s aux identifiants) (TA0006)<\/td>\n<\/tr>\n<tr style=\"height: 24px;\">\n<td style=\"width: 60.2911%; height: 24px;\"><a href=\"https:\/\/docs-cortex.paloaltonetworks.com\/r\/Cortex-XDR\/Cortex-XDR-Analytics-Alert-Reference-by-Alert-name\/Kubernetes-secret-enumeration-activity\" target=\"_blank\" rel=\"noopener\">Activit\u00e9 d\u2019extraction de valeurs de secrets Kubernetes<\/a><\/td>\n<td style=\"width: 74.7401%; height: 24px;\">Credential Access (Acc\u00e8s aux identifiants) (TA0006)<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3><a id=\"post-180742-_heading=h.ei5tx2c3rvsy\"><\/a>Next-Generation Firewall avec Advanced Threat Prevention<\/h3>\n<p>La fonctionnalit\u00e9 <a href=\"https:\/\/docs.paloaltonetworks.com\/dns-security\" target=\"_blank\" rel=\"noopener\">Advanced Threat Prevention<\/a> des <a href=\"https:\/\/docs.paloaltonetworks.com\/pan-os\/10-1\/pan-os-new-features\/url-filtering-features\/advanced-url-filtering\" target=\"_blank\" rel=\"noopener\">Next-Generation Firewal<\/a>l (NGFW) peut aider \u00e0 pr\u00e9venir l'exfiltration de donn\u00e9es via la signature Threat Prevention <a href=\"https:\/\/threatvault.paloaltonetworks.com\/?q=87120\" target=\"_blank\" rel=\"noopener\">87120<\/a>.<\/p>\n<h2><a id=\"post-180742-_heading=h.6jovsyvspi6\"><\/a>Indicateurs de compromission<\/h2>\n<h3><a id=\"post-180742-_heading=h.xe3vs1kmznqr\"><\/a>Adresses\u00a0IP<\/h3>\n<ul>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">23.142.184[.]129<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">45.148.10[.]212<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">63.251.162[.]11<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">83.142.209[.]11<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">83.142.209[.]203<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">195.5.171[.]242<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">209.34.235[.]18<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">212.71.124[.]188<\/span><\/li>\n<\/ul>\n<h3><a id=\"post-180742-_heading=h.k204fi2mu2mn\"><\/a>Domaines<\/h3>\n<ul>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">checkmarx[.]zone<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">models.litellm[.]cloud<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">scan.aquasecurtiy[.]org<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">tdtqy-oyaaa-aaaae-af2dq-cai.raw.icp0[.]io<\/span><\/li>\n<\/ul>\n<h3><a id=\"post-180742-_heading=h.mhwzfbamss6m\"><\/a>URL de tunneling<\/h3>\n<ul>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">championships-peoples-point-cassette.trycloudflare[.]com<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">create-sensitivity-grad-sequence.trycloudflare[.]com<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">investigation-launches-hearings-copying.trycloudflare[.]com<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">plug-tab-protective-relay.trycloudflare[.]com<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">souls-entire-defined-routes.trycloudflare[.]com<\/span><\/li>\n<\/ul>\n<h3><a id=\"post-180742-_heading=h.yu0mwwbhlp5j\"><\/a>Hacchages SHA256 des certificats autosign\u00e9s utilis\u00e9s par le malware<\/h3>\n<ul>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">30015DD1E2CF4DBD49FFF9DDEF2AD4622DA2E60E5C0B6228595325532E948F14<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">41C4F2F37C0B257D1E20FE167F2098DA9D2E0A939B09ED3F63BC4FE010F8365C<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">D8CAF4581C9F0000C7568D78FB7D2E595AB36134E2346297D78615942CBBD727<\/span><\/li>\n<\/ul>\n<h3><a id=\"post-180742-_heading=h.aa0ah5fe1csg\"><\/a>Noms de fichiers<\/h3>\n<ul>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">kamikaze[.]sh<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">kube[.]py<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">prop[.]py<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">proxy_server[.]py<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">tpcp.tar[.]gz<\/span><\/li>\n<\/ul>\n<h3><a id=\"post-180742-_heading=h.yfzq5povogz\"><\/a>Hachages\u00a0SHA256 des fichiers malveillants<\/h3>\n<ul>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">0880819ef821cff918960a39c1c1aada55a5593c61c608ea9215da858a86e349<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">0c0d206d5e68c0cf64d57ffa8bc5b1dad54f2dda52f24e96e02e237498cb9c3a<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">0c6a3555c4eb49f240d7e0e3edbfbb3c900f123033b4f6e99ac3724b9b76278f<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">18a24f83e807479438dcab7a1804c51a00dafc1d526698a66e0640d1e5dd671a<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">1e559c51f19972e96fcc5a92d710732159cdae72f407864607a513b20729decb<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">5e2ba7c4c53fa6e0cef58011acdd50682cf83fb7b989712d2fcf1b5173bad956<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">61ff00a81b19624adaad425b9129ba2f312f4ab76fb5ddc2c628a5037d31a4ba<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">6328a34b26a63423b555a61f89a6a0525a534e9c88584c815d937910f1ddd538<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">7321caa303fe96ded0492c747d2f353c4f7d17185656fe292ab0a59e2bd0b8d9<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">7b5cc85e82249b0c452c66563edca498ce9d0c70badef04ab2c52acef4d629ca<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">7df6cef7ab9aae2ea08f2f872f6456b5d51d896ddda907a238cd6668ccdc4bb7<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">822dd269ec10459572dfaaefe163dae693c344249a0161953f0d5cdd110bd2a0<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">887e1f5b5b50162a60bd03b66269e0ae545d0aef0583c1c5b00972152ad7e073<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">bef7e2c5a92c4fa4af17791efc1e46311c0f304796f1172fce192f5efc40f5d7<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">c37c0ae9641d2e5329fcdee847a756bf1140fdb7f0b7c78a40fdc39055e7d926<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">cd08115806662469bbedec4b03f8427b97c8a4b3bc1442dc18b72b4e19395fe3<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">d5edd791021b966fb6af0ace09319ace7b97d6642363ef27b3d5056ca654a94c<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">e4edd126e139493d2721d50c3a8c49d3a23ad7766d0b90bc45979ba675f35fea<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">e6310d8a003d7ac101a6b1cd39ff6c6a88ee454b767c1bdce143e04bc1113243<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">e64e152afe2c722d750f10259626f357cdea40420c5eedae37969fbf13abbecf<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">e87a55d3ba1c47e84207678b88cacb631a32d0cb3798610e7ef2d15307303c49<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">e9b1e069efc778c1e77fb3f5fcc3bd3580bbc810604cbf4347897ddb4b8c163b<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">ecce7ae5ffc9f57bb70efd3ea136a2923f701334a8cd47d4fbf01a97fd22859c<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">f398f06eefcd3558c38820a397e3193856e4e6e7c67f81ecc8e533275284b152<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">f7084b0229dce605ccc5506b14acd4d954a496da4b6134a294844ca8d601970d<\/span><\/li>\n<\/ul>\n<p><em>Mis \u00e0 jour le 9 avril 2026 \u00e0 8h00 PT pour ajouter la couverture Advanced Threat Prevention.<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>TeamPCP poursuit ses offensives contre la supply chain et annonce son rapprochement avec le groupe de ransomware Vect.<\/p>\n","protected":false},"author":23,"featured_media":176427,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":""},"categories":[8787,8769],"tags":[9819,9204,9205,9546,9515,9988],"product_categories":[8956,8973,8979,8955,9041,9046,9053,9077,9064,9151],"coauthors":[1025],"class_list":["post-180742","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-malware-fr","category-top-cyberthreats-fr","tag-cve-2025-55182-fr","tag-github-fr","tag-infostealer-fr","tag-python-fr","tag-supply-chain-fr","tag-wiper","product_categories-advanced-dns-security-fr","product_categories-advanced-url-filtering-fr","product_categories-advanced-wildfire-fr","product_categories-cloud-delivered-security-services-fr","product_categories-cortex-fr","product_categories-cortex-cloud-fr","product_categories-cortex-xdr-fr","product_categories-cortex-xpanse-fr","product_categories-cortex-xsiam-fr","product_categories-unit-42-incident-response-fr"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.0 (Yoast SEO v27.0) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Quand les remparts deviennent des armes : l\u2019attaque multi-\u00e9tapes de TeamPCP contre l\u2019infrastructure de s\u00e9curit\u00e9<\/title>\n<meta name=\"description\" content=\"TeamPCP poursuit ses offensives contre la supply chain et annonce son rapprochement avec le groupe de ransomware Vect.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/unit42.paloaltonetworks.com\/es-la\/?p=180858\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Quand les remparts deviennent des armes : l\u2019attaque multi-\u00e9tapes de TeamPCP contre l\u2019infrastructure de s\u00e9curit\u00e9\" \/>\n<meta property=\"og:description\" content=\"TeamPCP poursuit ses offensives contre la supply chain et annonce son rapprochement avec le groupe de ransomware Vect.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/unit42.paloaltonetworks.com\/es-la\/?p=180858\" \/>\n<meta property=\"og:site_name\" content=\"Unit 42\" \/>\n<meta property=\"article:published_time\" content=\"2026-03-31T16:13:05+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-05-15T16:55:05+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/03\/03_Cybercrime_Category_1920x900.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1920\" \/>\n\t<meta property=\"og:image:height\" content=\"900\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Unit 42\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Quand les remparts deviennent des armes : l\u2019attaque multi-\u00e9tapes de TeamPCP contre l\u2019infrastructure de s\u00e9curit\u00e9","description":"TeamPCP poursuit ses offensives contre la supply chain et annonce son rapprochement avec le groupe de ransomware Vect.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/unit42.paloaltonetworks.com\/es-la\/?p=180858","og_locale":"fr_FR","og_type":"article","og_title":"Quand les remparts deviennent des armes : l\u2019attaque multi-\u00e9tapes de TeamPCP contre l\u2019infrastructure de s\u00e9curit\u00e9","og_description":"TeamPCP poursuit ses offensives contre la supply chain et annonce son rapprochement avec le groupe de ransomware Vect.","og_url":"https:\/\/unit42.paloaltonetworks.com\/es-la\/?p=180858","og_site_name":"Unit 42","article_published_time":"2026-03-31T16:13:05+00:00","article_modified_time":"2026-05-15T16:55:05+00:00","og_image":[{"width":1920,"height":900,"url":"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/03\/03_Cybercrime_Category_1920x900.jpg","type":"image\/jpeg"}],"author":"Unit 42","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/unit42.paloaltonetworks.com\/es-la\/?p=180858#article","isPartOf":{"@id":"https:\/\/unit42.paloaltonetworks.com\/es-la\/?p=180858"},"author":{"name":"Unit 42","@id":"https:\/\/unit42.paloaltonetworks.com\/#\/schema\/person\/a891f81d18648a1e0bab742238d31a63"},"headline":"Quand les remparts deviennent des armes : l\u2019attaque multi-\u00e9tapes de TeamPCP contre l\u2019infrastructure de s\u00e9curit\u00e9","datePublished":"2026-03-31T16:13:05+00:00","dateModified":"2026-05-15T16:55:05+00:00","mainEntityOfPage":{"@id":"https:\/\/unit42.paloaltonetworks.com\/es-la\/?p=180858"},"wordCount":5244,"image":{"@id":"https:\/\/unit42.paloaltonetworks.com\/es-la\/?p=180858#primaryimage"},"thumbnailUrl":"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/03\/03_Cybercrime_Category_1920x900.jpg","keywords":["CVE-2025-55182","GitHub","Infostealer","Python","supply chain","wiper"],"articleSection":["Malware","Menaces de grande envergure"],"inLanguage":"fr-FR"},{"@type":"WebPage","@id":"https:\/\/unit42.paloaltonetworks.com\/es-la\/?p=180858","url":"https:\/\/unit42.paloaltonetworks.com\/es-la\/?p=180858","name":"Quand les remparts deviennent des armes : l\u2019attaque multi-\u00e9tapes de TeamPCP contre l\u2019infrastructure de s\u00e9curit\u00e9","isPartOf":{"@id":"https:\/\/unit42.paloaltonetworks.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/unit42.paloaltonetworks.com\/es-la\/?p=180858#primaryimage"},"image":{"@id":"https:\/\/unit42.paloaltonetworks.com\/es-la\/?p=180858#primaryimage"},"thumbnailUrl":"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/03\/03_Cybercrime_Category_1920x900.jpg","datePublished":"2026-03-31T16:13:05+00:00","dateModified":"2026-05-15T16:55:05+00:00","author":{"@id":"https:\/\/unit42.paloaltonetworks.com\/#\/schema\/person\/a891f81d18648a1e0bab742238d31a63"},"description":"TeamPCP poursuit ses offensives contre la supply chain et annonce son rapprochement avec le groupe de ransomware Vect.","breadcrumb":{"@id":"https:\/\/unit42.paloaltonetworks.com\/es-la\/?p=180858#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/unit42.paloaltonetworks.com\/es-la\/?p=180858"]}]},{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/unit42.paloaltonetworks.com\/es-la\/?p=180858#primaryimage","url":"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/03\/03_Cybercrime_Category_1920x900.jpg","contentUrl":"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2026\/03\/03_Cybercrime_Category_1920x900.jpg","width":1920,"height":900,"caption":"Pictorial representation of TeamPCP. Glowing code on a screen where several word such as Crime, Hackers, and Security are highlighted in a contrasting color."},{"@type":"BreadcrumbList","@id":"https:\/\/unit42.paloaltonetworks.com\/es-la\/?p=180858#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/unit42.paloaltonetworks.com\/"},{"@type":"ListItem","position":2,"name":"Quand les remparts deviennent des armes : l\u2019attaque multi-\u00e9tapes de TeamPCP contre l\u2019infrastructure de s\u00e9curit\u00e9"}]},{"@type":"WebSite","@id":"https:\/\/unit42.paloaltonetworks.com\/#website","url":"https:\/\/unit42.paloaltonetworks.com\/","name":"Unit 42","description":"Palo Alto Networks","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/unit42.paloaltonetworks.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fr-FR"},{"@type":"Person","@id":"https:\/\/unit42.paloaltonetworks.com\/#\/schema\/person\/a891f81d18648a1e0bab742238d31a63","name":"Unit 42","image":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/unit42.paloaltonetworks.com\/#\/schema\/person\/image\/24dfba25c0e71d4de1836b78795bc2e5","url":"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/09\/Insights_headshot-placeholder-300x300.jpg","contentUrl":"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/09\/Insights_headshot-placeholder-300x300.jpg","caption":"Unit 42"},"url":"https:\/\/unit42.paloaltonetworks.com\/fr\/author\/unit42\/"}]}},"_links":{"self":[{"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/posts\/180742","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/users\/23"}],"replies":[{"embeddable":true,"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/comments?post=180742"}],"version-history":[{"count":3,"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/posts\/180742\/revisions"}],"predecessor-version":[{"id":180857,"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/posts\/180742\/revisions\/180857"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/media\/176427"}],"wp:attachment":[{"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/media?parent=180742"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/categories?post=180742"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/tags?post=180742"},{"taxonomy":"product_categories","embeddable":true,"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/product_categories?post=180742"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/coauthors?post=180742"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}