Retour des infections du MBR avec Mbroot
Date : 04 Mars 2008
Le présent article s'appuie sur l'apparition récente du cheval de Troie
Mbroot, pour passer en revue les techniques employées par ce dernier
pour infecter un poste utilisateur.
S'il était des vecteurs d'attaque que l'on croyait abandonnés, détrônés par ceux exploitant les nouvelles technologies de l'information, du web voire plus généralement des télécommunications, nul n'aurait pensé que de vielles recettes ressurgissent un jour.
Oubliée depuis une dizaine d'années, les infections du MBR trouvent un second souffle en s'associant à de nouveaux concepts, comme les rootkits.
Pourquoi oubliées ?
Parce que les infections du MBR sont étroitement liées à celles des virus de boot. Pendant vingt ans, ces derniers avaient un support de prédilection ; les disquettes. Or de nos jours celles-ci sont devenues une denrée rare.
La plupart des portables ou autres unités centrales récentes, sont maintenant dépourvus de lecteur de disquettes. Il est donc simple de voir que les infections via ce medium, n'ont pu que s'éteindre avec la technologie, et par la même les infections du MBR se sont raréfiées.
Ne tirons tout de même pas de conclusions trop hâtives, si ce vecteur a été quelque peu délaissé, d'autres ont évolué avec les nouveaux supports, clés USB, lecteurs de disque amovibles, etc. Toutefois, rares sont ceux qui sont en mesure d'infecter le MBR, bien que ceux-ci soient pour la plupart "bootables".
Un peu d'étymologie !
MBRoot est l'association de l'acronyme "MBR" (Master Boot Record) et de "Root" qui est l'abréviation de "Rootkit". Appelé Mbroot par les uns, Mebroot ou StealthMBR par les autres, ces "nouveaux" malwares deviennent de plus en plus sophistiqués. Leurs concepteurs redoublent d'efforts et s'adaptent aux évolutions des technologies (web 2.0, virtualisation, Peer-To-Peer, etc.), pourtant les vieux "trucs" sont toujours bons à réutiliser.
Qu'est ce que le MBR ?
Sans vouloir rentrer dans les méandres technologiques de la séquence de démarrage de nos postes de travail, le MBR est le premier secteur de démarrage d'un disque dur. Il concourt à l'initialisation d'un système d'exploitation, lorsque la séquence de démarrage du BIOS s'achève et cherche à passer la main à une séquence d'initialisation du système d'exploitation. Le code contenu dans le MBR permet à son tour de localiser la routine d'amorçage du système d'exploitation.
Qu'est-ce qu'un "RootKit"
Contrairement aux infections du MBR, les rootkits illustrent des techniques d'attaque récentes. Il est aujourd'hui difficile de donner une définition exacte de ce que sont les "rootkits", tant ils ont évolué au cours du temps. Ils n'ont pas vocation à se répliquer comme le font les virus, à se propager comme le font les vers. Issus des mondes Unix, qui leur ont donné leurs "lettres de noblesse", ils ont l'image de "boites à outils" dont le but est de fournir un arsenal de techniques de camouflage. Leur objectif est de maintenir des malwares (backdoors, virus, vers, keyloggers, etc.) cachés et non-détectables par les moyens de protection d'un système compromis.
Leurs modes d'installation sont très variés, mais sont souvent liés à des tromperies ou des négligences (spam, navigation sur des sites web peu fiables, utilisation de périphériques infectés auto-amorçables, exploitation de vulnérabilités etc.). Pour être furtif, et pouvoir conduire des attaques à l'insu de l'utilisateur, les rootkits doivent agir dans les couches basses du système, c'est-à-dire au niveau du noyau, ils peuvent même exploiter des jeux d'instructions propres aux processeurs (virtualisation). Pour s'installer ils nécessitent souvent des droits élevés. Ils sont souvent installés en tant que pilote matériel. Ceci peut donc être un frein à leur progression. Une fois installés, ils sont en mesure de se cacher, de manipuler les processus, les fichiers systèmes ou les clés de registre qu'ils exploitent en toute impunité.
Pourquoi un regain d'intérêts pour le MBR !
Il est étonnant de voir que les attaques du secteur de démarrage suscitent un intérêt particulier pour les concepteurs de ces malwares. Les attaquants ont vite fait le constat "qu'attaquer un système d'exploitation était plus difficile lorsque celui-ci est en cours de fonctionnement que lorsqu’il ne l'est pas". Puisqu'il devient de plus en plus difficile de mettre en défaut la sécurité de tels systèmes, l'idée est de mettre en défaut le système avant son démarrage.
L'infection du MBR présente cet avantage. Il permet donc au "rootkit" de prendre la main avant le démarrage du système, et par conséquent de manipuler son état, d'exploiter ses faiblesses.
Ce phénomène est-il nouveau ?
Non pas vraiment. De longue date, de nouvelles techniques ont émergé. A l'état de "Proof-of-Concept" pour les unes, de virus ou de vers pour les autres, toutes ont initié ce mouvement. Certains morceaux de code ont été repris, d'autres "plagiés" pour donner naissance à une multitude de variantes, par ce biais les techniques se sont affinées au cours du temps. Force est de constater que bien que les systèmes aient évolué, qu'ils se soient protégés avec plus ou moins d'avance pour les uns, ou de retard pour les autres, les techniques déployées par les attaquants ont, elles aussi, évolué.
Rappelons le projet "Bootroot" d'eEye, présenté lors de la conférence "BlackHat 2005". Son code de type "Proof-Of-Concept" a démontré la possibilité de démarrer du code avant le noyau des systèmes Windows, et permettait de rester exploitable une fois le système d'exploitation démarré.
D'autres programmes sont apparus. Citons parmi les plus célèbres le prototype "Blue Pill" (la pilule bleue) de Joanna Rutkowska, exploitant les technologies de virtualisation "Pacifica" des processeurs AMD, ou "intelVT" des processeurs Intel. Sous la forme d'un "PoC" ce code permet de prendre le contrôle total d'un système d'exploitation 64bit vulnérable. "Microsoft Windows Vista x64" se croyait exempt d'une telle attaque, il n'en fût rien. Un correctif dans la "Release Candidate 2" de ce système a dû être rajouté pour qu'il ne soit plus vulnérable. Bien que ce code ait été spécifiquement développé contre "Microsoft Vista x64", il n'est pas à écarter que celui-ci soit transposable contre d'autres systèmes d'exploitation vulnérables.
La virtualisation et son exploitation par les codes malveillants, sont un nouvel enjeu en termes de sécurité. Microsoft à son tour, l'aurait d'ailleurs prouvé en produisant également un code furtif nommé "SubVirt", exploitant les technologies de virtualisation logicielle.
Analyse de Mbroot !
Mbroot est un cheval de Troie qui s'illustre par l'emploi des techniques que nous venons d'exposer. L'exploitation du MBR lui permet de prendre la main sur le système, avant que ce dernier puisse mettre en œuvre ses propres protections. Dans un premier temps, il procède à la réécriture du MBR qu'il remplace par son propre code afin de prendre l'ascendant sur le système Microsoft qui sera lancé. Une copie du MBR d'origine est réalisée dans le secteur 62 du disque attaqué afin de rediriger toute lecture du secteur 0 vers la copie originale du MBR. Ceci afin bien sûr de rester le plus furtif possible.
Les différentes analyses effectuées par différents éditeurs d'anti-virus montrent que le code de Mbroot est largement basé sur celui de "bootroot" (évoqué précédemment). Seule la partie du code chargeant la porte dérobée, a changé. Celle-ci tente de télécharger un malware de 467 Ko depuis un site malveillant, qu'il tente de cacher dans le dernier secteur du disque. Ce malware tente de détourner les protections du poste infecté, et installe une porte dérobée susceptible d'être utilisée pour prendre le contrôle total du poste. Plusieurs variantes ont été identifiées (Sinowal, Torpig, etc.)
Quel avenir pour Mbroot ?
Actuellement Mbroot ne semble affecter que les systèmes Windows XP. Les différentes variantes découvertes, semblent montrer que ce dernier est dans une phase de développement et de prototypage. Gageons que de nouvelles variantes exploitant de nouvelles faiblesses apparaitront.
Comment s'en prémunir ?
Il n'y a pas de recette miracle. La protection du MBR est proposée par la quasi-totalité des BIOS récents. Activer cette protection, une fois un système sain installé réduira considérablement le risque de contrôle du système par un rootkit, tel que Mbroot.
Pour plus d'informations :
Description de MBroot par Symantec
Analyse de Symantec : Mbroot has an experiment for future attacks
S'il était des vecteurs d'attaque que l'on croyait abandonnés, détrônés par ceux exploitant les nouvelles technologies de l'information, du web voire plus généralement des télécommunications, nul n'aurait pensé que de vielles recettes ressurgissent un jour.
Oubliée depuis une dizaine d'années, les infections du MBR trouvent un second souffle en s'associant à de nouveaux concepts, comme les rootkits.
Pourquoi oubliées ?
Parce que les infections du MBR sont étroitement liées à celles des virus de boot. Pendant vingt ans, ces derniers avaient un support de prédilection ; les disquettes. Or de nos jours celles-ci sont devenues une denrée rare.
La plupart des portables ou autres unités centrales récentes, sont maintenant dépourvus de lecteur de disquettes. Il est donc simple de voir que les infections via ce medium, n'ont pu que s'éteindre avec la technologie, et par la même les infections du MBR se sont raréfiées.
Ne tirons tout de même pas de conclusions trop hâtives, si ce vecteur a été quelque peu délaissé, d'autres ont évolué avec les nouveaux supports, clés USB, lecteurs de disque amovibles, etc. Toutefois, rares sont ceux qui sont en mesure d'infecter le MBR, bien que ceux-ci soient pour la plupart "bootables".
Un peu d'étymologie !
MBRoot est l'association de l'acronyme "MBR" (Master Boot Record) et de "Root" qui est l'abréviation de "Rootkit". Appelé Mbroot par les uns, Mebroot ou StealthMBR par les autres, ces "nouveaux" malwares deviennent de plus en plus sophistiqués. Leurs concepteurs redoublent d'efforts et s'adaptent aux évolutions des technologies (web 2.0, virtualisation, Peer-To-Peer, etc.), pourtant les vieux "trucs" sont toujours bons à réutiliser.
Qu'est ce que le MBR ?
Sans vouloir rentrer dans les méandres technologiques de la séquence de démarrage de nos postes de travail, le MBR est le premier secteur de démarrage d'un disque dur. Il concourt à l'initialisation d'un système d'exploitation, lorsque la séquence de démarrage du BIOS s'achève et cherche à passer la main à une séquence d'initialisation du système d'exploitation. Le code contenu dans le MBR permet à son tour de localiser la routine d'amorçage du système d'exploitation.
Qu'est-ce qu'un "RootKit"
Contrairement aux infections du MBR, les rootkits illustrent des techniques d'attaque récentes. Il est aujourd'hui difficile de donner une définition exacte de ce que sont les "rootkits", tant ils ont évolué au cours du temps. Ils n'ont pas vocation à se répliquer comme le font les virus, à se propager comme le font les vers. Issus des mondes Unix, qui leur ont donné leurs "lettres de noblesse", ils ont l'image de "boites à outils" dont le but est de fournir un arsenal de techniques de camouflage. Leur objectif est de maintenir des malwares (backdoors, virus, vers, keyloggers, etc.) cachés et non-détectables par les moyens de protection d'un système compromis.
Leurs modes d'installation sont très variés, mais sont souvent liés à des tromperies ou des négligences (spam, navigation sur des sites web peu fiables, utilisation de périphériques infectés auto-amorçables, exploitation de vulnérabilités etc.). Pour être furtif, et pouvoir conduire des attaques à l'insu de l'utilisateur, les rootkits doivent agir dans les couches basses du système, c'est-à-dire au niveau du noyau, ils peuvent même exploiter des jeux d'instructions propres aux processeurs (virtualisation). Pour s'installer ils nécessitent souvent des droits élevés. Ils sont souvent installés en tant que pilote matériel. Ceci peut donc être un frein à leur progression. Une fois installés, ils sont en mesure de se cacher, de manipuler les processus, les fichiers systèmes ou les clés de registre qu'ils exploitent en toute impunité.
Pourquoi un regain d'intérêts pour le MBR !
Il est étonnant de voir que les attaques du secteur de démarrage suscitent un intérêt particulier pour les concepteurs de ces malwares. Les attaquants ont vite fait le constat "qu'attaquer un système d'exploitation était plus difficile lorsque celui-ci est en cours de fonctionnement que lorsqu’il ne l'est pas". Puisqu'il devient de plus en plus difficile de mettre en défaut la sécurité de tels systèmes, l'idée est de mettre en défaut le système avant son démarrage.
L'infection du MBR présente cet avantage. Il permet donc au "rootkit" de prendre la main avant le démarrage du système, et par conséquent de manipuler son état, d'exploiter ses faiblesses.
Ce phénomène est-il nouveau ?
Non pas vraiment. De longue date, de nouvelles techniques ont émergé. A l'état de "Proof-of-Concept" pour les unes, de virus ou de vers pour les autres, toutes ont initié ce mouvement. Certains morceaux de code ont été repris, d'autres "plagiés" pour donner naissance à une multitude de variantes, par ce biais les techniques se sont affinées au cours du temps. Force est de constater que bien que les systèmes aient évolué, qu'ils se soient protégés avec plus ou moins d'avance pour les uns, ou de retard pour les autres, les techniques déployées par les attaquants ont, elles aussi, évolué.
Rappelons le projet "Bootroot" d'eEye, présenté lors de la conférence "BlackHat 2005". Son code de type "Proof-Of-Concept" a démontré la possibilité de démarrer du code avant le noyau des systèmes Windows, et permettait de rester exploitable une fois le système d'exploitation démarré.
D'autres programmes sont apparus. Citons parmi les plus célèbres le prototype "Blue Pill" (la pilule bleue) de Joanna Rutkowska, exploitant les technologies de virtualisation "Pacifica" des processeurs AMD, ou "intelVT" des processeurs Intel. Sous la forme d'un "PoC" ce code permet de prendre le contrôle total d'un système d'exploitation 64bit vulnérable. "Microsoft Windows Vista x64" se croyait exempt d'une telle attaque, il n'en fût rien. Un correctif dans la "Release Candidate 2" de ce système a dû être rajouté pour qu'il ne soit plus vulnérable. Bien que ce code ait été spécifiquement développé contre "Microsoft Vista x64", il n'est pas à écarter que celui-ci soit transposable contre d'autres systèmes d'exploitation vulnérables.
La virtualisation et son exploitation par les codes malveillants, sont un nouvel enjeu en termes de sécurité. Microsoft à son tour, l'aurait d'ailleurs prouvé en produisant également un code furtif nommé "SubVirt", exploitant les technologies de virtualisation logicielle.
Analyse de Mbroot !
Mbroot est un cheval de Troie qui s'illustre par l'emploi des techniques que nous venons d'exposer. L'exploitation du MBR lui permet de prendre la main sur le système, avant que ce dernier puisse mettre en œuvre ses propres protections. Dans un premier temps, il procède à la réécriture du MBR qu'il remplace par son propre code afin de prendre l'ascendant sur le système Microsoft qui sera lancé. Une copie du MBR d'origine est réalisée dans le secteur 62 du disque attaqué afin de rediriger toute lecture du secteur 0 vers la copie originale du MBR. Ceci afin bien sûr de rester le plus furtif possible.
Les différentes analyses effectuées par différents éditeurs d'anti-virus montrent que le code de Mbroot est largement basé sur celui de "bootroot" (évoqué précédemment). Seule la partie du code chargeant la porte dérobée, a changé. Celle-ci tente de télécharger un malware de 467 Ko depuis un site malveillant, qu'il tente de cacher dans le dernier secteur du disque. Ce malware tente de détourner les protections du poste infecté, et installe une porte dérobée susceptible d'être utilisée pour prendre le contrôle total du poste. Plusieurs variantes ont été identifiées (Sinowal, Torpig, etc.)
Quel avenir pour Mbroot ?
Actuellement Mbroot ne semble affecter que les systèmes Windows XP. Les différentes variantes découvertes, semblent montrer que ce dernier est dans une phase de développement et de prototypage. Gageons que de nouvelles variantes exploitant de nouvelles faiblesses apparaitront.
Comment s'en prémunir ?
Il n'y a pas de recette miracle. La protection du MBR est proposée par la quasi-totalité des BIOS récents. Activer cette protection, une fois un système sain installé réduira considérablement le risque de contrôle du système par un rootkit, tel que Mbroot.
Pour plus d'informations :
Description de MBroot par Symantec
Analyse de Symantec : Mbroot has an experiment for future attacks