Coup de projecteur sur les rançongiciels : le fonctionnement

how-ransomware-works-preview-image

how-ransomware-works-blog-banner

Comprendre comment les rançongiciels fonctionnent n’est pas chose facile. En dehors des cercles dédiés à la cybersécurité, rares sont ceux qui arrivent à cerner les rouages complexes requis pour assurer une protection efficace contre les rançongiciels en les empêchant, notamment, d’endommager en premier lieu le système informatique des victimes. La menace en devient donc plus effrayante et sert davantage aux criminels qui comptent en tirer le meilleur parti, notamment financièrement.

Avec la série « Coup de projecteur sur les rançongiciels » d’Emsisoft, nous visons à décomposer les différentes étapes d’une attaque de rançongiciels, des vecteurs d’infection à l’exécution de logiciels malveillants en passant par le chiffrement et les mécanismes aléatoires de paiement.

Si vous avez manqué le premier article, « Coup de projecteur sur les rançongiciels : les modes d’infection les plus courants« , prenez le temps de le lire afin de connaître les différentes modes de propagation des rançongiciels.

Dans ce deuxième article, nous allons nous pencher sur ce qui se passe une fois que mal vous en a pris de cliquer sur un lien ou un document, et ce que les rançongiciels opèrent pour prendre le contrôle de votre système.

Êtes-vous prêts à découvrir comment fonctionnent les rançongiciels ? Penchons-nous alors sur le sujet.

Fonctionnement des rançongiciels : obtention des droits d’accès

Sur la Toile fourmillent des milliers de variantes de rançongiciels différentes, et leur nombre ne fait que croître de jour en jour. C’est pourquoi expliquer en détail la façon dont les rançongiciels opèrent pour prendre le contrôle d’un système est difficile, car la méthodologie diffère selon la variante. En général, une fois que le rançongiciel est exécuté, il analyse immédiatement les lecteurs locaux et connectés en quête de fichiers à chiffrer.

Astuce d’expert : Étant donné que de nombreuses variantes de rançongiciels essayeront de chiffrer les lecteurs connectés et partagés, il est essentiel de garder les disques durs externes déconnectés de votre ordinateur lorsque vous n’effectuez pas de sauvegarde. Tout périphérique connecté à votre ordinateur lors d’une attaque verra également son contenu chiffré.

Certaines variantes telles que Locky et DMA Locker peuvent même chiffrer les partages réseau non mappés, facilitant par là même la prolifération de l’infection.

Tout cela se produit en quelques secondes. Littéralement.

Pourtant, une foule de choses se passe au cours de ces quelques secondes. Observons quelques-unes des façons dont les rançongiciels cherchent à prendre le contrôle de votre ordinateur.

Offuscation et procédé d’injection

Lorsqu’il s’infiltre dans votre système, le rançongiciel est généralement conditionné par une sorte d’offuscation – aussi appelée obscurcissement ou assombrissement – ou de conditionneur. À l’instar de la langue parlée, l’offuscation utilise des expressions ambiguës et confuses pour composer des énoncés qui cachent la signification voulue.

Dans le contexte d’un logiciel, à quoi cela ressemble-t-il ?

Tout d’abord, les développeurs de rançongiciels obscurciront le code pour en cacher le but premier. Prenez un logiciel anti-malware par exemple : si le rançongiciel fonctionnait exactement comme il a été écrit, votre logiciel de sécurité devrait le repérer et donc le bloquer. Mais que faire si votre système pense que vous exécutez un programme Windows typique ?

C’est l’objectif d’obscurcissement du rançongiciel : rester inaperçu.

Deuxièmement, le code des logiciels malveillants est souvent rétro-conçu par les chercheurs en sécurité afin de pouvoir en extraire le code source, comprendre comment il fonctionne afin d’ensuite créer un déchiffreur permettant de désactiver le rançongiciel. Si le code source a été obscurci, la tâche devient beaucoup plus difficile. Si un chercheur en sécurité découvre que le code n’a ni queue ni tête, il lui sera presque impossible de déterminer à quoi ressemble le code source.

comparaison-code-obscurci

Code source obscurci et non obscurci

Le recours aux logiciels automatiques d’offuscation facilite d’autant plus le mode opératoire car ces derniers modifient automatiquement les données d’un fichier de différentes façons, de sorte qu’il ne ressemble que très peu à l’original. Cependant, le fichier s’exécute toujours parfaitement.

Synthèse : L’offuscation est un procédé par lequel le rançongiciel modifie les données d’un fichier de diverses manières, de sorte qu’il ne ressemble pas au code source d’origine. Le véritable objectif du fichier est ainsi caché, sans que cela n’empêche le fichier de s’exécuter.

Une fois que le fichier obscurci commence à s’exécuter dans votre système, le rançongiciel déploie ses tentacules dans la mémoire.

Puisque les offuscateurs peuvent s’appliquer à plusieurs reprises dans de nombreuses couches, le déploiement peut, lui aussi, s’effectuer à plusieurs reprises, selon les configurations utilisées. Une des façons dont le déploiement s’opère est par injection de code dans un processus nouvellement créé, incitant ainsi le système à lancer le rançongiciel.

Détournement du contrôle de compte utilisateur

Le contrôle de compte utilisateur (UAC) est une mesure de sécurité que Microsoft a initialement introduite avec Windows Vista. Reposant sur le principe de séparation des privilèges, Windows attribue par défaut à toutes les applications de votre ordinateur des privilèges d’utilisateur standard. Si une application demande des privilèges plus avancés, vous verrez la fenêtre contextuelle ci-dessous s’afficher sur votre ordinateur, demandant à un utilisateur possédant des droits d’administrateur d’autoriser la demande afin de continuer.

Pop-up de notification UAC

Pop-up de notification UAC

C’est le plus effrayant dans la façon dont les rançongiciels fonctionnent dans ce scénario particulier. En contournant le contrôle de compte utilisateur, les rançongiciels peuvent empêcher l’affichage de ce pop-up car les privilèges acquis sont plus avancés, ce qui leur permet de modifier votre système et d’interagir avec d’autres programmes à votre insu.

Mais comment procèdent-ils exactement ?

Penchons-nous sur la manière de procéder d’Erebus :

Comme l’explique Matt Nelsen en détail, Erebus se copie dans un fichier nommé au hasard dans le même dossier que l’UAC. Ensuite, il modifie la base de registre Windows afin de détourner l’association pour l’extension de fichier .msc. Cela signifie essentiellement qu’il lancera de façon aléatoire le fichier exécuté (.exe) intitulé de manière aléatoire Erebus au lieu d’afficher les notifications UAC sous forme de pop-up.

Erebus incite votre ordinateur à ouvrir le fichier Erebus et à lui octroyer le plus haut niveau d’autorisations sur votre ordinateur. En outre, tout se passe en arrière-plan à votre insu, sans que jamais l’on ne vous demande d’autoriser le lancement de l’application.

Lorsque l’Observateur d’événements s’exécute dans le même mode avancé (niveau administrateur), le fichier exécutable (.exe) Erebus se lancera avec les mêmes privilèges. Cela lui permet de contourner complètement le contrôle de compte utilisateur.

Synthèse : Le contournement de contrôle de compte utilisateur (UAC) est un procédé par lequel le logiciel malveillant peut obtenir des privilèges de niveau administrateur sans l’approbation de l’utilisateur ; ce qui lui permet de modifier des éléments de votre système, notamment en chiffrant tous vos fichiers.

comment-les-rançongiciels-fonctionnent-contournement-UAC

Obtention d’UAC

Mais pourquoi un contournement d’UAC n’est-il pas détecté ?

Alors que les rançongiciels qui recourent au procédé d’injection font leur possible pour ne pas être détectés en utilisant la technologie d’offuscation, les dernières techniques de contournement d’UAC diffèrent dans leur approche. Le chercheur en sécurité Matt Nelson explique sur son blog comment les rançongiciels procèdent, et nous vous en proposons un bref résumé ci-dessous :

  1. La plupart (pour ne pas dire la totalité) des techniques de contournement d’UAC précédentes nécessitaient que soit déposé un fichier (généralement une bibliothèque de liens dynamiques ou DLL) dans le système de fichiers. Le risque était bien plus élevé qu’un attaquant soit démasqué en plein acte ou plus tard, lors du passage au peigne fin d’un système infecté – en particulier si son code source n’est pas obscurci comme expliqué ci-dessus. Puisque la technique de contournement d’UAC ne supprime aucun fichier traditionnel, ce risque supplémentaire pour l’attaquant est atténué.
  2. Cette technique de contournement d’UAC ne nécessite aucun procédé d’injection, comme la technique typique d’offuscation et d’injection de processus. Cela signifie que l’attaque ne sera pas signalée par une solution de sécurité qui surveille ce type de comportement. (Remarque : Les solutions d’Emsisoft surveillent ce type de comportement. Apprenez-en plus sur notre technologie d’analyse de comportement ici).

Fondamentalement, cette méthode réduit considérablement les risques pour l’attaquant car il ne place aucun fichier traditionnel sur le système de fichiers qui pourrait être trouvé et identifié ultérieurement, en cas d’analyse par des experts. C’est une méthode nouvelle qui prend tous les jours un peu plus d’ampleur. Deux variantes, Eresbus (voir ci-dessus) et le cheval de Troie bancaire Dridex ont adopté cette méthode, et touchent de nombreux internautes depuis le début de l’année 2017.

Persistance avant tout : le rançongiciel prend ses aises

Parfois, un rançongiciel tente de s’implanter dans votre système pour une durée prolongée en créant ce qu’on appelle une persistance. Ce procédé garantit que le rançongiciel reste sur le système, continue de chiffrer les nouveaux fichiers au fur et à mesure qu’ils sont copiés, et même qu’il infecte de nouvelles victimes en se propageant sur d’autres lecteurs.

Un rançongiciel peut établir sa tactique de persistance de plusieurs façons. Découvrez ci-dessous les méthodes les plus courantes :

Dissimulation de clés d’exécution

Les clés d’exécution se trouvent dans le registre donc, chaque fois qu’un utilisateur se connecte, les programmes répertoriés sont exécutés. Ceux-ci ne fonctionnent pas en mode sûr, à moins qu’ils ne soient précédés par un astérisque, ce qui signifie qu’ils fonctionnent alors aussi bien en mode normal qu’en mode sûr. Si vous êtes victime d’un rançongiciel persistant qui semble refaire surface encore et encore, peu importe le nombre de fois que vous pensez en être venu à bout, le problème pourrait bien venir de là.

 

comment-les-rançongiciels-fonctionnent-lancement-d'une-clé-d'exécution

Exemple de clé d’exécution

Le rançongiciel RAA Javascript, qui a fait son apparition en 2016, est un bel exemple du genre.

Planification de tâches

Les tâches planifiées sont une autre méthode utilisée par les rançongiciels, octroyant au programme une plus grande flexibilité de fonctionnement. Par exemple, vous pouvez configurer un programme de manière à ce qu’il fonctionne toutes les 30 minutes, ce qui signifie que vous voyez le même logiciel malveillant au démarrage puis après, toutes les 30 minutes. Certaines variantes du rançongiciel Locker, telles que CTB Locker ou CryLocker, sont bien connues pour employer cette technique.

comment-les-rançongiciels-fonctionnent-planification-de-tâche

Écran de planification de tâches

Incorporation d’un raccourci

Si un raccourci vers le fichier malveillant ou une copie du fichier malveillant se trouve dans le dossier de démarrage, il sera exécuté au démarrage de l’ordinateur.

comment-les-rançongiciels-fonctionnent-dossier-démarrage

Écran de démarrage

Des experts ont constaté récemment que certains raccourcis sont utilisés de manière plus sophistiquée, dans des rançongiciels comme Spora. En empruntant les caractéristiques d’un ver informatique, le rançongiciel configure l’attribut « caché » sur les fichiers et les dossiers dans la racine de tous les lecteurs. Il crée ensuite des raccourcis (.lnk) portant les mêmes noms que ceux cachés, et supprime le symbole de flèche associé dans le registre qui indique habituellement une icône de raccourci. Le raccourci lui-même contient les arguments pour ouvrir le fichier ou le dossier d’origine ainsi que le fichier du rançongiciel. Le système devient alors inutilisable jusqu’à ce que l’infection soit éradiquée.

Serveurs de commande et contrôle : communication établie avec le créateur

Nous avons vu comment les rançongiciels fonctionnent dans le système informatique. Une fois qu’ils ont la mainmise dessus, la plupart d’entre eux détournent votre connexion Internet et communiquent avec un serveur de commande et de contrôle (également connu sous le nom C2) depuis votre ordinateur, à diverses fins.

Habituellement, ils utilisent soit des domaines codés soit des adresses IP, mais ils peuvent également être hébergés sur des sites piratés. Prenez le rançongiciel Nemucod par exemple. Cette famille de logiciels malveillants pirate des sites Web, ajoute un dossier sur le serveur FTP (généralement intitulé compteur) et utilise ce site comme hôte pour héberger non seulement les logiciels malveillants téléchargés pour infecter les victimes (généralement en déposant son propre rançongiciel mal conçu, et le cheval de Troie bancaire Kovter), mais aussi le « portail de paiement » auquel la victime doit ensuite accéder pour obtenir le déchiffreur si elle choisit de payer.

Alternativement, un algorithme de génération de domaine (DGA) est utilisé. Un DGA est un code dans le rançongiciel qui génère et contacte de nombreux domaines. L’auteur du logiciel malveillant sait dans quel ordre ces domaines sont susceptibles d’être générés et choisit l’un d’entre eux pour le consigner. L’avantage de recourir à un DGA par rapport à des domaines codés en dur est, qu’ainsi, il est difficile de supprimer tous les domaines à la fois, de sorte que le rançongiciel et les pages de paiement de rançon arrivent souvent à trouver un endroit où être hébergés.

Une fois la connexion établie, le rançongiciel est en mesure d’envoyer des informations concernant votre système au serveur, y compris :

Réciproquement, le serveur C2 peut envoyer des informations au rançongiciel telles que la clé de chiffrement générée par le serveur et utilisée pour chiffrer vos fichiers, une adresse Bitcoin générée à laquelle vous devrez payer la rançon, un identifiant d’utilisateur pour accéder au portail et l’URL du site de paiement (Remarque : Nous parlerons plus en détail de cet aspect dans un prochain article de cette série).

Dans certains cas, le C2 peut également demander au rançongiciel de télécharger d’autres logiciels malveillants une fois le chiffrement de vos données ou la copie de vos fichiers terminés afin de vous faire chanter par après.

Suppression des copies masquées : sauve(garde) qui peut

La phase finale de mainmise d’un rançongiciel sur votre système avant le début du chiffrement est généralement la suppression de toutes les copies masquées (ou copies de sauvegarde automatique) de vos fichiers. Les victimes ne sont donc plus en mesure de revenir aux versions non chiffrées de leurs données afin d’éviter de payer la rançon.

Le Volume Shadow Copy Service (VSS), initialement inclus dans le Windows XP Security Pack 2, est un ensemble d’interfaces qui peuvent être configurées de manière à créer automatiquement des « sauvegardes » de fichiers, même lorsqu’ils sont utilisés.

Ces sauvegardes sont généralement générées lorsqu’un point de sauvegarde ou de restauration du système Windows est créé. Elles vous permettent de restaurer les fichiers aux versions précédentes.

Comment-les-rançongiciels-fonctionnent-suppression-des-copies-masquées

Suppression des copies masquées

Bien entendu, le rançongiciel ne souhaite aucunement que cela se produise.

C’est d’ailleurs pour cela généralement qu’il supprime les instantanés à l’aide de la commande vssadmin.exe Delete Shadows /All /Quiet, et il le fera sans qu’aucune invite n’avertisse l’utilisateur. Pour ce faire, il a besoin d’autorisations d’administrateur, et c’est une des raisons supplémentaires pour laquelle le rançongiciel va vouloir utiliser un contournement d’UAC.

Conclusion

Comme vous pouvez le voir, les rançongiciels peuvent prendre le contrôle de votre système de différentes façons et apporter toutes sortes de modifications pour le rendre inutilisable. De l’obtention des droits d’administrateur ou de leur contournement intégral à l’établissement d’une persistance en modifiant les entrées de registre et la configuration des raccourcis, en passant par la communication avec un serveur de commande et de contrôle, le fonctionnement des rançongiciels se complique au fil des jours.

Maintenant que vous comprenez comment les rançongiciels envahissent votre système, préparez-vous à découvrir la prochaine étape de leur attaque : le chiffrement de vos fichiers. Ne manquez pas la suite de notre série, disponible dans quelques semaines !

Avez-vous été victime d’un rançongiciel ? Êtes-vous un expert en sécurité qui souhaite partager des tactiques supplémentaires que les rançongiciels utilisent pour infiltrer les ordinateurs des victimes ? Laissez-nous votre avis dans les commentaires !

Fran Rajewski

What to read next