Descubren una puerta trasera de autenticación oculta en varias versiones de firmware de Tenda
(kb.cert.org)- Algunos firmwares de equipos de red Tenda incluyen una puerta trasera de autenticación no documentada que permite obtener privilegios de administrador en la interfaz web de administración sin credenciales válidas
- CVE-2026-11405 funciona con un flujo en el que, tras fallar la verificación normal de contraseña, se comprueba el valor de
sys.rzadmin.passwordcomo si fuera una contraseña alternativa - Si la contraseña ingresada coincide con ese valor de configuración, se crea una sesión de administrador con role=2 sin validar el nombre de usuario, lo que lleva a una evasión de autenticación
- El alcance del impacto incluye versiones específicas de firmware de las familias FH1201, W15E, AC10, AC5 y AC6, y su explotación puede permitir reconfigurar el dispositivo, cambiar la configuración de red y desactivar funciones de seguridad
- Como no hay parche disponible, para reducir la exposición hay que depender de mitigaciones limitadas como desactivar la administración web remota y cambiar la IP LAN predeterminada
Cómo funciona la puerta trasera de autenticación y qué riesgo implica
- Tenda suministra equipos de red para hogar y empresas, como routers, switches, puntos de acceso inalámbricos y equipos de videovigilancia
- Muchos de estos dispositivos ofrecen una interfaz basada en web para configuración y administración, normalmente protegida con nombre de usuario y contraseña
- El binario
/bin/httpddel firmware vulnerable incluye dentro de la funciónlogin()un mecanismo de autenticación trasero no documentado- Primero ejecuta la verificación normal de contraseña basada en MD5
- Si la autenticación falla, llama a
GetValue("sys.rzadmin.password")para obtener un valor de contraseña alternativo desde la configuración del dispositivo - Después compara directamente con
strcmp()en texto plano la contraseña ingresada por el usuario con el valor guardado en la configuración - Si los valores coinciden, concede privilegios de administrador
role=2y crea una sesión válida
- En esta ruta no se valida el nombre de usuario
- Se puede ingresar cualquier nombre de usuario y, si se envía junto con la contraseña de la puerta trasera, la autenticación tendrá éxito
- Ese mecanismo de autenticación no está documentado y tampoco se muestra en la interfaz de administración
- Si la explotación tiene éxito, se puede obtener acceso total de administrador a la interfaz web del dispositivo sin importar las credenciales configuradas de la cuenta administradora
- Permite reconfigurar el dispositivo
- Permite cambiar la configuración de red
- Permite desactivar funciones de seguridad
- Puede derivar en un compromiso más amplio de la red local
Firmware afectado y respuesta actual
- Versiones de firmware afectadas:
US_FH1201V1.0BR_V1.2.0.14(408)_EN_TDUS_W15EV1.0br_V15.11.0.5(1068_1567_841)_EN_TDEUS_AC10V1.0re_V15.03.06.46_multi_TDE01US_AC5V1.0RTL_V15.03.06.48_multi_TDE01US_AC6V2.0RTL_V15.03.06.51_multi_T
- Falló la coordinación de la vulnerabilidad con el proveedor, por lo que no se ha publicado un parche
- Mitigaciones posibles hasta que exista una versión corregida:
- Desactivar la administración remota
- Si el dispositivo admite administración web remota, esa función debe desactivarse
- Esto puede impedir que atacantes desde redes externas accedan al panel de administración del dispositivo a través de internet
- Limitar la exposición en la red local
- Cambiar la dirección IP LAN predeterminada puede reducir el descubrimiento oportunista por parte de escáneres automatizados que buscan rangos de IP predeterminados conocidos
- Esta medida no impide escaneos de red intencionales o dirigidos
- Desactivar la administración remota
- Identificadores relacionados y material de referencia:
1 comentarios
Opiniones en Hacker News
En el artículo no aparece el valor de
sys.rzadmin.password, pero está publicado en un análisis de 2022: https://boschko.ca/tenda_ac1200_router/Spoiler: el valor es rzadmin, y parece que dentro del firmware hay bastantes otras cosas interesantes
Si fuera un backdoor, al menos creo que habrían intentado hacerlo un poco más discreto :)
rzse lee como alemán, porque en el mundo germanoparlante es una abreviatura común de RechenZentrum, es decir, centro de datosEn inglés sería algo como
dcadmin. Me hace pensar que quizá tercerizaron con gente de “gute Deutsche Wertarbeit”, o que quedó algún rastro de una agencia que la pasó bien, o que es una cortina de humo de alguienNo conocía bien Tenda, pero figura como proveedor de routers, switches, AP inalámbricos y equipos de videovigilancia para hogar/empresa, y su perfil de empresa está en https://www.tendacn.com/us/profile
Entre las marcas chinas muchas veces ocurre que usan los mismos componentes internos y solo cambian la carcasa o los revendieron bajo otra marca como si fueran competidores, así que me pregunto si Tenda también podría ser así. Lo he visto en cámaras de seguridad
Me habría gustado que los autores proporcionaran también un método para verificar la vulnerabilidad, no solo las versiones de firmware. Porque Tenda podría simplemente cambiar la contraseña y decir “ahora es seguro”
Todavía debo tener en algún armario unos adaptadores Ethernet por línea eléctrica que compré hace unos 10 años. En ese entonces era casi estándar que la contraseña de administrador fuera
admin, e incluso muchas veces venía impresa en el propio dispositivoNo es algo como una empresa estatal, así que más que una intención extremadamente maliciosa, me parece más probable que simplemente no les importe en absoluto la calidad
Eso de que “no se valida el nombre de usuario conectado, por lo que cualquier nombre de usuario funciona si se usa junto con la contraseña del backdoor” es increíble
No sé por qué un cliente debería confiar en un fabricante así. Creo que de ahora en adelante nunca usaría un router con firmware de caja negra provisto por el proveedor
Antes de usarlo siempre instalaría algo como OpenWRT, y si por cualquier motivo eso no es posible, ni siquiera consideraría comprar ese equipo
En lugares como complejos de departamentos, donde las redes inalámbricas están muy saturadas y congestionadas, esas funciones son importantes para obtener cobertura, intensidad de señal y throughput. Me pregunto si OpenWRT encontró una solución alternativa, o si los fabricantes se volvieron más colaborativos con drivers abiertos que usan firmware cargable
Eso inevitablemente sería mucho menos eficiente en consumo que un equipo con un chip de switch dedicado
Me sorprende que las empresas de equipos de red produzcan basura de forma tan consistente
Y además siempre son backdoors de nivel amateur. Si al menos fueran sofisticados, quedaría margen para decir “bueno, seguramente alguna agencia de seguridad lo pidió” y seguir adelante
O puede ser que los pusieran a propósito en nivel amateur para que fueran descubiertos
Esto, en realidad, me viene bien. Tengo algunos routers cúbicos de Tenda, que en la práctica son repetidores WiFi con un poco de funcionalidad mesh, pero siempre me molestó que el firmware estuviera demasiado atado a la app
Ahora, con acceso root, va a ser mucho más fácil saltarse la app, y también podré desactivar el mecanismo de ping que envía consultas DNS constantemente a
microsoft.compara mostrar la luz verdeSinceramente, esto se ve más como credenciales de acceso de desarrollador o credenciales predeterminadas incrustadas en el firmware, no tanto como un “backdoor” con connotación maliciosa. Probablemente el flujo era dejar el código, pero aleatorizar la clave durante la producción para que no fuera adivinable, y parece que por flojera no ejecutaron ese paso adicional o grabaron el firmware original sin configuración de producción, y así se filtró
rzadmin. Los científicos están desconcertadosPor eso yo armo mi propio router/firewall con hardware genérico y una distribución de Linux
ipchainsa fines de los 90. En ese entonces era la única forma de conseguir un router que no fuera carísimoDespués aparecieron los routers de consumo/prosumer, pero al final lo viejo volvió a ser nuevo
Hubo una época en la que el WiFi de los hoteles era como una bestia extraña, y llegué a usar un producto de WiFi de viaje de Tenda.
Hoy, gracias a las eSIM y a los planes de internet de viaje generalizados, el WiFi de hotel quizá sea más bien la ruta de conexión menos confiable, así que no creo que haga mucha falta.
También tengo un equipo Mikrotik que venía de regalo en el mismo rango de precio; es físicamente más pequeño y corre algo que parece código de la línea principal. Digan lo que digan de la calidad de Mikrotik, sí ofrece casi todas las perillas de configuración que uno pueda querer.
Cada usuario está en su propia VLAN y cada habitación usa una PPSK distinta. Las credenciales también se generan aleatoriamente, no con algún patrón absurdo como apellido+número de habitación. También creamos nuestro propio sistema de control de acceso y usamos MIFARE DESFire EV3, la tarjeta llave más robusta que pudimos encontrar en ese momento. De verdad estamos intentando construir un hotel donde la seguridad no parezca una broma.
¡Estados Unidos/Israel jamás harían algo así, así que basta con comprar UniFi/Fortinet/Palo Alto!
Ej.: https://www.thestack.technology/cisco-hard-coding-passwords-...
Mi
ifconfiges simple. Si está hecho en Shenzhen, lo tiro.El hardware/firmware reciente de Tenda está cifrado, como en los ejemplos de abajo, así que auditarlo parece más difícil.
US_AC10V6.0si_V16.03.62.09_multi_TDE01.binyUS_BE12ProV1.0mt_V16.03.66.23_TD01.bin, vistos conbinwalk, tenían cifrado OpenSSL.El tercer archivo que probé,
US_W18EV2_kf_V16.01.0.20(4766)_HighPower (1).bin, no estaba cifrado, lo que muestra que el problema también podría existir en otros modelos que no figuran en la lista de afectados por este CVE. Dentro de/squashfs-root/webroot_ro/default_ac.cfgydefault_router.cfgaparecensys.rzadmin.username=rzadminysys.rzadmin.password=cnphZG1pbg==, que al decodificarse desde Base64 darzadmin. También apareceguest/guest.Por lo que vi rápidamente,
sys.rzadmin.passwordsolo se referencia en el contexto de tomar el valor y compararlo en la funciónlogin()de/bin/httpd, y si no coincide aparece"login err: password is wrong.". No encontré referencias de código en ninguna parte del firmware que permitan al usuario cambiar este valor predeterminado.Como extra,
imsd_upload_log_v1de/bin/imsdrecopila SSID, MAC, dirección IP,sys.admin.username,sys.rzadmin.usernamey zona horaria, mientras queimsd_remote_pwd_getobtienesys.admin.password. La biblioteca relacionada/lib/lubucapi.sotambién parece ser un binario que vale la pena revisar más a fondo; al parecer incluye un conjunto de comandos que permiten la gestión en la nube o la depuración remota de routers Tenda, y esa podría ser la razón por la que/bin/imsdcontieneimsd_remote_pwd_get.