Skip to content
Nouveau livre électronique : Obtenez dès aujourd'hui votre exemplaire du manuel "Unleash the Power of Censys Search Handbook" (Libérez la puissance de la recherche sur ) ! | Télécharger maintenant
Blogs

Vulnérabilités de Zyxel

 

Une récente discussion a eu lieu au sujet d'une vulnérabilité affectant certains dispositifs de réseau Zyxel(CVE-2023-28771), et elle soulève d'importantes préoccupations en raison des milliers de ces dispositifs que l'on peut trouver exposés en ligne. En outre, des chercheurs de Rapid7 ont effectué une analyse qui transforme essentiellement cette vulnérabilité en une attaque scriptable. Depuis le 25 mai 2023, cette vulnérabilité est exploitée en masse par le botnet Mirai.

Bien que l'échange de clés Internet (IKE) soit le protocole utilisé pour initier cet exploit, il ne s'agit pas d'une vulnérabilité de l'IKE lui-même, mais il semble que ce soit le résultat de cette fonction de débogage erronée qui n'aurait pas dû se retrouver dans une version de production du micrologiciel. Mais comme IKE est le seul protocole connu où le chemin vers cette vulnérabilité peut être déclenché, il est beaucoup plus probable que seuls les appareils Zyxel qui utilisent IKE sont réellement vulnérables à cette attaque.

Cette vulnérabilité provient d'une fonction d'enregistrement problématique. Au lieu d'employer un mécanisme sécurisé de traitement des fichiers en ouvrant un gestionnaire de fichier et en écrivant des données dans ce gestionnaire, Zyxel a choisi une approche différente : Il a construit une commande "echo" en incorporant des données d'entrée contrôlées par l'utilisateur. Cette commande "echo" est ensuite exécutée par le biais d'un appel system(), en écrivant la sortie dans un fichier dans /tmp. Cette implémentation introduit un vecteur d'injection de commande OS, car le processus de construction de la commande peut être influencé par des données d'entrée contrôlées par l'utilisateur, et il n'y a pas de nettoyage des données.

Cela signifie que tout ce qu'un attaquant avait à faire était de trouver comment déclencher cette condition de journalisation dans le code à distance. Il s'avère que ce code de journalisation est accessible pendant le processus de décodage d'un message de notification IKEv2, et comme IKE fonctionne sur UDP, pour le déclencher, tout ce qu'un client doit faire est d'envoyer un message de notification IKE dont la charge utile comprend une simple injection de commande OS (c'est-à-dire, " ; cat /etc/shadow" ou dans le cas de l'analyse Rapid7, pop un shell inversé en utilisant "/dev/tcp").

Selon le CVEles appareils et versions Zyxel suivants sont vulnérables :

Produit Version minimale vulnérable Version la plus vulnérable
ATP100 4.60 5.35
ATP100W 4.60 5.34
ATP200 4.60 5.35
ATP500 4.60 5.35
ATP700 4.60 5.35
ATP800 4.60 5.35
USG FLEX 100 4.60 5.35
USG FLEX 100W 4.60 5.35
USG FLEX 50 4.60 5.35
USG FLEX 500 4.60 5.35
USG FLEX 50W 4.60 5.35
USG FLEX 700 4.60 5.35
VPN100 4.60 5.35
VPN1000 4.60 5.35
VPN300 4.60 5.35
VPN50 4.60 5.35
USG 310 4.60 4.72
USG 100 4.60 4.72

Parmi les 24 457 appareils Zyxel que nous avons observés, nous avons constaté qu'une grande majorité, environ 86,72 % (21 210 appareils), utilisait le protocole IKE. Cela indique que ces appareils sont potentiellement sensibles à cette vulnérabilité particulière. D'autre part, seuls 3 247 appareils, représentant environ 13,28 % du total, n'utilisaient pas le protocole IKE et, par conséquent, pourraient ne pas être directement affectés par cette vulnérabilité.

Nous pouvons afficher la liste des hôtes susceptibles d'être vulnérables à cette attaque en utilisant la requête de recherche suivante :Censys :

(services.http.response.html_title={
	"ATP100", "ATP200", "ATP500", 
	"ATP700", "ATP800", "USG FLEX 100", 
	"USG FLEX 100W", "USG FLEX 200", 
	"USG FLEX 50", "USG FLEX 700", 
	"VPN100", "VPN1000", "VPN300", "VPN50"
} 
OR
same_service(
	services.software.product:"usg310" 
	and 
	services.software.vendor:"Zyxel"
)
OR
same_service(
	services.software.product:"usg100" 
	and 
	services.software.vendor:"Zyxel"
))

Et si nous ne voulons voir que les hôtes pour lesquels IKE est également en cours d'exécution, nous pouvons ajouter ce qui suit au fichier demande de recherche ci-dessus: and services.service_name=IKE

Ces dispositifs sont déployés dans toutes sortes de réseaux résidentiels et professionnels, petits et grands. La majorité des réseaux dans lesquels ces dispositifs peuvent être trouvés sont donc des réseaux de télécommunications et d'autres types de fournisseurs de services. Cependant, contrairement à la plupart des vulnérabilités dont nous discutons ici à Censys, la plupart des appareils Zyxel que nous voyons exposés à l'internet se trouvent en Europe.

Ces dispositifs sont principalement présents chez les FAI italiens tels que Telecom Italia (AS3269) avec 2 005 hôtes, Vodafone (AS30722) avec 885 hôtes et Fastweb (AS12874) avec 826 hôtes, soit un total de 6 645 dispositifs déployés dans toute l'Italie.

En outre, on les trouve également en France, avec un total de 4 385 hôtes répartis entre des FAI notables comme France Telecom (AS3215) avec 1 563 hôtes, ainsi que le FAI professionnel SERVEURCOM (AS57809) avec 599 hôtes. En outre, nous avons constaté que la Suisse héberge 2 500 routeurs Zyxel exposés.

Vous trouverez ci-dessous les dix principaux systèmes autonomes (fournisseurs de réseaux) équipés de routeurs Zyxel qui pourraient être vulnérables à cette attaque.

Système autonome Hôtes avec IKE Hôtes sans IKE Total des hôtes
ASN-IBSNAZ 1,532 473 2,005
France Telecom 1,349 234 1,583
SWISSCOM 1,161 58 1,219
VODAFONE-IT-ASN 791 94 885
FASTWEB 751 75 826
SERVEURCOM 520 79 599
HINET 515 77 592
COMCAST-7922 490 32 522
TELEFONICA_DE_ESPANA 431 76 507
Solutions de gestion de la surface d'attaque
En savoir plus