CVE-2026-13768: Credencial Privilegiada de IoT Hub — Enumeración de Flota, RCE en Dispositivos y Pivote en la Red Doméstica
Aviso
| Campo | Valor |
|---|
| CVE | CVE-2026-13768 |
| ICSA | ICSA-26-183-03 (Gardyn IoT Hub) |
| CVSS 3.1 | 10.0 (Crítico) |
| Vector (3.1) | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:L |
| Vector (4.0) | CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:L/SC:H/SI:H/SA:L |
| CWE | CWE-798 (Uso de Credenciales Hardcodeadas) |
| Investigador | Michael Groberman |
| Publicado | 2026-07-02 |
| Hallazgo coordinado | Gr0m-012 (control de flota IoT Hub) + Gr0m-013 (acceso lateral a la red) |
Producto
| Campo | Valor |
|---|
| Fabricante | Gardyn |
| Producto | Gardyn Home Kit, Gardyn Studio |
| Componente | Plano de control de Azure IoT Hub, API en la nube, firmware del dispositivo |
| Versiones afectadas | Home Firmware < master.627, Studio Firmware < master.627, Cloud API < 2.12.2026 |
Resumen
Gardyn expone una clave de acceso compartido privilegiada iothubowner. El acceso a esta clave permite a un usuario malintencionado invocar una función de Azure IoT Hub Registry Manager que devuelve información de conexión para todos los dispositivos Gardyn Home Kit y Studio. La misma clave permite ejecutar comandos arbitrarios en un dispositivo específico conectado y puede permitir al atacante pivotar hacia otros dispositivos en la red doméstica de la víctima.
Este es el aviso de IoT Hub (ICSA-26-183-03) que cataloga el radio de explosión del plano de control de la credencial administrativa. Está relacionado, pero es distinto de CVE-2025-1242 en ICSA-26-055-03, que catalogaba la exposición de la credencial iothubowner a través de respuestas API no autenticadas, ingeniería inversa de la aplicación móvil y análisis de firmware. CVE-2026-13768 captura lo que la posesión de esa credencial permite: enumeración de toda la flota, ejecución remota de código por dispositivo y movimiento lateral hacia la LAN doméstica.
Detalles de la Vulnerabilidad
La credencial
La política de acceso compartido iothubowner es la credencial de mayor privilegio en Azure IoT Hub. Microsoft la documenta como de uso exclusivo para administración de backend, nunca para ser distribuida a clientes.
| Permiso | Capacidad |
|---|
| RegistryRead | Enumerar cada dispositivo en la flota |
Enumeración de flota (Registry Manager)
Con la clave, IoTHubRegistryManager devuelve información de conexión para toda la flota:
from azure.iot.hub import IoTHubRegistryManager
manager = IoTHubRegistryManager.from_connection_string(hub_conn_string) # iothubowner
online = manager.query_iot_hub("SELECT * FROM devices WHERE connectionState = 'Connected'")
| Métrica | Conteo | Fuente |
|---|
| Dispositivos registrados | 138.160+ | CISA / registro de aviso |
| Dispositivos enumerados | 129.949 | Enumeración del investigador, Dic 2025 |
| En línea en la enumeración | 38.831 |
Ejecución remota de código por dispositivo
Los métodos directos de nube a dispositivo alcanzan cualquier dispositivo. Combinado con la ruta de inyección de comandos en el manejador upgrade() del dispositivo (CVE-2025-29631), un método C2D produce ejecución de comandos como root en el dispositivo objetivo:
from azure.iot.hub.models import CloudToDeviceMethod
method = CloudToDeviceMethod(method_name="upgrade", payload={
"uri": "http://x; <comando> ", # sumidero de inyección en upgrade()
"path": "/tmp/x", "services": []})
manager.invoke_device_method(device_id, method)
Pivote en la red doméstica
Cada dispositivo se encuentra en la WiFi doméstica del cliente. La ejecución de comandos en el dispositivo proporciona un punto de apoyo detrás del firewall doméstico, desde el cual un atacante puede escanear la LAN e interactuar con otros hosts (routers, NAS, cámaras, cerraduras inteligentes, ordenadores personales). El dispositivo es el punto de pivote; ya está dentro de la red. Esta es la condición de movimiento lateral Gr0m-013.
Mapeo a hallazgos coordinados
Remedio
Según ICSA-26-183-03, Gardyn afirma que la infraestructura de IoT Hub desplegada ha sido actualizada para abordar las vulnerabilidades listadas.
- Rotar la credencial administrativa
iothubowner (rompe el acceso inicial).
- Emitir credenciales de mínimo privilegio y por dispositivo; retirar las claves administrativas de toda la flota de cualquier ruta accesible para el cliente.
- Eliminar el sumidero de inyección de comandos en
upgrade() (CVE-2025-29631) para eliminar la primitiva RCE.
- Aplicar listas blancas de comandos para métodos directos.
- Habilitar registro de acceso a IoT Hub y alertas de anomalías (el fabricante declaró a CISA que no existía registro de acceso en los puntos finales afectados durante la ventana de exposición).
Investigador: Michael Groberman (Gr0m) · Caso: CERT/CC VU#653116 · Aviso: ICSA-26-183-03