L’attaque Mockingjay échappe aux outils EDR grâce à une technique d’injection de code

Des chercheurs en sécurité ont identifié une nouvelle méthode d’attaque qui contourne les outils de sécurité des terminaux. Voici comment se défendre contre l’attaque Mockingjay.

Jun 30, 2023
5 minute read
eSecurity Planet Le contenu et les recommandations de produits sont indépendants de la rédaction. Nous pouvons gagner de l'argent lorsque vous cliquez sur des liens vers nos partenaires. En savoir plus

Des chercheurs en sécurité ont identifié une nouvelle technique de piratage sophistiquée, baptisée « Mockingjay », capable de contourner les outils de détection et de réponse des terminaux (EDR) en injectant du code malveillant dans un espace mémoire de confiance. Cette approche furtive permet aux attaquants d’opérer sans être détectés sur le réseau d’une organisation pendant de longues périodes avec

La technique d’attaque — identifiée par les chercheurs de Security Joes — constitue un défi tant pour les fournisseurs d’outils EDR que pour les équipes de sécurité.

« Pour contrer efficacement ce type d’attaque, les solutions de sécurité doivent adopter une approche globale et proactive qui va au-delà de la surveillance statique de DLL ou d’appels système spécifiques », ont écrit. » «Analyse comportementale, détection des anomalies et techniques d’apprentissage automatique peuvent améliorer la capacité à identifier les techniques d’injection de processus et à détecter les activités malveillantes dans l’espace mémoire de processus de confiance. »

Voir les principales solutions EDR

L’attaque Mockingjay expliquée

L’attaque Mockingjay cible des processus de confiance et légitimes exécutés sur le système et évite ou limite l’utilisation des API Windows que les outils EDR associent généralement aux attaques par injection. En injectant secrètement du code malveillant dans l’espace mémoire du processus de confiance, Mockingjay dissimule ses activités au sein d’un processus apparemment inoffensif.

Les outils EDR surveillent généralement les API Windows dans l’espace mémoire des processus pour détecter les attaques par injection. Les chercheurs ont donc cherché d’autres méthodes permettant d’exécuter dynamiquement du code dans l’espace mémoire des processus Windows sans dépendre des API Windows surveillées.

Ils ont détaillé deux techniques d’attaque de ce type dans leur article de blog.

Ils ont étudié des bibliothèques Windows de confiance contenant des sections dont les protections par défaut sont définies sur RWX (Read-Write-Execute). « En détournant ces bibliothèques, nous avons pu injecter du code avec succès dans différents processus et éliminer la nécessité d’exécuter plusieurs API Windows habituellement surveillées par les solutions de sécurité », ont-ils écrit. « Cette approche réduit la probabilité de détection par les logiciels de défense, car notre application n’appelle pas directement les API Windows généralement associées aux techniques d’injection de processus. L’injection est exécutée sans allocation d’espace, modification des autorisations ni même création d’un thread. La particularité de cette technique est qu’elle nécessite une DLL vulnérable et la copie du code dans la section appropriée. »

Advertisement

Les deux techniques d’attaque impliquent des processus situés dans Visual Studio 2022 Community. La première concerne la DLL msys-2.0.dll, tandis que la seconde cible le processus ssh.exe situé dans le répertoire de Visual Studio 2022 Community.

La DLL msys-2.0 contient une section RWX par défaut qui pourrait potentiellement être exploitée pour charger du code malveillant, ont déclaré les chercheurs de Security Joes. Le rapport décrit en détail la technique d’attaque, qu’ils ont résumée en six étapes :

  1. L’application personnalisée charge la DLL vulnérable à l’aide de LoadLibraryW
  2. L’emplacement de la section RWX est déterminé à l’aide de l’adresse de base de la DLL et du décalage de la section
  3. Une copie propre de NTDLL.DLL est chargée depuis le disque, et les numéros des appels système correspondant aux appels souhaités sont récupérés
  4. Les adresses des instructions de test situées après le jmp ajouté par l’EDR sont récupérées depuis la copie en mémoire de NTDLL.DLL (interceptée par l’EDR)
  5. À l’aide des adresses des instructions de test et des numéros des appels système, les chercheurs assemblent leurs stubs dans la zone RWX de la DLL vulnérable
  6. Lorsque le stub est exécuté, il prépare, comme d’habitude, le numéro de l’appel système dans le registre EAX, puis saute immédiatement à l’adresse de l’instruction de test correspondante pour l’appel système choisi, contournant ainsi l’étape de vérification de l’EDR

Une deuxième attaque contre les EDR en détail

Au cours de leurs travaux, les chercheurs ont remarqué que la bibliothèque msys-2.0.dll est « couramment utilisée par les applications qui nécessitent une émulation POSIX, comme les utilitaires GNU ou les applications qui n’ont pas été conçues à l’origine pour l’environnement Windows. Nous avons trouvé des binaires pertinents présentant ces caractéristiques dans le sous-répertoire de Visual Studio 2022 Community. »

Pour leur démonstration, ils ont choisi le processus ssh.exe situé dans le répertoire de Visual Studio 2022 Community comme cible de la charge utile. « Pour y parvenir, nous avons lancé le processus ssh.exe comme processus enfant de notre application personnalisée à l’aide de l’API Windows CreateProcessW », ont-ils écrit, en résumant la technique d’attaque comme suit :

  1. L’application personnalisée est exécutée
  2. L’application de confiance (ssh.exe), qui utilise la DLL msys-2.0.dll, est lancée comme processus enfant
  3. L’application personnalisée ouvre un handle vers le processus cible (ssh.exe)
  4. Le code à injecter est copié dans la section RWX de msys-2.0.dll
  5. L’application de confiance exécute le code injecté dans le cadre de son flux d’exécution normal
  6. La DLL supplémentaire MyLibrary.dll est chargée par le shellcode injecté dans la section RWX
  7. Une session shell de connexion inverse est établie

« La particularité de cette technique réside dans le fait qu’il n’est pas nécessaire d’allouer de la mémoire, de définir des autorisations ou de créer un nouveau thread dans le processus cible pour lancer l’exécution de notre code injecté », ont-ils écrit. « Cette différence distingue cette stratégie des autres techniques existantes et complique la détection de cette méthode par les systèmes de détection et de réponse des terminaux (EDR). »

Advertisement

Comment se défendre contre une attaque Mockingjay

Les systèmes EDR intégrant des fonctions d’analyse comportementale peuvent bloquer une attaque Mockingjay en élargissant leur surveillance aux processus de confiance. Ces techniques de détection peuvent identifier les injections de code et les modifications non autorisées en établissant des profils de comportement de référence et en effectuant des contrôles d’intégrité de la mémoire. Les technologies EDR peuvent améliorer leur capacité à reconnaître et à bloquer les attaques Mockingjay grâce à l’analyse contextuelle et à l’application de méthodes d’apprentissage automatique capables de détecter les schémas anormaux.

Pour les équipes de sécurité, Mockingjay est un argument de plus en faveur de la défense en profondeur : si un outil de sécurité laisse passer une attaque, un second pourrait limiter les dégâts.

À lire ensuite : Protection réseau : comment sécuriser un réseau

Kathryn Timonera

Datamation and eWeek staff writer Kathryn Pearl Timonera has covered a wide range of industries in her career, including technology, cybersecurity, e-commerce, and programming. Kathryn now applies her talent for presenting information to technology and cybersecurity professionals.

eSecurity Planet Logo

eSecurity Planet is a leading resource for IT professionals at large enterprises who are actively researching cybersecurity vendors and latest trends. eSecurity Planet focuses on providing instruction for how to approach common security challenges, as well as informational deep-dives about advanced cybersecurity topics.

Propriété de TechnologyAdvice. © 2026 TechnologyAdvice. Tous droits réservés

Divulgation publicitaire : Certains des produits qui apparaissent sur ce site proviennent d'entreprises dont TechnologyAdvice reçoit une compensation. Cette compensation peut influencer la façon dont les produits apparaissent sur ce site, notamment l'ordre dans lequel ils apparaissent. TechnologyAdvice n'inclut pas toutes les entreprises ou tous les types de produits disponibles sur le marché.