Instituto Nacional de ciberseguridad. Sección Incibe
Instituto Nacional de Ciberseguridad. Sección INCIBE-CERT

Vulnerabilidad en el demonio personalizado "dldps2121" en el puerto UDP 5978 en los dispositivos DCS-1100 y DCS-1130 de D-Link (CVE-2017-8416)

Gravedad CVSS v3.1:
ALTA
Tipo:
CWE-119 Restricción de operaciones inapropiada dentro de los límites del búfer de la memoria
Fecha de publicación:
02/07/2019
Última modificación:
23/04/2021

Descripción

Se detectó un problema en los dispositivos DCS-1100 y DCS-1130 de D-Link. El dispositivo ejecuta un demonio personalizado en el puerto UDP 5978 que se llama "dldps2121" y escucha los paquetes de difusión enviados en 255.255.255.255. Este demonio maneja el protocolo basado en UDP D-Link personalizado que permite a las aplicaciones móviles de D-Link y las aplicaciones de escritorio detectar dispositivos D-Link en la red local. El binario procesa los paquetes UDP recibidos, enviados desde cualquier dispositivo en la función "main". Una ruta (path) en la función se dirige hacia un bloque de código que procesa paquetes que realizan una operación de copia ilimitada que permite desbordar el búfer. El protocolo personalizado creado por Dlink sigue el siguiente patrón: Packetlen, Tipo de paquete; M=dirección MAC del dispositivo o transmisión; D=Tipo de dispositivo; C=cadena de comando codificada en base64; prueba=1111 Podemos visualizar que la función de dirección que comienza en la dirección 0x0000DBF8 maneja todo el paquete UDP y realiza una copia no segura usando la función strcpy en la dirección 0x0000DC88. Esto genera el desbordamiento del puntero de la pila después de 1060 caracteres y, por lo tanto, permite controlar el registro PC y resulta en la ejecución del código. La misma forma de comunicación puede iniciarse mediante cualquier proceso, incluido un proceso de atacante en el teléfono móvil o en el escritorio, y esto permite que una aplicación de terceros en el dispositivo ejecute comandos en el dispositivo sin ninguna autenticación mediante el envío de solo 1 paquete UDP con la codificación base64 personalizada.

Productos y versiones vulnerables

CPE Desde Hasta
cpe:2.3:o:dlink:dcs-1130_firmware:-:*:*:*:*:*:*:*
cpe:2.3:h:dlink:dcs-1130:-:*:*:*:*:*:*:*
cpe:2.3:o:dlink:dcs-1100_firmware:-:*:*:*:*:*:*:*
cpe:2.3:h:dlink:dcs-1100:-:*:*:*:*:*:*:*