Vulnerabilidad en firmware (CVE-2017-10720)
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:
17/06/2019
Última modificación:
20/06/2019
Descripción
Recientemente, como parte de la investigación sobre dispositivos IoT en el firmware más reciente para el Endoscopio Shekar, la aplicación de escritorio utilizada para conectarse al dispositivo sufre un desbordamiento de pila si se le pasan más de 26 caracteres como nombre del Wi-Fi. Esta aplicación está instalada en el dispositivo y un atacante que puede proporcionar la carga correcta puede ejecutar el código directamente en el sistema de usuario. Cualquier violación de este sistema puede permitir que un atacante tenga acceso a todos los datos a los que el usuario tiene acceso. La aplicación utiliza una biblioteca de enlace dinámico (DLL) llamada "avilib.dll", que es usada por la aplicación para enviar paquetes binarios al dispositivo que permiten controlarlo. Una de las acciones que proporciona la DLL es cambiar la contraseña en la función "sendchangename" que le permite a un usuario cambiar el nombre del Wi-Fi en el dispositivo. Esta función llama a una subfunción "sub_75876EA0" en la dirección 0x758784F8. La función determina cual acción ejecutar de acuerdo a los parámetros que se le envíen. El "sendchangename" pasa la cadena de datos como el segundo argumento, que es el nombre que ingresamos en el cuadro de texto y el entero 1 como primer argumento. El resto de los 3 argumentos se establecen en 0. La función "sub_75876EA0" en la dirección 0x75876F19 utiliza el primer argumento recibido y determina hacia qué bloque saltar. Dado que el argumento pasado es 1, salta a 0x75876F20 y procede de allí a la dirección 0x75876F56, que calcula la longitud de la cadena de datos pasada como primer parámetro. Esta longitud y el primer argumento son entonces pasados a la dirección 0x75877001 que llama a la función memmove que utiliza una dirección de pila como el destino donde la contraseña escrita por nosotros es pasada como la fuente y la longitud calculada anteriormente se pasa como el número de bytes a copiar lo que conlleva a un desbordamiento de pila.
Impacto
Puntuación base 3.x
7.80
Gravedad 3.x
ALTA
Puntuación base 2.0
4.60
Gravedad 2.0
MEDIA
Productos y versiones vulnerables
CPE | Desde | Hasta |
---|---|---|
cpe:2.3:o:ishekar:endoscope_camera_firmware:*:*:*:*:*:*:*:* | ||
cpe:2.3:h:ishekar:endoscope_camera:-:*:*:*:*:*:*:* |
Para consultar la lista completa de nombres de CPE con productos y versiones, ver esta página