Flame – probablement le malware le plus abouti jamais conçu !
Après stuxnet qui a tant fait parlé de lui, et après les révélations des états unis indiquant que ce sont eux en collaboration avec Israel qui l’ont lancé (avant qu’il n’échappe à leur contrôle), les systèmes informatiques du moyen orient et plus précisément l’Iran ont découvert qu’ils étaient victime d’un nouveau malware, baptisé Flame ! ce qui est encore plus impressionnant est que ce dernier est resté indécelable pendant au moins deux ans … d’un point de vue technique c’est presque une œuvre d’art !
Comment cette bestiole technique a réussi un tel exploit ? quel est son mode de propagation ? est-il neutralisable ? pourquoi les logiciels anti-virus et les défenses internes du système d’exploitation Windows n’ont pas pu le détecter avant ? … des questions que je me suis posé (et que vous vous êtes posé probablement 😉 ) et auxquels j’ai trouvé des réponses que je tente de résumer dans cet article.
Flame : un chef d’œuvre en ingénierie logicielle
Avant d’être un malware, flame semble être un logiciel aboutie, ses développeurs on veillé à ce qu’il puisse avoir un cycle de vie très long, et ce grâce à des « plugins », une machine infecté par Flame tombe sous le contrôle de ses auteurs, il peuvent alors ajouter/supprimer des modules à Flame à distance, et il y en a de toutes les sortes, allant du simple module de copie de fichier à l’espionnage de la webcam, du micro, des conversations skype, et jusqu’à l’exploitation de failles spécifiques de certains systèmes pour mener d’autres attaques … le tout dans moins de 20 Mo !
Un mode de propagation jamais exploité jusqu’à présent
Pour bondir d’une machine à l’autre, Flame a utilisé un mode de propagation à la fois astucieux et très complexe à exploiter. Le malware a réussi à compromettre l’outil de mise à jour automatique Windows Update et ce en combinant avec génie des faiblesses dans un algorithme de hash utilisé dans la création de certificats SSL à des exploits dans Terminal Server. Une fois les certificats de sécurité compromis, il a suffi à Flame d’utiliser un bon vieux « man-in-the-middle » pour se faire passer pour une mise à jour Windows Update légitime et d’infecter toutes les machines des réseaux compromis.
Flame a donc réussi à signer son propre code comme étant un logiciel tout à fait légitime et certifié Microsoft, plus aucun moyen donc à le considérer comme nuisible par l’OS ou par un logiciel anti-virus tiers.
Plus d’info : http://arstechnica.com/security/2012/06/flames-god-mode-cheat-code-wielded-to-hijack-windows-7-server-2008/
Un exploit technique ET scientifique
Des spécialistes de la cryptographie ont affirmé qu’un tel code ne pouvait être réalisé sans l’aide de scientifiques et mathématiciens de renom. En effet, Flame a exploité pour la première fois dans une attaque informatique une faiblesse dans un algorithme de hash (les collisions), jusqu’ici, seul une démonstration théorique avait pu être réalisée par un groupe de chercheurs et à l’aide de moyen technique conséquents, car non seulement l’attaque est compliqué à mettre en œuvre, mais elle nécessite aussi une puissance de calcul conséquente ! Flame a du trouvé une autre parade
Sources :
http://www.mail-archive.com/cryptography@randombit.net/msg02928.html
La cerise sur le gâteau
Les concepteurs de la bestiole ont pensé à tout, la propagation, la modularité, la furtivité … et aussi la mort du malware ! oui oui, Flame incorpore un système d’autodestruction (stuxnet en avait un également) qui une fois enclenché supprime toute trace de l’infection en veillant à écraser les zones du disque qui contenait les fichiers du malware par des séquences aléatoires. Le but étant de rester invisible et indécelable le plus longtemps possible.
Quel est le but de Flame ?
Tout comme stuxnet, il s’agit d’un logiciel d’espionnage hyper sophistiqué, fort probablement réalisé par un ou plusieurs états, et avec des moyens techniques et financiers assez importants. Son but était certainement de récolter le plus d’informations possible sur les programmes d’armement et de l’industrie iranienne, et peut être préparé le terrain pour une attaque informatique à grande échelle.
Comment neutraliser Flame ? Comment savoir si on est infectés ?
A l’heure où j’écris cet article, Microsoft a déjà publié des mises à jour (ironiquement avec windows update) permettant de combler les failles logicielles et mettant en place un nouveau système de signature et de certification des mises à jour Windows Update. Les logiciels anti-virus ont également mis à jours leurs bases pour permettre de supprimer l’infection.
Une nouvelle aire …
Avec stuxnet et Flame, nous entrons certainement dans une nouvelle aire ou les états aussi usent de techniques de piratage (condamnées par les lois soit dit en passant) pour arriver à leurs fins …
La 3ème guerre mondiale sera-t-elle informatique ?