OphionLocker, ou l’innovation dans le rançongiciel

Publié le 18 décembre 2014 par _nicolas @BranchezVous
Exclusif

Un nouveau rançongiciel donne des maux de tête aux spécialistes en sécurité informatique. Pourtant, il ne semble pas avoir été conçu par quelqu’un de très qualifié au point de vue technique.

Je vous ai déjà parlé des rançongiciels par le passé – ces logiciels malveillants qui sont faits pour extorquer de l’argent aux victimes. J’ai d’ailleurs écrit au sujet de CryptoLocker, ce logiciel particulièrement agressif qui crypte les données importantes d’un utilisateur en lui offrant la possibilité de décrypter le tout, moyennant une somme d’argent en Bitcoins.

OphionLocker emprunte des voies on ne peut plus novatrices au niveau de sa conception.

Bref, un beau rançongiciel de nouvelle génération. Depuis, la formule a été maintes fois réutilisée et remaniée avec peu, voire pas d’innovation. Jusqu’à tout récemment.

En effet, je suis tombé sur la description d’un nouveau rançongiciel nommé OphionLocker, construit un peu sur le même principe que CryptoLocker et ses semblables. Cependant, il emprunte des voies on ne peut plus novatrices au niveau de sa conception.

Les grandes lignes de la conception d’OphionLocker

Tout d’abord, mentionnons l’utilisation de la cryptographie sur les courbes elliptiques, ou elliptic curve cryptography (ECC). Ce principe de cryptage est fondé sur la résolution de logarithmes sur des courbes elliptiques, plutôt que la résolution de problèmes factoriels, comme on le retrouve dans le protocole RSA, un algorithme de cryptographie asymétrique très utilisé. L’ECC a la réputation d’être aussi sécuritaire, sinon plus sûr que les méthodes de chiffrement standards, tout en ayant l’avantage d’avoir des clés plus petites. Notamment, il peut fonctionner sur des plateformes dont le processeur est moins performant, comme sur des appareils mobiles par exemple.

Ensuite, le processus de cryptage qu’il emploie est lui aussi très intéressant. On constate notamment que la clé publique de cryptage est intégrée au maliciel lui-même. Ce petit détail a une incidence très importante : le logiciel peut par conséquent commencer le cryptage sans nécessité de connexion Internet. Généralement, les logiciels de ce genre doivent être connectés au Web pour obtenir la clé publique.

Le code inclut évidemment la liste des extensions de fichiers qui seront cryptées par le maliciel : accdb, ai, arw, bay, blend, cdr, cer, cr2, crt, crw, dbf, dcr, der, dng, doc, docm, docx, dwg, dxf, dxg, eps, erf, indd, jpe, jpg, jpeg, kdc, mdb, mdf, mef, mrw, nef, nrw, odb, odm, odp, ods, odt, orf, p12, p7b, p7c, pdd, pdf, pef, pem, pfx, ppt, pptm, pptx, psd, pst, ptx, r3d, raf, raw, rtf, rw2, rwl, srf, srw, wb2, wpd, wps, xlk, xls, xlsb, xlsm et xlsx.

La liste est plutôt classique et correspond aux fichiers qui sont généralement les plus utilisés par la majorité des utilisateurs. Le tout demeure suffisamment large pour générer beaucoup de problèmes pour à ce dernier.

Lorsqu’il se trouve dans un environnement virtuel, OphionLocker n’enclenche tout simplement pas la phase d’extorsion, ne fournissant ainsi aucun renseignement sur les connexions liées à celle-ci.

Un autre aspect fort intéressant d’OphionLocker est le fait qu’il détecte lorsqu’il est exécuté dans un environnement virtuel. Les spécialistes en sécurité informatique exploitent généralement des machines virtuelles pour étudier bon nombre de maliciels et rançongiciels, une procédure qui leur permet de garder leur ordinateur principal relativement à l’abri des infections. Or, lorsqu’il sait qu’il se trouve dans un tel environnement, OphionLocker n’enclenche tout simplement pas la phase d’extorsion. Il adopte ce comportement afin de ne fournir aucun renseignement sur les connexions qu’il doit établir lors de la demande de rançon, diminuant par conséquent le risque que l’auteur soit repéré par celui qui l’observe.

OphionLocker attribue également un identifiant au système qu’il infecte; un HWID (pour hardware identification) qui lui assure de n’être présent qu’une seule fois par ordinateur. Cet identifiant donne un fort contrôle au créateur du logiciel, car il peut bannir au besoin des ordinateurs se trouvant dans son réseau de systèmes infectés. Ainsi, si le logiciel détecte qu’il roule dans un environnement virtuel, le tout sera lié à un HWID, et le créateur du maliciel pourra tout simplement décider de le désactiver. Encore une fois, c’est une méthode qui nuit au travail des spécialistes en sécurité informatique lorsqu’ils tentent de faire de l’ingénierie inversée sur un maliciel.

Finalement, il faut mentionner qu’OphionLocker communique au travers du réseau Tor. Sans revenir en détail sur ce qu’est Tor (j’en ai parlé dans mon article sur le Web profond), disons essentiellement que le réseau sert à rendre anonymes les transferts de données entre systèmes par une série de sauts entre ordinateurs et un processus de chiffrement. Dans le cas d’OphionLocker, cela signifie donc que les communications vers le serveur de commandement et de contrôle (l’ordinateur qui communique avec le maliciel pour demander les rançons) sont pratiquement indétectables et indéchiffrables.

Un logiciel amateur?

Les analyses menées suggèrent que le logiciel en question est un collage de multiples fonctionnalités se trouvant dans des suites de logiciels malveillants déjà existants.

Même si ce rançongiciel est innovant, il est tout de même intéressant de mentionner que plusieurs observateurs de la scène des maliciels affirment que le tout est loin d’être de niveau élevé en terme de développement. Les analyses menées suggèrent que le logiciel en question est un collage de multiples fonctionnalités se trouvant dans des suites de logiciels malveillants déjà existants. L’auteur aurait tout simplement juxtaposé ces fonctionnalités afin de les imbriquer de manière à ce que le maliciel soit efficace. C’est une forme de Lego logiciel en somme. La structure donne juste quelque chose de plus élégant de ce qui a été vu précédemment.

Comment en vient-on à cette conclusion? Par des analyses poussées qui tendent à démontrer que le tout a été fait à la bâcle, notamment par des appels de fonctions génériques dans des consoles Visual Studio. De plus, certains éléments de scripts proviennent directement de sites wiki. Au final, on ne se retrouve pas devant un travail avec une qualité de finition professionnelle. Ça fonctionne, et le résultat est tout de même impressionnant, mais on ne retrouve pas le lustre technique que plusieurs autres maliciels dégagent.

Toutefois, on peut en conclure qu’il ne faut pas être un professionnel, ni même original, pour écrire des maliciels sophistiqués. Il suffit d’être motivé, d’avoir une éthique douteuse, mais surtout, savoir où trouver les outils dont on a besoin. D’un point de vue de sécurité, c’est loin d’être encourageant pour l’avenir.