Une faille critique du démon PPP ouvre la plupart des systèmes Linux aux pirates distants
L'US-CERT a publié un avertissement aux utilisateurs d'une nouvelle vulnérabilité d'exécution de code à distance dangereuse vieille de 17 ans affectant le logiciel PPP daemon (pppd) qui est installé sur presque tous les systèmes d'exploitation basés sur Linux, et alimente le firmware de nombreux autres périphériques réseau.
Le logiciel pppd concerné est une implémentation du protocole PPP (Point-to-Point Protocol) qui permet la communication et le transfert de données entre les nœuds, principalement utilisé pour établir des liens Internet tels que ceux via des modems commutés, des connexions haut débit DSL et des réseaux privés virtuels.
Découvert par le chercheur en sécurité Ilja Van Sprundel, le problème critique est une vulnérabilité de débordement de tampon de pile qui existe en raison d'une erreur logique dans l'analyseur de paquets EAP (Extensible Authentication Protocol) du logiciel pppd, une extension qui prend en charge des méthodes d'authentification supplémentaires dans Connexions PPP.
La vulnérabilité, suivie comme CVE-2020-8597 avec CVSS Score 9.8, peut être exploitée par des attaquants non authentifiés pour exécuter à distance du code arbitraire sur les systèmes affectés et en prendre le contrôle total.
Pour cela, tout attaquant doit envoyer un paquet EAP mal formé non sollicité à un client ppp vulnérable ou à un serveur via une liaison série directe, RNIS, Ethernet, SSH, SOcket CAT, PPTP, GPRS ou des réseaux ATM.
De plus, comme pppd s'exécute souvent avec des privilèges élevés et fonctionne en conjonction avec les pilotes du noyau, la faille pourrait permettre aux attaquants d'exécuter potentiellement du code malveillant avec les privilèges système ou root.
"Cette vulnérabilité est due à une erreur lors de la validation de la taille de l'entrée avant de copier les données fournies dans la mémoire. Comme la validation de la taille des données est incorrecte, des données arbitraires peuvent être copiées dans la mémoire et provoquer une corruption de mémoire, pouvant conduire à l'exécution de code indésirable", indique l’avis.
"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."
"Il est incorrect de supposer que pppd n'est pas vulnérable si EAP n'est pas activé ou si EAP n'a pas été négocié par un homologue distant à l'aide d'un secret ou d'une phrase secrète. Cela est dû au fait qu'un attaquant authentifié peut toujours envoyer des EAP non sollicités paquet pour déclencher le débordement de la mémoire tampon. "
Bug pppd: systèmes d'exploitation et périphériques concernés
Selon le chercheur, les versions 2.4.2 à 2.4.8 du démon de protocole point à point - toutes les versions publiées au cours des 17 dernières années - sont vulnérables à cette nouvelle vulnérabilité d'exécution de code à distance.
Certaines des distributions Linux les plus utilisées et les plus populaires, répertoriées ci-dessous, ont déjà été confirmées, et de nombreux autres projets sont très probablement également affectés.
- Debian
- Ubuntu
- SUSE Linux
- Feutre
- NetBSD
- Red Hat Enterprise Linux
En plus de cela, la liste des autres applications et appareils vulnérables (certains d'entre eux répertoriés ci-dessous) qui livrent le logiciel pppd est également probablement longue, ouvrant une grande surface d'attaque pour les pirates.
- Cisco CallManager
- Produits TP-LINK
- Système d'exploitation intégré OpenWRT
- Produits Synology
Il est conseillé aux utilisateurs des systèmes d'exploitation et des périphériques concernés d'appliquer des correctifs de sécurité dès que possible ou lorsqu'ils seront disponibles.
Au moment de la rédaction de cet article, il n'y a aucune connaissance de code d'exploitation public ou de preuve de concept pour cette vulnérabilité, ni d'aucune tentative d'exploitation de cette nature.