• 3 Votes
    1 Messages
    73 Vues

    BlackLotus représente une étape majeure dans l’évolution continue des bootkits UEFI.

    Les chercheurs ont annoncé mercredi une découverte majeure en matière de cybersécurité : la première instance connue au monde de malwares réels capables de détourner le processus de démarrage d’un ordinateur même lorsque Secure Boot et d’autres protections avancées sont activés et exécutés sur des versions entièrement mises à jour de Windows.

    Surnommé BlackLotus, le malware est ce qu’on appelle un bootkit UEFI. Ces logiciels malveillants sophistiqués ciblent l’UEFI, abréviation de Unified Extensible Firmware Interface , la chaîne de microprogrammes de bas niveau et complexe responsable du démarrage de pratiquement tous les ordinateurs modernes. En tant que mécanisme qui relie le micrologiciel d’un périphérique PC à son système d’exploitation, l’UEFI est un système d’exploitation à part entière. Il est situé dans une SPI et soudée sur la carte mère de l’ordinateur, ce qui le rend difficile à inspecter ou à corriger. Les bootkits précédemment découverts tels que CosmicStrand , MosaicRegressor et MoonBounce fonctionnent en ciblant le micrologiciel UEFI stocké dans la puce de stockage flash. D’autres, dont BlackLotus, ciblent les logiciels stockés dans la partition système EFI .

    Étant donné que l’UEFI est la première chose à exécuter lorsqu’un ordinateur est allumé, il influence le système d’exploitation, les applications de sécurité et tous les autres logiciels qui suivent. Ces caractéristiques font de l’UEFI l’endroit idéal pour lancer des logiciels malveillants. En cas de succès, les bootkits UEFI désactivent les mécanismes de sécurité du système d’exploitation et garantissent qu’un ordinateur reste infecté par des logiciels malveillants furtifs qui s’exécutent en mode noyau ou en mode utilisateur, même après la réinstallation du système d’exploitation ou le remplacement d’un disque dur.

    Aussi attrayant que cela puisse être pour les acteurs de la menace d’installer des logiciels malveillants presque invisibles qui ont un accès au niveau du noyau, il y a quelques obstacles redoutables qui se dressent sur leur chemin. L’une est l’exigence qu’ils piratent d’abord l’appareil et obtiennent les droits d’administrateur du système, soit en exploitant une ou plusieurs vulnérabilités du système d’exploitation ou des applications, soit en incitant un utilisateur à installer un logiciel cheval de Troie. Ce n’est qu’après que cet obstacle est franchi que l’auteur de la menace peut tenter une installation du bootkit.

    La deuxième chose qui fait obstacle aux attaques UEFI est UEFI Secure Boot , une norme à l’échelle de l’industrie qui utilise des signatures cryptographiques pour garantir que chaque logiciel utilisé lors du démarrage est approuvé par le fabricant d’un ordinateur. Secure Boot est conçu pour créer une chaîne de confiance qui empêchera les attaquants de remplacer le micrologiciel de démarrage prévu par un micrologiciel malveillant. Si un seul lien de micrologiciel dans cette chaîne n’est pas reconnu, Secure Boot empêchera le démarrage de l’appareil.

    Alors que les chercheurs ont trouvé des vulnérabilités de Secure Boot dans le passé, rien n’indique que les acteurs de la menace aient jamais été en mesure de contourner la protection au cours des 12 années d’existence. Jusqu’ici.

    Mercredi, des chercheurs de la société de sécurité ESET ont présenté une analyse approfondie du premier kit de démarrage UEFI sauvage au monde qui contourne le démarrage sécurisé sur des systèmes UEFI entièrement mis à jour exécutant des versions entièrement mises à jour de Windows 10 et 11. Bien qu’il n’y ait pas de chaînes ou d’autres indicateurs montrant directement le nom des créateurs ou le bootkit, les chercheurs d’ESET ont conclu qu’il correspond presque certainement à un bootkit, connu sous le nom de BlackLotus, qui a été annoncé dans les forums de cybercriminalité clandestins depuis l’année dernière. Le prix : 5 000 $, et 200 $ par la suite pour les mises à jour.

    c31a5de6-81cd-4940-8cff-c90437ff1a1d-image.png

    Pour vaincre Secure Boot, le bootkit exploite CVE-2022-21894 , une vulnérabilité dans toutes les versions prises en charge de Windows que Microsoft a corrigée en janvier 2022. La faille logique, appelée Baton Drop par le chercheur qui l’a découverte, peut être exploitée pour supprimer Secure Boot fonctionne à partir de la séquence de démarrage lors du démarrage. Les attaquants peuvent également abuser de la faille pour obtenir des clés pour BitLocker, une fonctionnalité Windows permettant de chiffrer les disques durs.

    CVE-2022-21894 s’est avéré particulièrement précieux pour les créateurs de BlackLotus. Bien que Microsoft publie de nouveaux logiciels corrigés, les fichiers binaires signés vulnérables n’ont pas encore été ajoutés à la liste de révocation UEFI qui signale les fichiers de démarrage auxquels il ne faut plus faire confiance. Microsoft n’a pas expliqué la raison, mais cela a probablement à voir avec des centaines de chargeurs de démarrage vulnérables qui sont encore utilisés aujourd’hui. Si ces binaires signés sont révoqués, des millions d’appareils ne fonctionneront plus. Par conséquent, les appareils entièrement mis à jour restent vulnérables car les attaquants peuvent simplement remplacer les logiciels corrigés par des logiciels plus anciens et vulnérables.

    Dans un e-mail, Jean-Ian Boutin, directeur de la recherche sur les menaces chez ESET, a écrit :

    Le dernier point à retenir est que le kit de démarrage UEFI BlackLotus est capable de s’installer sur des systèmes à jour en utilisant la dernière version de Windows avec le démarrage sécurisé activé. Même si la vulnérabilité est ancienne, il est toujours possible de l’exploiter pour contourner toutes les mesures de sécurité et compromettre le processus de démarrage d’un système, donnant à l’attaquant le contrôle de la première phase du démarrage du système. Cela illustre également une tendance où les attaquants se concentrent sur la partition système EFI (ESP) par opposition au micrologiciel pour leurs implants, sacrifiant la furtivité pour un déploiement plus facile, mais permettant un niveau similaire de capacités.

    BlackLotus est écrit dans les langages d’assemblage et de programmation C, permettant aux développeurs de regrouper une suite complète de fonctionnalités puissantes dans un fichier qui ne prend que 80 Ko d’espace de stockage. Il peut désactiver de manière fiable non seulement Secure Boot, mais plusieurs autres mécanismes de sécurité du système d’exploitation, notamment Bitlocker, Hypervisor-protected Code Integrity (HVCI) et Windows Defender. Une fois BlackLotus entièrement installé, le bootkit déploie un pilote de noyau personnalisé qui, entre autres, empêche le bootkit d’être supprimé de l’ESP. Il installe également un téléchargeur HTTP qui communique avec un serveur de commande et de contrôle exploité par l’attaquant et peut charger des charges utiles supplémentaires en mode utilisateur ou en mode noyau.

    Comme Boutin d’ESET l’a mentionné ci-dessus, plutôt que de s’enliser dans les complexités du micrologiciel UEFI et d’avoir à vaincre diverses détections de mémoire intégrées dans la puce flash connectée SPI qui le stocke, les développeurs de BlackLotus déploient des fichiers binaires standard sur la partition système EFI . L’ESP, comme il est abrégé, est une partition de disque traditionnelle beaucoup plus facile d’accès. Contrairement à la puce flash, l’ESP ne dispose pas de protections telles que BIOS Write Enable, BIOS Lock Enable et SPI Protected Ranges, ce qui rend difficile l’écriture ou la modification des données stockées.

    Dans Wednesday’s deep dive de mercredi, le chercheur d’ESET, Martin Smolár, a écrit :

    L’exécution en tant que bootloader leur donne presque les mêmes capacités que les implants de micrologiciels, mais sans avoir à surmonter les défenses flash SPI à plusieurs niveaux, telles que les bits de protection BWE, BLE et PRx, ou les protections fournies par le matériel (comme Intel Boot Guard). Bien sûr, UEFI Secure Boot fait obstacle aux bootkits UEFI, mais il existe un nombre non négligeable de vulnérabilités connues qui permettent de contourner ce mécanisme de sécurité essentiel. Et le pire, c’est que certains d’entre eux sont encore facilement exploitables sur des systèmes à jour, même au moment d’écrire ces lignes, y compris celui exploité par BlackLotus.

    Le graphique suivant illustre une vue d’ensemble simplifiée de la chaîne d’exécution BlackLotus:

    5ea429f8-d703-4fe0-a0f5-46a5dc92b9eb-image.png

    Il y a trois sections principales dans la chaîne :

    Un programme d’installation déploie des fichiers sur l’ESP , comme illustré à l’étape 1 de la figure ci-dessus. Le programme d’installation désactive ensuite HVCI et BitLocker et redémarre l’appareil. Le programme d’installation semble avoir deux versions : une avec des binaires vulnérables intégrés et une autre qui les télécharge directement depuis Microsoft. Cette dernière version du programme d’installation télécharge des fichiers binaires, notamment :

    https://msdl.microsoft.com/download/symbols/bootmgfw.efi/7144BCD31C0000/bootmgfw.efi
    https://msdl.microsoft.com/download/symbols/bootmgr.efi/98B063A61BC000/bootmgr.efi
    https://msdl.microsoft.com/download/symbols/hvloader.efi/559F396411D000/hvloader.efi

    Si le programme d’installation ne dispose pas déjà d’autorisations système d’administrateur, il essaie d’élever ses autorisations actuelles en utilisant cette méthode pour contourner le contrôle de compte d’utilisateur Microsoft, une protection de sécurité conçue pour empêcher les modifications non autorisées du système d’exploitation à moins qu’elles ne soient approuvées par un compte. avec des droits administratifs.

    Le programme d’installation désactive HVCI en définissant la valeur de registre enabled sous la clé de registre HypervisorEnforcedCodeIntegrity sur zéro, comme décrit ici . Le HVCI garantit que tous les pilotes et binaires en mode noyau sont signés avant de pouvoir s’exécuter. Le programme d’installation le désactive afin que le noyau non signé personnalisé mentionné précédemment puisse être installé ultérieurement dans la chaîne d’exécution.

    Le programme d’installation doit également désactiver BitLocker car il peut être utilisé en combinaison avec un module de plateforme sécurisée pour garantir que le démarrage sécurisé n’a pas été altéré. Pour ce faire, le programme d’installation appelle la méthode DisableKeyProtectors, avec le paramètre DisableCount défini sur zéro.

    1636c36c-7624-499e-a0aa-46f090550bc9-image.png

    Une fois l’appareil redémarré, BlackLotus gagne en persistance , ce qui signifie qu’il s’exécutera à chaque démarrage de l’appareil. Pour ce faire, le logiciel malveillant exploite CVE-2022-21894 et, lorsque le démarrage sécurisé est activé, enregistre une clé de propriétaire de machine (MOK). Un MOK permet aux propriétaires d’appareils exécutant des systèmes d’exploitation non Windows de générer des clés qui signent des composants non Microsoft pendant le processus de démarrage. Le MOK est utilisé en combinaison avec ce qu’on appelle un chargeur de shim, qui est signé par divers distributeurs Linux. Ce processus MOK est illustré dans l’image de droite.

    Les étapes 2 à 4 de la figure ci-dessus montrent que cela s’intègre dans la chaîne d’exécution globale de BlackLotus. L’image ci-dessous montre le certificat auto-signé correspondant au MOK.

    fffe6b79-547a-42e5-89fb-0c16d1297ebf-image.png
    Un certificat auto-signé pour le malware BlackLotus. Notez l’émetteur NM “When they Cry CA”, une référence à la Higurashi When They Cry série animée

    Smolar d’ESET a expliqué :

    En bref, ce processus se compose de deux étapes clés :

    1 Exploitation de CVE-2022-21894 pour contourner la fonction Secure Boot et installer le bootkit. Cela permet l’exécution de code arbitraire dans les premières phases de démarrage, où la plate-forme appartient toujours au micrologiciel et les fonctions des services de démarrage UEFI sont toujours disponibles. Cela permet aux attaquants de faire de nombreuses choses qu’ils ne devraient pas pouvoir faire sur une machine avec UEFI Secure Boot activé sans y avoir physiquement accès, comme modifier les variables NVRAM des services de démarrage uniquement. Et c’est ce dont les attaquants profitent pour configurer la persistance du bootkit à l’étape suivante.

    2 Définir la persistance en écrivant son propre MOK dans MokList , [dans la] variable NVRAM des services de démarrage uniquement. Ce faisant, il peut utiliser un shim légitime signé par Microsoft pour charger son kit de démarrage UEFI auto-signé (signé par la clé privée appartenant à la clé écrite dans MokList ) au lieu d’exploiter la vulnérabilité à chaque démarrage.

    Le message ESET fournit des descriptions plus détaillées de l’exploitation de CVE-2022-21894 et gagne en persistance ici et ici.

    Dès lors, à chaque démarrage de l’appareil, le bootkit auto-signé de l’attaquant est exécuté. Comme expliqué précédemment, le bootkit s’assure que le pilote du noyau empêchant la suppression des fichiers et le téléchargeur HTTP sont installés (étapes 5 à 9). Depuis le poste :

    Le pilote du noyau est responsable de :

    Déploiement du composant suivant de la chaîne : un téléchargeur HTTP
    Garder le chargeur en vie en cas de résiliation
    Protection des fichiers de bootkit contre la suppression d’ESP
    Exécuter des charges utiles de noyau supplémentaires, si cela est demandé par le téléchargeur HTTP
    Désinstallation du bootkit, si cela est demandé par le téléchargeur HTTP

    Le téléchargeur HTTP est responsable de :

    Communiquer avec son C&C
    Exécuter les commandes reçues du C&C
    Téléchargement et exécution des charges utiles reçues du C&C (prend en charge les charges utiles du noyau et les charges utiles du mode utilisateur)

    b8d216a7-81da-4742-aaab-1c252bc4590d-image.png

    On ne sait pas qui est derrière BlackLotus. Un indice, cependant, peut être dans les restrictions trouvées dans certains des exemples qui empêchent l’exécution si un périphérique est situé dans :

    Moldavie (roumain), ro-MD Moldavie (russe), ru-MD Russie (russe), ru-RU Ukraine (ukrainien), uk-UA Biélorussie (biélorusse), be-BY Arménie (arménien), hy-AM Kazakhstan (Kazakh), kk-KZ

    Souvent, les attaquants dans l’un de ces pays s’efforcent de ne pas infecter les appareils là-bas pour éviter d’être arrêtés et poursuivis, car ces endroits ont des traités autorisant l’extradition, bien qu’ils n’aient généralement pas de traités d’extradition avec les États-Unis et d’autres pays occidentaux.

    On ne sait pas non plus combien d’appareils ont été infectés par BlackLotus ni comment il est installé. Comme mentionné précédemment, le programme d’installation doit obtenir des autorisations d’administrateur pour s’exécuter. C’est une barre haute qui signifie qu’un ordinateur est déjà complètement compromis. Dans un communiqué, les responsables de Microsoft ont écrit : « Cette technique [pour exploiter CVE-2022-21894] nécessite un accès administratif pour les attaques à distance ou un accès physique pour les attaques locales. Nous enquêtons plus avant et ferons le nécessaire pour assurer la sécurité et la protection de nos clients. »

    Pour l’instant, le seul moyen d’empêcher les infections par BlackLotus est de s’assurer que tous les correctifs de système d’exploitation et d’application disponibles ont été installés. Cela n’empêchera pas le bootkit de s’exécuter, mais il sera plus difficile pour le programme d’installation d’obtenir les privilèges administratifs dont il a besoin. Les produits antivirus qui surveillent les micrologiciels à la recherche de falsifications malveillantes peuvent également fournir un certain niveau de protection.

    Malgré la barre haute, BlackLotus pourrait s’avérer utile comme alternative aux formes plus traditionnelles de logiciels malveillants de porte dérobée, qui nécessitent également des autorisations d’administrateur. BlackLotus est plus difficile à détecter que de nombreux logiciels malveillants traditionnels. Heureusement, contrairement à de nombreux bootkits UEFI, il peut être supprimé en réinstallant le système d’exploitation, Boutin.

    La poignée de bootkits découverts précédemment dans la nature, y compris FinSpy et ESPecter , offrent les mêmes avantages, mais ils ont été facilement vaincus en activant Secure Boot. BlackLotus représente une étape majeure dans l’évolution continue des bootkits UEFI et signale la sensibilité continue du monde à leur égard.

    Source: https://arstechnica.com/information-technology/2023/03/unkillable-uefi-malware-bypassing-secure-boot-enabled-by-unpatchable-windows-flaw/

    La future activation obligatoire de secure boot sous windows 11 pourrait bien avoir pris un coup dans l’aile…

  • 0 Votes
    5 Messages
    230 Vues

    – Un Proof Of Concept en C ici: https://github.com/berdav/CVE-2021-4034

    – Un autre en Python ICI: https://github.com/joeammond/CVE-2021-4034

    – Pour patcher manuellement: https://gitlab.freedesktop.org/polkit/polkit/-/commit/a2bf5c9c83b6ae46cbd5c779d3055bff81ded683

    – Si vous avez un système un peu à la traine, vous pouvez en attendant utiliser cette commande pour neutraliser l’exploitation de pkexec :

    chmod 0755 /usr/bin/pkexec

    – Si vous avez un doute, vous pouvez vérifier les logs afin d’être certain que la vulnérabilité n’a pas été exploitée, cherchez les chaines suivantes dedans :

    The value for the SHELL variable was not found the /etc/shells file The value for environment variable […] contains suspicious content.

    – Tous les détails techniques ici :

    https://blog.qualys.com/vulnerabilities-threat-research/2022/01/25/pwnkit-local-privilege-escalation-vulnerability-discovered-in-polkits-pkexec-cve-2021-4034

  • 0 Votes
    1 Messages
    86 Vues

    Depuis au moins février 2021, le logiciel Pegasus était capable d’exploiter une faille informatique, repérée par des chercheurs de Citizen Lab, pour infecter des appareils d’Apple sans même que l’utilisateur n’ait cliqué sur un lien ou bouton piégé.

    Le logiciel PEGASUS utilisait une méthode, baptisée FORCEDENTRY, qui ciblait la bibliothèque de rendu des images d’Apple, et fonctionnait contre les appareils Apple iOS, MacOS et WatchOS», les systèmes d’exploitation des mobiles, ordinateurs et montres connectées de la marque à la pomme.

    Citizen Lab avait joué un rôle clef dans l’exposition au grand jour du scandale d’espionnage de masse via Pegasus en juillet. D’après les associations Amnesty et Forbidden Stories, l’affaire concerne une liste de 50 000 numéros de téléphone dans le monde sélectionnés depuis 2016 par les clients de NSO.

    Source et plus: https://www.letemps.ch/economie/apple-repare-une-faille-informatique-liee-logiciel-despionnage-pegasus