Site icon Sophos News

Vol de cookies : le nouveau terrain de jeu des cybercriminels

vol de cookies

Les malwares voleurs d’identifiants font partie intégrante de la boîte à outils utilisée par une grande variété de cybercriminels et d’attaquants. Alors que les noms des comptes utilisateur et les mots de passe sont les cibles privilégiées des activités de vol d’identifiants, l’utilisation accrue de l’authentification multifacteur (MFA) pour protéger les services Web a néanmoins réduit l’efficacité de cette approche. Les attaquants se tournent de plus en plus vers le vol des “cookies” associés aux identifiants pour cloner des sessions Web actives ou récentes, en contournant le MFA au niveau du processus.

La dernière version du botnet Emotet ne représente que l’une des nombreuses familles de malwares qui ciblent les cookies et autres identifiants stockés par les navigateurs, tels que les données de connexion (logins) stockées et (dans certains cas) celles concernant les cartes de crédit. Le navigateur Chrome de Google utilise la même méthode de chiffrement pour stocker à la fois les cookies d’authentification multifacteur et les données de carte de crédit, les deux étant la cible d’Emotet, bien entendu.

L’éventail des cybercriminels ciblant les cookies est large. Au bas de l’échelle de la cybercriminalité, les malwares voleurs d’informations tels que le malware-as-a-service Raccoon Stealer et le keylogger/voleur d’informations RedLine Stealer, qui peuvent tous deux être achetés via des forums clandestins, sont souvent utilisés par des cybercriminels basiques pour collecter, en masse, des cookies et d’autres identifiants afin de les vendre ensuite à des marketplaces cybercriminels.

L’un de ces marketplaces, Genesis, était la source apparente d’un cookie appartenant à un employé du développeur de jeux, Electronic Arts. Les membres du groupe d’extorsion Lapsus$ ont affirmé avoir acheté un cookie de session volé sur un marketplace, leur donnant ainsi accès à l’instance Slack d’EA ; qui leur a permis d’usurper la connexion (login) existante d’un employé de l’entreprise et de tromper un membre de l’équipe IT de celle-ci en leur fournissant ainsi un accès au réseau. De cette manière Lapsus$ a pu récupérer 780 gigaoctets de données, y compris le code source du jeu et du moteur graphique, que le groupe a ensuite utilisé pour tenter d’extorquer de l’agent à EA.

Ensuite, en haut de l’échelle en matière de sophistication cybercriminelle, nous avons observé des adversaires actifs récolter des cookies de diverses manières. Dans certains cas, nous avons pu observer des opérateurs de ransomware qui utilisaient le même malware voleur d’informations que des attaquants moins sophistiqués. Mais nous avons également souvent vu des attaques pilotées manuellement abusant d’outils de sécurité offensifs légitimes tels que Mimikatz, Metasploit Meterpreter et Cobalt Strike pour lancer des malwares de collecte de cookies ou exécuter des scripts qui récupèrent les cookies à partir des caches des navigateurs.

Il existe également des applications et des processus légitimes qui interagissent avec les fichiers de cookie des navigateurs. Nous avons trouvé des logiciels anti-malware, des outils d’audit et des assistants de système d’exploitation parmi les détections d’espionnage de cookies dans la télémétrie Sophos : Le programme de mise à jour des fonds d’écran de Bing, par exemple, accède aux cookies pour récupérer de nouveaux fonds d’écran. Mais une fois ces sources inoffensives éliminées, nous avons pu observer des milliers de tentatives d’accès aux cookies de navigateur par jour qui sortaient du cadre des comportements inoffensifs d’un logiciel. Parfois, ces détections augmentent considérablement lorsque des campagnes spécifiques sont lancées. De plus, certaines applications légitimes qui utilisent des cookies peuvent les divulguer, exposant ainsi les jetons aux attaquants.

Pris la main dans le sac

Les navigateurs stockent les cookies dans un fichier : pour Mozilla Firefox, Google Chrome et Microsoft Edge, le fichier est une base de données SQLite dans le dossier du profil utilisateur (des fichiers SQLite similaires stockent l’historique du navigateur, les connexions aux sites Web et les informations de remplissage automatique au niveau de ces navigateurs). D’autres applications qui se connectent à des services distants disposent de leurs propres référentiels de cookies ou, dans certains cas, d’un accès à ceux des navigateurs Web.

Le contenu de chaque cookie dans la base de données est une liste de paramètres et de valeurs, une sorte de magasin clé-valeur qui identifie la session du navigateur sur le site Web distant, y compris, dans certains cas, le jeton transmis par le site au navigateur après l’authentification de l’utilisateur. L’une de ces paires clé-valeur spécifie l’expiration du cookie, c’est-à-dire sa durée de validité avant de devoir la renouveler.

Figure 1 : Certains des cookies dans un fichier cookies.sqlite

La raison principale expliquant l’intérêt pour le vol de cookies est simple : les cookies associés à l’authentification au niveau de services Web peuvent être utilisés par des attaquants lors d’attaques du type “pass the cookie“, tentant de se faire passer pour l’utilisateur légitime pour qui le cookie a été initialement émis et d’accéder ainsi aux services Web sans vérification de connexion. Cette technique est similaire aux attaques “pass the hash“, qui utilisent des hachages d’authentification stockés localement pour accéder aux ressources du réseau sans avoir à déchiffrer les mots de passe.

Figure 2 : Activité d’un service Web légitime…

… et comment les attaques de type “pass-the-cookie” parviennent à corrompre ce dernier.

Ce type d’attaque peut conduire à l’exploitation de services Web (tels qu’AWS ou Azure), de software-as-a-service et de services de collaboration débouchant sur une exposition supplémentaire des données ou sur un mouvement latéral, comme la compromission des emails professionnels (BEC : Business Email Compromise), l’accès aux magasins de données Cloud ou l’utilisation d’une session Slack piratée pour inciter d’autres victimes à télécharger des malwares ou exposer d’autres données qui peuvent être exploitées pour obtenir un accès.

De nombreuses applications Web effectuent des vérifications supplémentaires pour empêcher l’usurpation de session, telles que la vérification de l’adresse IP de la requête initiale par rapport à l’endroit où la session a été lancée. Cependant, si les cookies sont utilisés manuellement par un attaquant depuis le même réseau, ce type de mesures peut ne pas suffire à stopper l’exploitation. De plus, les applications qui sont conçues pour une utilisation combinée de type Bureau et Mobile peuvent ne pas utiliser la géolocalisation de manière aussi cohérente.

Certaines attaques visant le vol de cookies peuvent être lancées complètement à distance depuis le propre navigateur de la cible. Les attaques par injection HTML peuvent utiliser du code inséré dans une page Web vulnérable afin d’exploiter des cookies pour d’autres services, donnant ainsi accès aux informations de profil de la cible sur ces services et permettant des changements de mot de passe et d’adresse email.

Moins cher à la douzaine

Souvent, les opérateurs de malware utilisent des services de téléchargement payants et d’autres approches non ciblées pour collecter autant de cookies de victimes et d’identifiants que possible, et ce à faible coût et avec peu d’effort. Ces déploiements de stealer (voleur) sont très similaires à ceux utilisés par Raccoon Stealer et dans d’autres campagnes de malware que nous avons vu être distribuées via des droppers-as-a-service.

Les packages de malware dans des fichiers ISO ou ZIP sont disponibles via des sites Web malveillants boostés par une approche SEO (Search Engine Optimization) en tant qu’installateurs de packages de logiciels commerciaux piratés ou “crackés”. Les packages de distribution basés sur l’ISO sont également largement utilisés à la place de documents malveillants dans les campagnes de malware utilisant des emails de spam, principalement en raison du récent blocage par Microsoft des macros dans les fichiers Office à partir d’Internet.

Dans un cas de download-as-a-service que nous avons vu sur un réseau universitaire, un malware ‘voleur‘ est arrivé, dissimulé dans un faux programme d’installation de logiciel, téléchargé à partir d’un site Web, très probablement un logiciel publicitaire commercial piraté. Le programme d’installation a été distribué via un fichier ISO de 300 mégaoctets téléchargé par l’utilisateur. Les fichiers ISO volumineux sont souvent utilisés pour tenter de bloquer les analyses de fichiers par un logiciel de détection de malwares.

L’ISO contenait BLENDERINSTALLER3.0.EXE, un utilitaire d’installation de logiciel issu d’un autre package logiciel. Ce dropper installe plusieurs fichiers, à l’aide d’une commande PowerShell et d’un exécutable créé avec AutoIT (un outil légitime fréquemment abusé par les opérateurs de malware) pour extraire les malwares du .ISO et télécharger des fichiers malveillants supplémentaires à partir du réseau de diffusion de contenu (CDN : Content Delivery Network) de Discord. Le package malveillant injecte ensuite une série de commandes via un processus .NET (en utilisant jsc.exe du framework .NET) pour récupérer à la fois les cookies et les données de connexion de Chrome.

Figure 3 : Un faux installateur / voleur d’informations de cookies

Des attaques sur mesure

Le spam malveillant est également utilisé avec d’autres pièces jointes déguisées, ciblant souvent des entreprises dans des secteurs ou des lieux spécifiques. En octobre 2021, un utilisateur d’ordinateur turc a reçu un email avec en pièce jointe, un fichier d’archive XZ. Celui-ci contenait un exécutable déguisé, “ürün örnekleri resmi pdf.exe” (qui se traduit par “échantillons produit image pdf.exe”). L’exécutable était un dropper de malware à extraction automatique développé avec le langage de programmation Delphi (connu sous le nom de “BobSoft Mini Delphi”).

Le dropper, à son tour, a installé plusieurs exécutables. Le premier était un composant légitime de Microsoft Visual Studio (msbuild.exe). MSBuild est normalement utilisé pour compiler et exécuter des projets de codage ; on peut lui transmettre des fichiers projet ou des fichiers XML contenant des scripts en ligne de commande et les lancer. Étant donné que le fichier est un binaire Microsoft de confiance, il peut être compressé dans un dropper pour masquer la nature malveillante du malware en question.

Le deuxième exécutable a été récupéré à partir du réseau de diffusion de contenu Discord et déchiffré : il s’agissait du keylogger Phoenix, un voleur d’informations. Un autre élément a également été diffusé à un moment donné, il s’agissait de QuasarRAT, un outil d’accès à distance écrit en C#.

Dans les semaines qui ont suivi, l’attaquant a utilisé le QuasarRAT installé pour lancer le voleur d’informations Phoenix et exécuter des commandes via MSBuild. Les commandes développées et exécutées par MSBuild ont accédé aux fichiers de cookies sur la machine ciblée.

Figure 4 : Description d’un vol via Malspam / Phoenix

Exploitation ciblée

Le vol de cookies n’est pas seulement une activité automatisée. Dans certains cas, il fait également partie des efforts déployés par des adversaires actifs cherchant des moyens pour augmenter leur mainmise sur un réseau ciblé. Dans de tels cas, les attaquants utilisent un point d’entrée au niveau du réseau pour déployer des outils d’exploitation et utilisent ces derniers pour étendre leur accès. Au fur et à mesure que le volume de données à forte valeur, déplacées du réseau vers des services Cloud, augmente, les attaquants ont ajouté, à leur liste d’actions à mener, un mouvement latéral à ces services via le vol de cookies et la récupération de données de connexion Web.

Nous avons découvert une intrusion active et prolongée de ce type, en juin 2022, au cours de laquelle le vol de cookies a fait partie des activités menées par Cobalt Strike et Meterpreter, lesquelles remontaient à des mois. Les attaquants ont spécifiquement ciblé les cookies dans le navigateur Microsoft Edge. Tout d’abord, ils ont pu utiliser le kit d’exploitation Impacket pour se propager à partir du point d’entrée initial via le transfert de fichiers Windows SMB, en diffusant Cobalt Strike et Meterpreter sur des ordinateurs ciblés au sein du réseau.

Figure 5 : Une séquence de vol de cookies pilotée manuellement

Ensuite, les attaquants ont déposé une copie d’un interpréteur de script Perl légitime sur le système ciblé, ainsi qu’un fichier de script Perl (nommé c) et un fichier batch (execute.exe) tous vus précédemment lors d’intrusions basées sur Impacket. Ils ont ensuite utilisé Meterpreter pour transmettre la chaîne de commande suivante :

c:\\windows\\vss\\perl.exe -type c ^> \\\\127.0.0.1\\C$\\__output 2^>^&1 > C:\\WINDOWS\\TEMP\\execute.bat & C:\\WINDOWS\\system32\\cmd.exe

/Q /c C:\\WINDOWS\\TEMP\\execute.bat & del C:\\WINDOWS\\TEMP\\execute.bat

Le script Perl a accédé aux fichiers de cookies sur la machine cible et a extrait le contenu vers un fichier temporaire nommé _output. Le fichier batch, entre autres, transférait le contenu de _output à l’attaquant et supprimait le script Perl. Les commandes shell restantes ont désactivé la sortie d’écran, supprimé le fichier batch et stoppé le shell de commande.

Protégez vos cookies

Ces trois exemples ne représentent qu’une partie des activités cybercriminelles ciblant le vol de cookies. Les malwares voleurs d’informations incluent de plus en plus le vol de cookies dans leurs fonctionnalités et le succès des marketplaces qui font de la vente de cookies volés, une activité rentable. Mais des attaquants plus ciblés visent également les cookies, et leurs activités peuvent ne pas être détectées par de simples défenses anti-malware en raison de l’utilisation abusive, par ces derniers, d’exécutables légitimes, déjà présents mais aussi apportés comme outils.

Le vol de cookies ne serait pas aussi dangereux si les cookies d’accès, à longue durée de vie, n’étaient pas utilisés par autant d’applications. Slack, par exemple, utilise une combinaison de cookies persistants et spécifiques à la session pour vérifier l’identité et l’authentification des utilisateurs. Alors que les cookies de session sont effacés lorsqu’un navigateur est fermé, certaines de ces applications (telles que Slack) restent ouvertes indéfiniment dans certains environnements. Ces cookies peuvent ne pas expirer assez rapidement pour empêcher qu’un individu tente de les exploiter s’ils devaient être volés. Les jetons d’authentification unique (SSO : Single-Sign-On) associés à une authentification multifacteur peuvent constituer la même menace potentielle si les utilisateurs ne ferment pas les sessions.

La suppression régulière des cookies et d’autres informations d’authentification au niveau des navigateurs réduit la surface d’attaque potentielle offerte par les fichiers de profil des navigateurs, et les entreprises peuvent utiliser des outils administratifs pour certaines plateformes Web afin de raccourcir la durée autorisée pendant laquelle les cookies restent valides.

Cependant, le renforcement des politiques en matière de cookies s’accompagne de compromis. Raccourcir la durée de vie des cookies signifie plus de ré-authentification pour les utilisateurs. Et certaines applications Web qui exploitent des clients basés sur Electron ou des plateformes de développement similaires peuvent avoir leurs propres problèmes de gestion de cookies. Par exemple, ils peuvent avoir leurs propres magasins de cookies qui peuvent être spécifiquement ciblés par des attaquants en dehors du contexte des magasins des navigateurs Web.

Sophos utilise plusieurs règles de comportement pour empêcher l’utilisation abusive des cookies par des scripts et des programmes non approuvés et détecte les malwares voleurs d’informations avec un certain nombre de détections au niveau de la mémoire et du comportement.

Les indicateurs de compromission des attaques mentionnées dans ce rapport sont disponibles sur la page Github des SophosLabs.

Sophos X-Ops remercie Felix Weyne des SophosLabs pour avoir contribué à ce rapport.

Billet inspiré de Cookie stealing: the new perimeter bypass, sur le Blog Sophos.

Exit mobile version