• L’article approfondi présente une analyse détaillée des vulnérabilités des pilotes du noyau (le composant central du système d’exploitation Windows).
• Les vulnérabilités dans les pilotes signés sont principalement utilisées par des développeurs pour contourner les mécanismes anti-triche des jeux, mais elles ont également été utilisées par plusieurs groupes de pirates et dans des malwares courants.
• L’installation d’un pilote noyau signé vulnérable est une option appréciée des pirates. Cette technique est appelée « Bring Your Own Vulnerable Driver (BYOVD) ».
• Elle a été utilisée notamment par les groupes Slingshot et InvisiMole, la famille de ransomwares RobbinHood et LoJax, et le tout premier rootkit UEFI.
• Les chercheurs d’ESET ont découvert des vulnérabilités dans trois pilotes.
• L’article détaille des techniques d’atténuation.
ESET Research a publié un article approfondi sur le détournement de pilotes noyau vulnérables. Les vulnérabilités dans les pilotes signés sont principalement utilisées par des développeurs pour contourner les mécanismes anti-triche des jeux, mais elles ont également été utilisées par plusieurs groupes de pirates et dans des malwares. L’article aborde les types de vulnérabilités qui apparaissent généralement dans les pilotes noyau, fournit plusieurs études de cas de malwares utilisant ces pilotes vulnérables, analyse des exemples de pilotes vulnérables découverts au cours de nos recherches, et décrit des techniques d’atténuation efficaces contre ce type d’exploitation. Ces pilotes peuvent souvent servir de passerelles vers le kernel de Windows pour les acteurs malveillants.
Il existe différents types de pilotes noyau (le composant central du système d’exploitation Windows) : des pilotes « logiciels » qui fournissent des fonctionnalités spécifiques non liées au matériel, telles que diagnostics et débogage logiciels, l’analyse du système, etc. Ces derniers sont susceptibles d’étendre considérablement la surface d’attaque. Bien que le chargement direct d’un pilote malveillant non signé ne soit plus possible dans les nouvelles versions de Windows, et que les rootkits noyau appartiennent au passé, il existe toujours des moyens de charger du code malveillant dans le noyau, par exemple en détournant des pilotes signés légitimes. Il existe en effet de nombreux pilotes développés par les fournisseurs de matériel et les éditeurs de logiciels qui offrent des fonctionnalités permettant d’accéder pleinement au noyau avec un effort minimal.
Les vulnérabilités les plus fréquemment observées dans les pilotes noyau sont les suivantes :
• Impossibilité d’ajouter des contrôles qui limitent l’accès en lecture et en écriture aux registres critiques spécifiques au modèle MSR
• Exposer la possibilité de mapper la mémoire physique en lecture/écriture à partir du mode utilisateur
• Exposer la possibilité d’accéder en lecture/écriture à la mémoire virtuelle du noyau à partir du mode utilisateur
« Lorsque les opérateurs de malwares ont besoin d’exécuter du code malveillant dans le noyau Windows sur des systèmes x64 équipés de la vérification des signatures de pilotes, l’installation d’un pilote noyau vulnérable signé semble être une option viable pour ce faire. Cette technique, appelée « Bring Your Own Vulnerable Driver » (BYOVD), est utilisée aussi bien par des groupes de pirates de haut niveau que dans des malwares courants, » explique Peter Kálnai, l’un des co-enquêteurs pour cette étude.
Parmi les acteurs malveillants utilisant la technique BYOVD :
• Le groupe Slingshot qui a implémenté son module principal appelé Cahnadr sous forme de pilote en mode noyau pouvant être chargé par des pilotes noyau signés vulnérables.
• Le groupe InvisiMole qui a été découvert par les chercheurs d’ESET en 2018. Une variante plus récente du malware InvisiMole est le seul cas à ce jour d’exploitation MSR observé par ESET sur des systèmes Windows 10 x64.
• Le ransomware RobbinHood qui comme les malwares courants cherche à atteindre le plus grand nombre de personnes possible. Ainsi, le voir utiliser une technique BYOVD est rare mais particulièrement intéressant. Ce ransomware exploite un pilote vulnérable de carte mère GIGABYTE pour désactiver la vérification de la signature du pilote et installer son propre pilote malveillant.
• LoJax, une autre découverte d’ESET en 2018 et le tout premier rootkit UEFI, utilisait le pilote RWEverything pour accéder aux modules UEFI des victimes.
Les chercheurs d’ESET ont non seulement catalogué les vulnérabilités existantes, mais en ont également recherché de nouvelles. Une liste complète des vulnérabilités découvertes est disponible dans l’article publié. Les fournisseurs qu’ESET a contactés ont été très proactifs et désireux de corriger les vulnérabilités découvertes.
« Bien qu’il existe plusieurs mécanismes employés par le processeur et/ou le système d’exploitation, la plupart d’entre eux peuvent être contournés par des techniques astucieuses et ne sont pas très efficaces lorsque l’attaquant s’est préparé à l’avance, » ajoute M.Kálnai.
L’article propose les techniques d’atténuation utiles suivantes :
• Sécurité virtualisée : Il s’agit d’une fonctionnalité introduite dans Windows 10 qui utilise la virtualisation matérielle pour placer le noyau dans une sandbox, sécurisant ainsi le système d’exploitation par différentes protections.
• Révocation de certificat : Sur les systèmes Windows modernes, les pilotes doivent posséder une signature valide s’appuyant sur un certificat « acceptable ». Par conséquent, la révocation du certificat d’un pilote vulnérable serait un moyen facile de le « désarmer » et le rendre inexploitable dans la plupart des cas.
• Blocage des pilotes : Il s’agit d’une pratique adoptée à la fois par Microsoft et par différents éditeurs de produits de sécurité tiers, dont ESET, pour détecter et supprimer les pilotes vulnérables les plus courants.
Pour plus de détails techniques sur les pilotes de noyau signés vulnérables, lisez l’article « Signed kernel drivers – Unguarded gateway to Windows’ core » sur WeLiveSecurity. Suivez l’actualité d’ESET Research sur Twitter.
Darina SANTAMARIA - 06 61 08 42 45 - darina.j@eset-nod32.fr
Ines KHELIFI : +33 01 55 89 29 30 - ines.k@eset-nod32.fr
À propos d'ESET
Depuis plus de 30 ans, ESET® développe des logiciels et des services de sécurité informatique pour protéger le patrimoine numérique des entreprises, les infrastructures critiques et les consommateurs du monde entier contre des cybermenaces. Nous protégeons les terminaux fixes et mobiles, les outils collaboratifs et assurons la détection et le traitement des incidents. Établit dans le monde entier, nos centres de R&D récoltent et analysent les cybermenaces pour protéger nos clients et notre monde numérique.