Le US-CERT a publié aujourd’hui une mise en garde, pour les utilisateurs Linux, sur une nouvelle vulnérabilité dangereuse qui permet d’exécuter un code à distance en affectant le software «&nbps;PPP daemon (pppd)&nbps;», installé sur presque tous les systèmes d’exploitation Linux.
Quelques particularités de la faille
Le logiciel pppd affecté est une implémentation du protocole Point-to-Point (PPP), qui autorise la communication et le transfert de données entre les nœuds, principalement utilisé pour établir des liens Internet, tels que ceux sur les modems commutés, les connexions DSL à bande large et les réseaux privés virtuels.
Découvert par le chercheur en sécurité Ioactive, Ilja Van Sprundel, le problème critique est une vulnérabilité de type Stack Buffer Overflow, qui existe en raison d’une erreur logique dans le protocole d’authentification extensible (EAP) qui permet d’analyser les paquets du logiciel pppd.
La vulnérabilité, appelée CVE-2020-8597, présente une très forte criticité (CVSS de base de 9.8) et peut être exploitée par des attaquants non authentifiés pour exécuter à distance du code arbitraire sur les systèmes affectés et ainsi prendre leur contrôle total.
Pour cela, il suffit simplement à un attaquant d’envoyer un paquet EAP avec des données mal formées (pour ne pas éveiller des soupçons sur la machine réceptrice) à un client PPP vulnérable ou à un serveur.
De plus, pppd fonctionnant souvent avec des privilèges élevés et en conjonction avec les pilotes du noyau « Kernel », le défaut pourrait permettre aux attaquants d’exécuter du code malveillant avec les privilèges système ou root. Selon un consultant en cybersécurité :
Cette vulnérabilité est due à une erreur de validation de la taille des données reçues avant de les copier dans la mémoire. Comme la validation de la taille des données est incorrecte, les données arbitraires peuvent être copiées dans la mémoire et provoquer une corruption de la mémoire, conduisant éventuellement à l’exécution du code indésirable.
La vulnérabilité est dans la logique du code d’analyse EAP, en particulier dans les fonctions eap_request() et eap_response() dans eap.c, qui sont appelées par un gestionnaire d’entrée réseau.
Bug pppd, systèmes d’exploitation et appareils affectés
Selon le chercheur, les versions 2.4.2 à 2.4.8 de Point-to-Point Protocol daemon — toutes les versions publiées au cours des 17 dernières années — sont affectées par cette nouvelle vulnérabilité d’exécution de code à distance.
Certaines des distributions Linux populaires et largement utilisées, précisées ci-dessous, ont déjà été confirmées impactées, et de nombreux autres projets sont très probablement affectés.
En outre, la liste des autres applications et appareils vulnérables (dont certains sont énumérés ci-dessous) qui expédient le logiciel pppd est probablement beaucoup plus vaste, ouvrant ainsi une grande surface d’attaque pour les pirates.
Il est conseillé aux utilisateurs des systèmes d’exploitation et des appareils touchés d’appliquer des correctifs de sécurité dès que possible.