La semaine dernière, le chercheur en sécurité Dmytro Oleksiuk - alias Cr4sh - a divulgué une vulnérabilité et un exploit 0-day baptisé ThinkPwn. Affectant les ordinateurs portables ThinkPad de Lenovo, la faille réside dans des pilotes UEFI (le remplaçant du BIOS) et permet d'exécuter du code malveillant dans le mode de fonctionnement System Management Mode (SMM) des processeurs.

Pour un attaquant, les actions possibles sont la suppression de la protection en écriture flash (une défense contre l'exécution de code), la désactivation du Secure Boot. Cette fonctionnalité de lancement sécurisé de l'UEFI permet de vérifier des signatures numériques afin de contrôler l'intégrité du chargeur d'amorçage du système d'exploitation. C'est un rempart contre des rootkits.

Cr4sh ajoute que son exploit peut également servir - entre autres choses - à contourner la fonctionnalité Credential Guard de Windows 10. Présente dans l'édition Entreprise de Windows 10, cette sécurité se base sur la virtualisation pour isoler les informations d'identification de domaines. Microsoft recommande d'activer Credential Guard avec le verrouillage UEFI.

Lenovo a confirmé une vulnérabilité d'exécution de code dans SMM et par un attaquant disposant des privilèges d'accès idoines en local. Son indice de gravité est considéré élevé mais pas critique. L'exploit ThinkPwn implique l'exécution depuis une clé USB en utilisant un shell UEFI. Toutefois, Lenovo souligne un impact pour l'ensemble du secteur.

Alors qu'une suspicion de backdoor a pu émerger, le fabricant chinois précise ne pas être à l'origine du code vulnérable. Il est dans une implémentation de l'UEFI fournie par au moins un de ses quatre IBVs (Independent BIOS Vendors). Ces fournisseurs indépendants prennent le code d'Intel et AMD pour une personnalisation avec des ordinateurs spécifiques. Le fournisseur fautif n'est pas cité.

Selon le chercheur en sécurité Alex James cité par Threatpost, ce code vulnérable a également été trouvé dans des ordinateurs portables HP Pavilion et des cartes mères Gigabyte (Z68-UD3H, Z77X-UD5H, Z87MX-D3H, Z97-D3H…). Il donne le nom de Insyde Software (basé à Taïwan) comme fournisseur. Il est probable que cette liste soit bien plus importante.

Lenovo écrit travailler avec ses IBVs et Intel pour développer un patch correctif aussi rapidement que possible, et regrette l'attitude de Dmytro Oleksiuk qui n'a pas daigné collaborer avant sa divulgation publique.