Ces dernier mois, une catégorie bien particulière de cyberattaques a été fortement médiatisée : le chiffrement de données sensibles via les ransomwares, ou rançongiciels, si vous préférez. Si ce type d’attaque n’est pas nouveau et existe depuis les années 90, l’utilisation croissante des monnaies numériques comme moyen de paiement des rançons est régulièrement évoquée par les journalistes, notamment lors des attaques de mai (WannaCry) et celles de cette semaine (NotPetya). Une observation qui est évidemment utilisée par les détracteurs des cryptomonnaies pour réclamer leur éventuelle interdiction.
Qu’est-ce qu’un ransomware ?
Un ransomware est un programme qui permet de mener une cyberattaque consistant à prendre le contrôle d’un appareil (ou d’un système informatique dans son ensemble) et à exiger le paiement d’une rançon afin que l’utilisateur puisse y avoir à nouveau accès. Le chantage s’effectue généralement en chiffrant des données ayant de la valeur aux yeux de la victime ou en bloquant l’accès à ses ressources informatiques.
Nous pouvons dater l’apparition du premier ransomware à 1989, lorsqu’un biologiste, le Dr. Joseph Popp, créa PC Cyborg, plus connu sous le nom de AIDS. Il s’agissait d’un trojan (cheval de Troie), c’est-à-dire un programme malicieux, tournant en tâche de fond, permettant au hacker d’obtenir un accès vers la machine cible. Le moyen d’infection utilisé était la disquette : celle-ci, d’apparence anodine, présentait un programme de renseignement sur le virus du SIDA, distribué gratuitement à des patients et à des institutions médicales. Le modèle était assez simple : une fois installé sur la machine cible, PC Cyborg cachait les répertoires présents sur le disque dur C: et chiffrait le nom des fichiers qui y étaient présents. La victime devait alors effectuer le paiement d’une rançon de 189$ vers une boîte postale située au Panama pour déchiffrer ses données. La méthode de chiffrement employée relevait de la cryptographie symétrique; il fut possible assez rapidement pour les experts en cybersécurité d’inverser le processus en analysant le code source du malware. Le Dr. Popp finit par se faire coincer à cause de son comportement paranoïaque dans un aéroport qui alarma les autorités. Elles découvrirent les pièces à conviction dans les bagages du chercheur et le FBI finit par l’attraper chez ses parents.
De nos jours, les méthodes employées ont évolué et les attaques de ce genre représentent une menace tant pour les entreprises que pour les particuliers. Le FBI estime à 1 milliard de dollars les pertes dues aux ransomwares en 2016.
Fonctionnement d’un ransomware :
Sans entrer dans les détails les plus techniques (il y a de nombreuses variantes), il est important de comprendre comment fonctionne un ransomware afin de s’en prémunir.
Les ransomwares actuels sont regroupés sous le terme générique “cryptovirus” : les méthodes de chiffrement utilisent désormais la cryptographie asymétrique à clef publique et le programme se comporte comme un ver, c’est-à-dire que la machine infectée diffusera automatiquement le programme au sein de son réseau. L’avantage de la cryptographie à clef publique pour l’attaquant est qu’il est théoriquement impossible pour la victime de déchiffrer ses fichiers sans posséder la clef privée associée : c’est elle qui est l’objet d’échange de la rançon.
Les chercheurs Adam Young et Moti Yung ont formalisé le terme de cryptovirologie dans un papier datant de 1996 et décomposé le protocole utilisé par les cryptovirus en trois phases : installation, réponse de la victime et réponse de l’attaquant. On peut désormais décomposer un peu plus finement ces différentes étapes :
- Distribution – phase initiale visant à installer le ransomware sur la ou les machines cibles.
- Infection – une fois installé sur l’ordinateur de la victime, le ransomware lance divers processus : mécanismes de persistance et/ou de réplication du malware, destruction éventuelle des fichiers de sauvegarde, exécution des tâches nécessaires pour établir la communication avec le serveur du hacker.
- Communication – une fois la communication établie, le serveur génère les clefs de chiffrement et les transmet.
- Recherche – le ransomware lance alors des processus de recherche à l’intérieur de la machine-hôte pour identifier les fichiers à chiffrer.
- Chiffrement – le programme chiffre les données pour empêcher l’utilisateur d’y accéder voire même de démarrer correctement sa machine.
- Demande de rançon – le programme expose la situation à l’utilisateur, généralement à l’aide d’un message menaçant, et l’enjoint à payer la rançon au plus vite.
La phase de distribution du malware concentre toutes les techniques possibles et inimaginables d’infiltration sur une machine cible, mais avec une préférence pour les suivantes :
- le social engineering : il s’agit de récupérer l’accès à la machine cible en utilisant les failles humaines du système. Le cas classique : un employé reçoit un message de l’un de ses supérieurs lui intimant de mettre à jour tel ou tel programme, ou de consulter un fichier. Il ne s’agit pas de son supérieur mais d’un hacker ayant usurpé son identité : l’employé naïf exécute alors un programme, généralement dissimulé dans une pièce jointe à l’apparence anodine, qui permettra le déploiement du crypto-virus.
- le phishing : les hackers usurpent également l’identité de grosses multinationales, par exemple en se faisant passer pour le support d’une application très connue comme Adobe Acrobat et en recommandant l’installation d’une mise à jour, qui est en réalité un programme permettant l’installation du malware sur la machine ciblée. Les techniques d’hameçonnage sont généralement utilisées par les pirates informatiques pour voler des informations, mais dans le cas des ransomwares il s’agit seulement d’inciter la cible à effectuer une action permettant de déployer le malware.
- le malvertising : il s’agit de cacher dans une publicité (bannière ou pop-up) un code malicieux qui redirigera l’utilisateur vers une page contenant le code nécessaire au déploiement du ransomware (exploit landing page).
- les botnets : il s’agit des “machines zombies” déjà infectées, qui vont tenter de répandre le malware au sein de leur réseau.
Une fois installé, le ransomware sera actif sur la machine cible et communiquera avec un serveur de type command and control[1], ce qui lui permettra d’obtenir la ou les clefs publiques servant à chiffrer les données : de nos jours, les ransomwares utilisent des protocoles de communication et des méthodes de chiffrement qui permettent d’empêcher la traçabilité des échanges (notamment via HTTPS et TOR). Le chiffrement des données s’effectue donc après le contact avec le serveur et l’envoi de la clef publique.
Le programme va généralement sélectionner des formats de fichiers qui maximisent la probabilité de chiffrer des données sensibles (XLS, DOC, PPT, JPG…).
Une fois le chiffrement effectué, la victime en sera notifiée et le malfaiteur proposera de lui communiquer la clef privée nécessaire pour déchiffrer les données moyennant une somme d’argent. Cette dernière ne doit pas être trop importante afin de ne pas décourager immédiatement la victime mais pas trop faible afin de maximiser les gains du rançonneur dans le cas où sa victime accorde une valeur cruciale à ses données.
Dilemme : faut-il payer la rançon ?
- Si les données sont chiffrées correctement, il est impossible pour la victime d’y accéder à nouveau sans payer la rançon.
- Même en payant cette rançon, le hacker malveillant peut toujours se contenter du paiement et ne jamais communiquer la clef privée (ce fut visiblement le cas avec NotPetya). Cependant, il est dans l’intérêt du cyber-délinquant de respecter sa promesse s’il compte réitérer l’opération.
- Payer ne fait qu’encourager les malfaiteurs utilisant ce moyen pour extorquer des fonds à continuer et à développer des méthodes toujours plus performantes.
- Les fournisseurs de solutions de sécurité informatique possèdent des outils permettant de vérifier le pouvoir de nuisance d’un cryptovirus : dans certains cas, celui-ci est déjà obsolète et il existe des moyens de déchiffrer les données sans avoir à payer de rançon.
- Si la victime a veillé à sauvegarder correctement ses données, l’attaque ne lui coûtera que le temps nécessaire à la réinstallation du système et à la restauration des sauvegardes.
Il est donc recommandé de ne pas payer la rançon ou de ne le faire qu’en derniers recours : la victime doit s’assurer que c’est le seul et unique moyen d’accéder à nouveau à ses données, ou au moins que le coût de la rançon est inférieur aux pertes financières infligées par la corruption de ses données ou au coût d’une intervention permettant de les restaurer.
Moyens de paiements de la rançon :
De nombreux ransomwares ont employé des méthodes tout à fait traditionnelles comme les virements bancaires, ou les transferts via Western Union pour récolter les rançons, mais les moyens de paiement anonymes présentent évidemment des avantages supérieurs. Les hackers apprécient particulièrement les cartes prépayées qui offrent un haut niveau d’anonymat, et depuis quelques années, les monnaies cryptographiques : la proportion de demandes de rançons en bitcoins a explosé.
Pourquoi Bitcoin ?
Contrairement aux idées reçues, l’anonymat des transactions n’est pas la principale raison qui pousse les cyber-criminels à utiliser Bitcoin. D’une part car Bitcoin est en réalité pseudo-anonyme : les transactions réalisées via la blockchain étant publiques, une adresse Bitcoin peut très vite perdre son anonymat si certaines transactions associées impliquent des adresses qui sont, elles, reliées à une identité. D’autre part, convertir la rançon en monnaie fiat est compliqué, car la plupart des plateformes de change cryptomonnaies/monnaies étatiques intègrent un processus de KYC. L’adresse publique du cyber-délinquant sera vite identifiée et tout transfert de fonds étroitement surveillé. S’il veut utiliser son argent, il devra redoubler d’ingéniosité pour ne pas se faire intercepter. A terme, Bitcoin sera plus gênant qu’utile pour les cyber-délinquants.
De manière générale, lorsqu’un outil technologique nouveau est utilisé par des criminels, cela en fait un bouc-émissaire, comme si ce dernier était par nature ou par conception la cause de tous les maux. En réalité, ce constat ne fait que confirmer l’efficacité de la dite technologie : les criminels utilisent différents outils tout comme les citoyens honnêtes mais avec des buts différents. Le fait que certains criminels utilisent Bitcoin et les monnaies cryptographiques est en réalité gage de leur bon fonctionnement, car une personne générant des revenus en menant une activité illégale est fortement incitée à utiliser des outils de grande qualité: la moindre faille peut l’envoyer directement en prison.
La raison principale qui pousse les cyber-criminels à utiliser Bitcoin comme moyen de paiement des rançons est donc surtout son efficacité : les paiements en bitcoins sont rapides, faciles à effectuer, et irréversibles – le criminel peut s’assurer très rapidement que le paiement a été effectué par la victime.
Interdire Bitcoin serait-il une manière efficace de lutter contre les ransomwares ?
Dans le cas général, la suppression des moyens de paiement anonymes ne fera pas disparaître la criminalité et on peut même douter qu’elle la réduise. De nombreux arguments ont été présentés dans cet article, basés sur la méthodologie de Bruce Schneier : il faut juger une politique sécuritaire non pas en fonction de son efficacité mais en fonction du compromis entre le gain en sécurité et les sacrifices qu’elle nécessite.
Par exemple, il est impensable d’interdire aux avions de décoller pour prévenir des attentats du type 9/11 : le gain en sécurité ne vaut pas les sacrifices immenses qu’il impose à la société.
Dans le cas particulier des ransomwares, juger de la pertinence d’une mesure telle que l’interdiction de Bitcoin revient à se poser ces questions :
- Si c’est possible, cela peut-il réellement prévenir ces attaques ?
- Si c’est le cas, cela entraîne-il des conséquences plus graves que les problèmes auxquels les autorités de régulation prétendent s’attaquer ?
Priver les citoyens honnêtes d’outils permettant de lutter de façon efficace contre le vol de données et préservant leur vie privée réserve de fait l’utilisation de ces outils aux seuls criminels qui n’ont pas l’intention de se plier à la loi. Cela risque d’augmenter la dangerosité des attaques et d’inciter les criminels à en inventer de nouvelles :
- Il y a une propriété fondamentale, très peu évoquée, que possèdent les monnaies décentralisées : la résistance à la censure. La décentralisation des noeuds constituant ces réseaux de paiement est prévue justement pour qu’il soit toujours possible de les utiliser, même en cas de défaillance ou d’attaque sur une partie du réseau. Ainsi, même si interdire leur utilisation dans la loi est possible, il est techniquement impossible d’empêcher un individu déterminé d’y accéder (il faudrait couper la connexion Internet de tous les noeuds du réseau dans le monde).
- De nombreuses blockchains ouvertes, dont celle de Bitcoin, peuvent en réalité aider à lutter contre la cybercriminalité, car il est plus facile d’assurer la traçabilité de transactions illicites inscrites dans un registre public plutôt que celles qui sont effectuées avec des moyens de paiement anonymes traditionnels (argent liquide) ou plus modernes (cartes prépayées). Ainsi, le cyber-gendarme a plus intérêt à utiliser, comprendre et maîtriser cette technologie afin d’être plus efficace durant une procédure d’enquête qu’à l’interdire.
- On ne peut pas “désinventer” une technologie, et au fur et à mesure que le niveau d’anonymat de Bitcoin diminue, les protocoles alternatifs évoluent pour offrir des transactions réellement anonymes, notamment en utilisant la preuve interactive à divulgation nulle de connaissance. Quelle que soit la réponse des autorités de régulation, il ne sera pas possible d’endiguer le développement de ces technologies et les criminels utiliseront toujours les meilleurs outils disponibles.
- Même dans le cas où tous les moyens de paiement anonymes seraient interdits, les solutions de contournement pour effectuer le paiement d’une rançon utiliseront des méthodes qui seront probablement plus dangereuses pour la victime, en particulier celles qui seront basées sur l’usurpation d’identité ou la présence physique de la victime lors de la remise de la rançon.
- Interdire l’utilisation des moyens de paiement anonymes et établir un programme de surveillance financière de masse en centralisant les données des individus aux mains de quelques organes de contrôle engendrera d’autres types d’attaques qui ne seront pas basées sur le rançonnement mais sur le vol de données pur et simple. Les risques que feraient courir pareille dystopie sont de loin supérieurs à ceux que présente actuellement la cyber-extorsion, à la fois en termes financiers mais également civilisationnels. Moins le citoyen honnête aura accès aux technologies préservant ses données personnelles, plus les criminels seront incités à tirer parti des points uniques de défaillance des systèmes centralisant leur gestion.
Pour lutter contre les ransomwares, il faut avant tout s’attaquer aux problèmes posés par nos architectures actuelles, qui permettent le déploiement de telles cyberattaques : la facilité avec laquelle un criminel peut infiltrer une structure concentrant des données sensibles, de par notamment le manque d’éducation quant à la cyber-sécurité (irresponsabilité numérique). La cyber-extorsion n’est qu’une des conséquences des failles de sécurité primordiales; la monnaie numérique n’est qu’un outil pouvant intervenir dans ces attaques et non leur cause. En respectant les mesures de base de la sécurité informatique, on peut en prévenir la plupart.
Se protéger des malwares :
- Sauvegarder régulièrement ses données en un endroit qui ne sera pas en contact avec un système vulnérable (tout système connecté à Internet est par définition vulnérable).
- Veiller à toujours utiliser la dernière version d’un système d’exploitation et effectuer régulièrement les mises à jours concernant la sécurité. Dans le cas ou le système d’exploitation est corrompu (présence de backdoors installées par la NSA par exemple), changer de système.
- Veiller également à mettre à jour régulièrement tous les outils logiciels utilisés sur le système (navigateurs, Adobe Flash Player, Java…).
- Protéger son système informatique avec une solution logicielle antivirale performante (fréquence des mises à jour élevée, qualité de son pôle recherche et développement).
- Protéger son système avec un pare-feu, un logiciel anti-spam, un anti-malware, un adblocker, vérifier les réglages relatifs à la sécurité et à la protection de la vie privée pour toutes les applications.
- Sur Internet, ne jamais ouvrir un lien suspect (source inconnue, lien illisible, masqué ou à la conformité douteuse).
- Ne jamais ouvrir un e-mail comportant des pièces jointes venant d’un expéditeur inconnu. Dans le cas où l’expéditeur est connu, toujours vérifier qu’il ne s’agit pas d’une usurpation d’identité en comparant les noms et adresses lettre par lettre, en examinant son certificat…
- Ne pas ouvrir de documents google provenant de sources non-identifiées.
- Ne jamais activer l’exécution des macros pour les documents reçus par mail (cette option est désactivée par défaut dans la plupart des logiciels de messagerie, mais le cybercriminel tentera de justifier l’activation auprès de la victime).
- Toujours activer l’affichage de l’extension des fichiers (cela peut aider à repérer un fichier “déguisé” du type photo.jpg.exe).
- Ne pas activer les connections sans fil type Bluetooth/Infrarouge si ce n’est pas nécessaire, idem pour le partage de fichiers, l’exécution automatique des CD-Roms/Clefs USB, les services d’accès à distance (RDP).
La cybersécurité concerne désormais tout un chacun et, comme c’est d’ailleurs suggéré dans la résolution du Parlement européen concernant les technologies financières, il est indispensable pour le consommateur comme pour l’investisseur d’améliorer sa “culture numérique” en renforçant ses compétences à tous les niveaux. Mieux vaut prévenir que guérir ! La responsabilité est le corollaire de la liberté.
Une société prête à sacrifier un peu de liberté contre un peu de sécurité ne mérite ni l’une, ni l’autre, et finit par perdre les deux.
Sources/ressources :
Cryptovirology : Extortion-Based Security Threats and Countermeasures – Adam Young/Moti Yung
Ransomware : Defending Against Digital Extortion – Allan Liska/Timothy Gallo
De manière générale les blogs des développeurs d’antivirus sont d’excellentes sources d’informations concernant la sécurité informatique (ex. : BitDefender, Heimdal Security, MacAfee, TrendMicro…).
https://www.bitdefender.fr/blog/
Commentaires