Ransomware : contraction du mot rançon et de malware. Ce type de menace plane sur le web, inquiétant tant les professionnels que les particuliers. Sa principale caractéristique est de rendre dépendante une personne de son agresseur. Ainsi, une fois que ce malware (appelé aussi rançongiciel) infecte un de vos ordinateurs, il se propage sur les autres systèmes de votre réseau, il verrouille vos données et vous demande de payer une rançon pour pouvoir les récupérer.
par Antoine Quélard et Adrien Luyé
Laboratoire (C + V) O – Laboratoire de Cryptologie et Virologie Opérationnelles – Esiea
Il vous reste 90% à lire
Article de 1979 mots (12 660 signes)
Dans le cadre de nos études d’ingénieur à l’ESIEA-Laval, nous avons pu travailler au sein du laboratoire de Cryptologie et de Virologie Opérationnelles (C+V)° sur un cas concret d’infection par ce type de logiciel.
Ce premier article présente techniquement les méthodes exploitées par les pirates pour gérer leur ransomware. Un deuxième article présentera concrètement l’analyse d’un PC infecté sur lequel des fichiers ont été chiffrés. Il détaillera les procédures que nous avons exploitées pour récupérer ces fichiers. Nous expliquerons surtout que ces procédures ne pourront bientôt plus être exploitées et que les utilisateurs, qu’ils soient professionnels ou non, doivent envisager sérieusement la mise en place d’un Plan de Continuité et de Reprise d’Activité (PCRA) pour prévenir toute catastrophe. Un troisième article présentera un exemple de PCRA minimaliste et peu onéreux pour TPE/PME.
1-Fonctionnement
Infection
Ce type de malwares se propage selon différents vecteurs. Les plus courants sont les campagnes de spam massives et les failles applicatives des navigateurs web.
Les campagnes de spam consistent à envoyer un très grand nombre de mails, contenant une pièce jointe infectée. La plupart du temps, ce type de mail finit dans la catégorie spam des boîtes mail. Cependant, il arrive que certains d’entre eux, mieux construits que les autres arrivent à passer à travers les mailles du système antispam (mails de banque, de prestataires Internet, de boutiques en ligne, etc.). La pièce jointe est souvent constituée d’un fichier bureautique intégrant du code exécutable : code JavaScript pour les fichiers PDF, et code de macro (VBA) pour les documents de la suite « © Ms-Office ». Certains mails peuvent également contenir des URL de redirection vers les sites de téléchargement des malwares. Les infections via les navigateurs web utilisent principalement des failles présentes dans les anciennes versions de l’extension « flash player ». Certains codes intègrent directement le malware, d’autres permettent de le télécharger sur votre ordinateur. Le principal vecteur d’infection est donc humain (de par sa curiosité).
Installation
Une fois que le ransomware s’est installé sur votre système, il commence par sécuriser son environnement. Il va ainsi modifier les registres Windows pour se lancer automatiquement au démarrage du système. Certains vont également verrouiller les modes de démarrages dits : « sans échec », d’autres tentent de bloquer les actions des outils de protection.
Avant de lancer le chiffrement de vos données, ils s’assurent que vous ne pourrez pas les récupérer simplement. Sous Windows, ils désactivent le service « Volume Shadow-Copy Service » (VSS) qui permet la récupération des fichiers effacés.
Ciblage
L’étape suivante consiste à lister les fichiers présents sur les supports disponibles (disques durs, répertoires partagés, supports amovibles actifs, etc.) afin de faire l’inventaire de ceux qui l’intéressent. Tous les ransomwares ne chiffrent pas les mêmes fichiers même s’ils ciblent en majorité les fichiers de type bureautique (.doc, .docx, .xls, .xlsx, .pdf, etc.). D’autres ransomwares vont également cibler les fichiers de sauvegardes, les jeux vidéos ou les machines virtuelles (VM). Une fois la liste des fichiers ciblés acquise, le malware va créer une copie chiffrée de chacun d’entre aux, avant de supprimer la version originale. Certains écrasent directement le fichier source sans créer préalablement de duplicata.
Chiffrement
Les algorithmes de chiffrements utilisés diffèrent en fonction de chaque ransomware. Ils vont du plus simple au plus élaboré. La tendance actuelle est de chiffrer les données avec un algorithme symétrique réputé par nature plus rapide (ex. : AES). Avec ces algorithmes la clé « symétrique » sert à la fois à chiffrer et à déchiffrer. Les ransomwares les plus simples embarquent une clé symétrique connue du pirate (on trouve donc une clé par version du ransomware). Des fuites (leaks) et des analyses de code ont permis de récupérer ces clés et de les exploiter dans des correctifs. Les ransomwares ont cependant été eux aussi corrigés et trois comportements sont observés actuellement :
chiffrement des fichiers avec un algorithme asymétrique (ex. : RSA). Une clé publique est présente dans le ransomware pour chiffrer les fichiers. La clé privée qui est la seule pouvant les déchiffrer est détenue par le pirate.
Le ransomware se connecte sur un serveur de commande avant le chiffrement afin de récupérer une clé symétrique.
Une clé symétrique de chiffrement est générée dynamiquement lors de l’infection (on trouve donc une clé par système infecté). Pour récupérer cette clé, le pirate a prévu de la transférer après l’avoir chiffré avec un algorithme asymétrique. Ainsi, une clé publique est présente dans le ransomware. Cela permet de chiffrer la clé symétrique dynamique avant de l’envoyer au pirate qui détient la clé privée associée lui permettant de la déchiffrer. L’attaquant est alors informé qu’une nouvelle victime (client potentiel) a été contaminée. Ci-dessous, un schéma expliquant cette dernière méthode.
Instructions aux victimes
Le logiciel termine son travail en affichant à la victime les instructions de dépôt de rançon (sous forme de fichier texte, fichier HTML ou fond d’écran). Ces fichiers contiennent des explications sur ce qui est arrivé, avec parfois des liens vers des pages WEB (Wikipédia ou autres) pour approfondir les explications. Ces fichiers expliquent également comment récupérer les données chiffrées. Dans la plupart des cas, il est nécessaire d’acheter de la monnaie virtuelle (« Bitcoin ») qui doit être envoyée sur un compte en utilisant le réseau TOR (réseaux d’anonymisation d’adresse IP). L’attaquant indique dans son message que la clé nécessaire au déchiffrement ne sera conservée que pendant un temps limité, afin d’accroître la pression sur la cible. Il est régulièrement indiqué que plus la victime attend pour payer, plus le prix de la clé augmente.
Patchs
Les pirates procèdent de la même manière que les éditeurs de logiciels. Une fois qu’une contre-mesure aux ransomwares est détectée puis partagée par la communauté, ils se tiennent informés et rééditent leurs logiciels afin d’annuler l’effet de la contre-mesure. Nous observons ainsi qu’un même ransomware a des comportements bien différents en fonction de sa version. Les méthodes de récupérations doivent donc évoluer rapidement pour s’adapter à ces mutations. Dans les dernières semaines, certains pirates ont diffusé les clés de leurs ransomwares. On peut donc supposer l’arrivée imminente des nouvelles versions de ces malwares.
2-Récupération après incident
Nettoyage
La première action à effectuer dans ce genre de situation est de débrancher le réseau avant de nettoyer votre ordinateur. Tant que la menace n’a pas été supprimée, le ransomware est toujours présent. Il faut ensuite analyser votre ordinateur à l’aide d’anti-malwares. Il est conseillé d’analyser deux fois de suite avec des logiciels différents, afin de permettre une meilleure détection des fichiers malicieux, car les anti-malwares n’utilisent pas forcément les mêmes banques de données. À titre d’exemple, nous avons pu observer un ordinateur victime dont les fichiers étaient chiffrés avec des clés dynamiques différentes. Cela était la conséquence du redémarrage de l’ordinateur avec un malware toujours actif.
Type de ransomware
Déterminer le type de ransomware est une étape importante. Cela permet de comprendre précisément les méthodes et les actions qui ont été effectuées par celui-ci. Les ransomwares ont des caractéristiques propres qui les différencient les un des autres. Par exemple, l’extension qui est ajoutée aux fichiers chiffrés permet souvent d’identifier une famille par rapport à une autre. L’analyse du message laissé par l’attaquant permet aussi de les discriminer. Ces messages ne sont pas tous construits de la même manière et sont souvent liés à un seul ransomware. Il est arrivé que certains pirates reprennent le message d’un autre ransomware ou donnent des informations erronées (type de chiffrement, longueur de la clé). Une fois toutes ces informations en votre possession, vous devez vous rendre sur les sites spécialisés, où un grand nombre de ransomwares sont listés, et où leurs caractéristiques sont explicitées. Cette étape a pour but de déterminer quel type de chiffrement a été utilisé, ainsi que la méthode de récupération.
Récupération des clés
Il s’agit de l’étape la plus compliquée de cette procédure. Tout d’abord, si l’algorithme utilisé pour le chiffrement est fort (ex. : RSA-2048 ou AES 256), vous pouvez dès à présent abandonner l’idée de déchiffrer les informations. Certains ransomwares indiquent utiliser un type de chiffrement alors que ce n’est pas le cas. Seule une analyse fine d’un fichier chiffré permet de déterminer l’algorithme.
Théorie : Dans le cas d’un chiffrement asymétrique, il faut dans un premier temps retrouver la clé publique (elle est parfois stockée dans les fichiers chiffrés). Il faut ensuite factoriser cette clé afin d’obtenir les facteurs premiers qui la composent. On peut alors tenter de retrouver la clé privée associée à cette clé publique en exploitant des scripts disponibles sur les sites spécialisés. Cette étape est la plus longue. Si vous êtes chanceux (algorithmes simples et petite longueur de clé), cela peut ne prendre que quelques heures. Dans d’autres cas, la factorisation de la clé peut prendre jusqu’à une semaine voire plus. Dans le cas d’un chiffrement symétrique (AES), rien ne sera possible tant que vous n’aurez pas les informations qui ont servi à chiffrer les fichiers. Certains ransomwares dissimulent la clé dans les fichiers chiffrés (cf. chapitre retour d’expérience). Dans ce cas, il est nécessaire de suivre les procédures données par les spécialistes ayant analysé précisément le comportement du malware.
Déchiffrement des données
Vous avez maintenant en votre possession le couple de clés asymétriques, soit la clé publique servant à chiffrer les données, et la clé privée servant à les déchiffrer ou la clé unique dans le cas de chiffrement symétrique (exemple AES). Vous devez alors utiliser un script permettant le déchiffrement de vos données. Ces scripts sont écrits en fonction de chaque ransomware. Ils peuvent être récupérés sur les sites spécialisés, tels que ceux des éditeurs d’antivirus ou sur des serveurs de développement collaboratif comme « Source Forge ».
3-Conseils
Avant catastrophe
Dans les mails, toujours vérifier l’expéditeur et éviter de cliquer sur les URL insérées dans le corps du texte. Les mails officiels (banques, prestataires, autorités nationales) comportent de moins en moins de lien WEB. En cas de doute, contactez les expéditeurs pour confirmation. Il faut être méfiant avec les pièces jointes (à la limite de la paranoïa).
Ne pas naviguer sur des sites dont on n’a pas l’entière confiance. Ceux-ci sont généralement envahis par des popups et du contenu publicitaire. Il ne faut pas télécharger de logiciels ou de fichiers dont on ne connaît pas la source.
- Sensibiliser vos collaborateurs à ce type de menace ainsi qu’à ses vecteurs de diffusion.
- Effectuer des sauvegardes régulières des postes informatiques ou des informations importantes afin de limiter la perte de données en cas d’impossibilité de récupération.
- Élaborer et tenir à jour un Plan de Continuité/Reprise d’Activité (PCA/PRA). Ce plan doit être fonctionnel, testé et validé.
Après catastrophe
- Porter plainte
- Nous conseillons d’éteindre la machine le plus rapidement possible et couper le réseau, même si cela nécessite un arrêt brutal de l’ordinateur.
- Activer son PCA/PRA le cas échéant
- Si le redémarrage en mode « sans échec » n’est plus disponible, il est alors nécessaire de faire un « live-boot » (démarrage de l’ordinateur à partir d’un support externe). Récupérer alors le maximum d’informations sur le ransomware.
- Ne jamais payer de rançon. Trois raisons à cela :
– comme vous êtes prêt à payer, le pirate peut revenir vers vous pour demander plus ;
– rien ne garantit à terme la remise de la méthode de déchiffrement par le pirate ;
– cela les encourage à poursuivre ce genre d’activités.