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

Vulnerabilidad en parámetro can_can_gw_rcv en net/ en el archivo can/gw.c en el kernel de Linux (CVE-2019-3701)

Gravedad CVSS v3.1:
MEDIA
Tipo:
CWE-787 Escritura fuera de límites
Fecha de publicación:
03/01/2019
Última modificación:
03/09/2019

Descripción

Fue encontrado un problemaa en el parametro can_can_gw_rcv en el archivo net/ can/gw.c en el kernel de Linux hasta la versión 4.19.13. Las reglas de modificación de la CAN frame permiten operaciones lógicas a nivel de bits que también se pueden aplicar en el campo can_dlc. El usuario con privilegios "root" con CAP_NET_ADMIN puede crear una regla de modificación de CAN frame que genera que el código de longitud de datos tenga un valor más alto que el tamaño de datos que CAN frame tenga disponible. En combinación con un cálculo de suma de comprobación configurado donde el resultado se almacena en relación con el final de los datos (por ejemplo, cgw_csum_xor_rel), se puede escribir de nuevo en la cola del skb (por ejemplo, el puntero frag_list en skb_shared_info), lo que finalmente puede ocasionar un fallo del sistema. a causa de la falta de una comprobación, los controladores CAN pueden escribir contenido arbitrario más allá de los registros de datos en la memoria de Entrada/Salida del controlador CAN durante el procesamiento de tramas salientes manipuladas con gw.

Productos y versiones vulnerables

CPE Desde Hasta
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 4.19.13 (incluyendo)
cpe:2.3:o:debian:debian_linux:8.0:*:*:*:*:*:*:*
cpe:2.3:o:canonical:ubuntu_linux:14.04:*:*:*:lts:*:*:*
cpe:2.3:o:canonical:ubuntu_linux:16.04:*:*:*:lts:*:*:*