L’Ukraine est actuellement au cœur d’une véritable cyberguerre. Après plusieurs séries de DDoS visant les sites du gouvernement et les banques, les organes gouvernementaux ukrainiens (dans leur ensemble) sont à leur tour dans la ligne de mire d’attaques malveillantes. Et après les DDoS, ces cyberattaques embarquent un malware dévastateur : HermeticWiper. Le point sur une vulnérabilité critique, à l’intérieur d’une situation géopolitique inédite, avec l’équipe Stormshield Customer Security Lab.
EDIT : article mis à jour le 18 mars 2022 pour décrire les nouvelles souches CaddyWiper récemment découvertes (en fin d'article).
Le contexte de la cyberattaque HermeticWiper
Le 23 février, les équipes de recherche de l’entreprise Eset annonçaient avoir découvert un nouveau malware d’effacement de données dans une publication sur Twitter. Surnommé HermeticWiper (un variant de KillDisk.NCV, désoamis nommé Win32/HermeticWiper.a), il serait actuellement utilisé contre les différents organes gouvernementaux ukrainiens, comme le ministère des affaires étrangères, les cabinets des ministres, ou encore le Parlement (le Rada). La question de l’attribution officielle de l’attaque est encore en ce moment en débat, même si la situation géopolitique actuelle et la présence d’un groupe APT lié au pays semblent désigner la Russie.
Ce malware, visiblement diffusé par GPO et visant donc une compromission du système informatique de la victime, détourne un driver légitime de partitionnement de disque pour corrompre les partitions du système, entrainant la perte des données d’une machine (serveur ou poste de travail). L’objectif de l’attaque est clair et unique : la destruction des données. D’où le nom attribué au malware (« wiper » en anglais se traduit par « effacer »).
Les détails techniques du malware HermeticWiper
À ce jour deux variantes de ce malware HermeticWiper sont connues :
- 1bc44eef75779e3ca1eefb8ff5a64807dbc942b1e4a2672d77b9f6928d292591
- 0385eeab00e946a302b24a91dea4187c1210597b8e17cd9e2230450f5ece21da
Une analyse approfondie du malware nous montre que ce wiper est signé par l'entreprise "Hermetica Digital Ltd" à travers l’autorité root Digicert. Le certificat a été révoqué dans l’après-midi du 24 février 2022.
Le malware n’a pas été retouché post compilation pour rendre son analyse difficile. En ce sens, il n’est pas compacté (packé) et les chaînes de caractères apparaissent en clair.
Autre élément intéressant dans cette analyse, une ancienne version aurait été compilée (d’après les métadonnées du programme), le 28 décembre 2021. Un signe que l’action est préméditée de longue date :
Au niveau du fonctionnement, lorsque le malware débute son exécution, il vient puiser dans la section de ses ressources embarquées pour extraire l’un des quatre drivers suivants :
Ces drivers correspondent aux systèmes Windows 7/8/10/11 et XP et sont disponibles à la fois en 32 bits et 64 bits. On peut voir grâce à la signature SZDD qu’ils sont compressés à l’aide de l’algorithme LZSS (ancien format de compression historiquement utilisé par Microsoft depuis Windows 3.x, par des utilitaires tels COMPRESS.EXE). Cela explique d’ailleurs la dépendance du malware à LZ32.DLL.
L’extraction des fichiers est donc simple :
Driver | SHA-256 |
XP 32 bits | 2C7732DA3DCFC82F60F063F2EC9FA09F9D38D5CFBE80C850DED44DE43BDB666D |
XP 64 bits | 23EF301DDBA39BB00F0819D2061C9C14D17DC30F780A945920A51BC3BA0198A4 |
Vista+ 32 bits | 8C614CF476F871274AA06153224E8F7354BF5E23E6853358591BF35A381FB75B |
Vista+ 64 bits | 96B77284744F8761C4F2558388E0AEE2140618B484FF53FA8B222B340D2A9C84 |
Illustration 5 : empreinte SHA-256 des drivers extraits
Ces drivers sont ceux qu’on retrouve dans le logiciel de gestion de partitions « EaseUS Partitionning » a minima en version 9.2.1. Ils sont signés et légitimes, mais le certificat est expiré et le timestamp n’est pas conforme.
Le bon driver à charger est sélectionné afin de correspondre au système d’exploitation de la machine hôte. Par la suite, le malware ouvre un canal de communication vers le driver \\.\EPMNTDRV\ et les écriture disque se font au travers de ce moyen. Ce driver est idéal, à la fois pour contourner les solutions de sécurité user-land et aussi pour écraser des zones du disque correspondant à des volumes montés et utilisés par Windows.
Lors de l’analyse du malware, il a été constaté que le malware n’altère pas le MBR (donc conserve la table des partitions). En revanche, il altère les premiers secteurs des partitions FAT/FAT32/NTFS de chaque disque. La conséquence est que le système ne démarre plus pour cause de corruption des partitions.
Ici, le message affiché provient de la gestion d’erreur du MBR qui est resté intact :
Un examen des premiers secteurs des partitions permet de constater la corruption :
Lors de l’analyse, nous avons constaté que les deux premiers secteurs étaient écrasés pour les partitions FAT32 alors que bien plus de secteurs le sont pour les partitions NTFS. Spécificité NTFS : le malware cible des fichiers particuliers pour que la récupération de données devienne alors très difficile.
Les systèmes ciblés par la cyberattaque HermeticWiper
Ce malware s’attaque aux systèmes Windows XP, Vista, Seven, 10 et 11, à la fois 32 bits et 64 bits, quel que soit le langage du système.
Les autres informations de la cyberattaque HermeticWiper
Signatures numériques
A la fois pour le malware et pour les drivers, l’algorithme d’empreinte numérique utilisé est SHA-1. Pour rappel, cet algorithme d’une puissance de 160 bits est déprécié depuis plusieurs années déjà. Ceci étant, en raison de compatibilité avec les anciens logiciels, il reste toléré dans certains cas.
Droits administrateurs
Ce malware nécessite absolument des droits administrateurs afin de pouvoir déposer le driver et le charger. Cela n’est pas un problème puisque dans le vecteur d’attaque constaté, le déploiement du malware était fait au travers de GPO (donc avec des droits suffisamment élevés).
Délai d’exécution
Le malware effectue ses actions malveillantes très peu de temps après avoir démarré. Ainsi, dès que son activité CPU tombe à 0%, le système est déjà corrompu. La vie normale de Windows entrainera fatalement un problème dans les secondes ou minutes à venir.
À noter que le malware ne se termine pas après avoir corrompu un système, son processus reste actif mais ne fait rien. Peut-être est-il en attente de disques amovibles branchés pour les corrompre à leur tour.
Redémarrage
Le malware ne demande pas un redémarrage immédiat de la machine après corruption des partitions. En revanche, le système d’exploitation peut paniquer suite à la corruption en direct du système de fichiers le faisant vivre. Les raisons immédiates de la panique sont multiples mais ce qui est sûr est que lorsque le kernel de Windows panique, la suite est un BSOD avec potentiellement redémarrage forcé selon le paramétrage.
Désactivation des crash dumps
Le malware reconfigure le système pour ne pas générer de crashdump suite à BSOD. Il fait cela en écrivant la valeur 0 dans cet emplacement registre :
Divers
- Le service VSS est recherché et stoppé par le malware HermeticWiper.
- Certains paramètres d’affichage des fichiers dans l’explorateur de fichiers sont altérés : ShowCompColor (utilisé pour repérer les fichiers compressés via la couleur bleue) et ShowInfoTip (utilisé pour l’affichage d’info bulles)
Les moyens de protection fournis par Stormshield face au malware HermeticWiper
Protection avec Stormshield Network Security
La solution Breach Fighter, sandboxing SaaS complémentaire de la solution Stormshield Network Security (SNS), détecte tous les malwares de type HermeticWiper.
Lors du passage d’un fichier sur le flux concerné, SNS va réaliser un hash de celui-ci et contrôler son innocuité auprès de Breach Fighter (en cas de fichier inconnu, il sera envoyé sur notre environnement de détonation Cloud). Il sera par conséquent immédiatement bloqué.
Pour que cette détection soit efficace, il faut :
- avoir la license Premium Security Pack et l’option Breach Fighter
- activer le sandboxing sur l’ensemble des flux transportant des fichiers (SMTP, HTTP, FTP)
Indice de confiance de la protection proposée par Stormshield
Indice de confiance de l’absence de faux positif
Protection avec Stormshield Endpoint Security
SES v7.2
Le malware effaceur demande le privilège de chargement de pilote « SeLoadDriverPrivilege » pour démarrer le pilote EaseUS utilisé de manière malveillante. Ce comportement est détecté et bloqué par la solution SES (v7.2) grâce à la protection contre l’élévation de privilèges configurée sur « Haut » ou « Supérieur ». Sans ce pilote, le malware n’est plus en mesure de réaliser d’effacement de données sur le poste.
Indice de confiance de la protection proposée par Stormshield
Indice de confiance de l’absence de faux positif
SES Evolution
Un jeu de règle spécifique a été mis gratuitement à disposition des utilisateurs afin de contrer ce malware HermeticWiper.
Concrètement, les processus dont la signature référence le certificat volé à « Hermetica Digital LTD » sont bloqués. Et quand bien même un variant utiliserait un autre certificat (ou pas de certificat du tout), les créations des fichiers de type « drivers » sont contrôlées et autorisées uniquement aux programmes Microsoft.
Veuillez bien noter que cette configuration restreint strictement le dépôt de drivers pour des programmes non Microsoft, pouvant donc entrainer de nombreux faux positif si l’administrateur ne prend pas garde. Cette règle est désactivée dans le jeu de règles fourni. Voici le log de la règle bloquante :
Indice de confiance de la protection proposée par Stormshield
Indice de confiance de l’absence de faux positif
Addendum : les détails techniques du malware CaddyWiper
Le 14 mars, les équipes de recherche de l’entreprise Eset annonçaient dans un tweet avoir observé un nouveau malware d’effacement de données ciblant les infrastructures ukrainiennes. Cette nouvelle souche, baptisé CaddyWiper, est identifié pour l’instant sur quatre fichiers et reprend le même objectif que son prédécesseur : rendre totalement inopérable les postes démarrant la souche.
Même si le but in fine est le même, la technique pour y arriver diffère entièrement : le malware CaddyWiper n’utilise plus le driver signé de l’outil EaseUS ni le certificat Hermetika ltd. Pour purger le poste, le malware CaddyWiper commence par écraser les données de tous les répertoires utilisateurs sur tous les disques. Dans le cas où ces fichiers sont la propriété d’un autre utilisateur, il tente de se les approprier via le privilège SeTakeOwnershipPrivilege. Ensuite, il accède aux disques physiques via “\\.\PHYSICALDRIVEX”, efface les informations types MBR/GPT et altère les tables des partitions de chaque disque pour les rendre inopérants. Au prochain redémarrage du poste ou suite à un BSOD, le poste ne démarrera plus.
Fait remarquable sur ces quatre fichiers, un seul est signé par un certificat chinois, invalide car expiré :
Au niveau des produits Stormshield, la réponse des protections est immédiate.
Protection avec Stormshield Network Security
Breach Fighter, solution de sandboxing SaaS complémentaire des firewalls SNS, détecte tous les malwares de type CaddyWiper.
Protection avec Stormshield Endpoint Security
Que ce soit la version 7.2 ou la version Evolution, les deux produits bloquent dès la première action des malwares. En effet le malware déclenche directement la protection « HPP » ou « Execution Flow Hijack » des produits.
IOC / Infos utiles des malwares HermeticWiper et CaddyWiper
Sha256 :
- a294620543334a721a2ae8eaaf9680a0786f4b9a216d75b55cfd28f39e9430ea
- b66b179eac03afafdc69f62c207819eceecfbf994c9efa464fda0d2ba44fe2d7
- ea6a416b320f32261da8dafcf2faf088924f99a3a84f7b43b964637ea87aef72
- 1e87e9b5ee7597bdce796490f3ee09211df48ba1d11f6e2f5b255f05cc0ba176
Portail Breach Fighter :
- breachfighter/ea6a416b320f32261da8dafcf2faf088924f99a3a84f7b43b964637ea87aef72
- breachfighter/b66b179eac03afafdc69f62c207819eceecfbf994c9efa464fda0d2ba44fe2d7
- breachfighter/1e87e9b5ee7597bdce796490f3ee09211df48ba1d11f6e2f5b255f05cc0ba176
- breachfighter/a294620543334a721a2ae8eaaf9680a0786f4b9a216d75b55cfd28f39e9430ea