En los componentes Realtek SDK, utilizados por varios fabricantes de dispositivos inalámbricos en sus firmwares, se han descubierto cuatro vulnerabilidades que permiten a un atacante no autenticado ejecutar código de forma remota en el dispositivo con privilegios elevados. Según una evaluación preliminar, los problemas afectan al menos a 200 modelos de dispositivos de 65 proveedores diferentes, incluidos varios modelos de enrutadores inalámbricos de Asus, A-Link, Beeline, Belkin, Buffalo, D-Link, Edison, Huawei, LG, Logitec, MT-Link, Netgear, Realtek, Smartlink, UPVEL, ZTE y Zyxel.
El problema abarca varias clases de dispositivos inalámbricos basados en SoC RTL8xxx, desde enrutadores inalámbricos y amplificadores de Wi-Fi, hasta cámaras IP y dispositivos inteligentes para la gestión de la iluminación. En los dispositivos basados en chips RTL8xxx se utiliza una arquitectura que implica la instalación de dos SoC: en el primero se instala el firmware del fabricante basado en Linux, y en el segundo se ejecuta un entorno Linux recortado separado que implementa funciones de punto de acceso. La configuración de este segundo entorno se basa en componentes estándar proporcionados por Realtek en el SDK. Estos componentes también procesan datos resultantes del envío de solicitudes externas.
Las vulnerabilidades afectan a productos que utilizan Realtek SDK v2.x, Realtek 'Jungle' SDK v3.0-3.4 y Realtek 'Luna' SDK hasta la versión 1.3.2. Se ha lanzado una solución en la actualización Realtek 'Luna' SDK 1.3.2a, y se están preparando parches para la publicación en Realtek 'Jungle' SDK. No se planea lanzar soluciones para Realtek SDK 2.x, ya que el soporte para esta rama ya ha finalizado. Para todas las vulnerabilidades se han proporcionado prototipos funcionales de exploits que permiten la ejecución de código en el dispositivo.
Las vulnerabilidades identificadas (las dos primeras tienen un nivel de gravedad de 8.1, y las restantes de 9.8):
- CVE-2021-35392 — desbordamiento de búfer en los procesos mini_upnpd y wscd, que implementan la funcionalidad 'WiFi Simple Config' (mini_upnpd se encarga del procesamiento de paquetes SSDP, y wscd, además de soportar SSDP, gestiona solicitudes UPnP basadas en el protocolo HTTP). Un atacante puede conseguir la ejecución de su código enviando solicitudes UPnP 'SUBSCRIBE' especialmente formateadas con un valor de número de puerto excesivamente grande en el campo 'Callback'. SUBSCRIBE /upnp/event/WFAWLANConfig1 HTTP/1.1 Host: 192.168.100.254:52881 Callback: NT: upnp:event
- CVE-2021-35393: vulnerabilidad en los manejadores 'WiFi Simple Config', que se manifiesta al utilizar el protocolo SSDP (usa UDP y un formato de solicitudes similar al HTTP). El problema es causado por el uso de un búfer fijo de 512 bytes al procesar el parámetro 'ST:upnp' en los mensajes M-SEARCH enviados por los clientes para detectar la disponibilidad de servicios en la red.
- CVE-2021-35394: vulnerabilidad en el proceso MP Daemon, encargado de realizar operaciones de diagnóstico (ping, traceroute). Este problema permite la inyección de comandos debido a una verificación insuficiente de los argumentos al ejecutar herramientas externas.
- CVE-2021-35395: serie de vulnerabilidades en las interfaces web basadas en servidores HTTP /bin/webs y /bin/boa. En ambos se han identificado vulnerabilidades típicas causadas por la falta de verificación de argumentos antes de ejecutar herramientas externas con la función system(). Las diferencias se limitan al uso de diferentes API para el ataque. Ambos manejadores no incluían protección contra ataques CSRF y técnicas de 'DNS rebinding', que permiten el envío de solicitudes desde una red externa cuando el acceso a la interfaz está restringido solo a la red interna. Además, en los procesos se utilizaba por defecto una cuenta predefinida de supervisor/supervisor. También se identificaron varios desbordamientos de pila al enviar argumentos de tamaño excesivo. POST /goform/formWsc HTTP/1.1 Host: 192.168.100.254 Content-Length: 129 Content-Type: application/x-www-form-urlencoded submit-url=wlwps.asp&resetUnCfg=0&peerPin=12345678;ifconfig>\/tmp\/1;&setPIN=Start+PIN&configVxd=off&resetRptUnCfg=0&peerRptPin= como en entornos de nube públicos o privados. se han detectado vulnerabilidades comunes provocadas por la falta de verificación de parámetros antes de ejecutar utilidades externas a través de la función system(). Las diferencias se limitan al uso de diferentes API para el ataque. Ambos manejadores no incluían protección contra ataques CSRF y técnicas de "DNS rebinding", que permiten enviar solicitudes desde redes externas cuando el acceso a la interfaz está restringido solo a la red interna. Además, en los procesos se utilizaba por defecto una cuenta predeterminada supervisor/supervisor. Asimismo, se encontraron varios desbordamientos de pila en los manejadores, que se manifiestan al enviar parámetros de tamaño excesivo. POST /goform/formWsc HTTP/1.1 Host: 192.168.100.254 Content-Length: 129 Content-Type: application/x-www-form-urlencoded submit-url=wlwps.asp&resetUnCfg=0&peerPin=12345678;ifconfig>/tmp/1;&setPIN=Start+PIN&configVxd=off&resetRptUnCfg=0&peerRptPin=
- En los componentes del SDK de Realtek, que es utilizado por diversos fabricantes de dispositivos inalámbricos en su firmware, se han identificado cuatro vulnerabilidades que permiten a un atacante no autenticado ejecutar código de forma remota.
Fuente: opennet.ru
