CVE-2024-36969

In the Linux kernel, the following vulnerability has been resolved: drm/amd/display: Fix division by zero in setup_dsc_config When slice_height is 0, the division by slice_height in the calculation of the number of slices will cause a division by zero driver crash. This leaves the kernel in a state that requires a reboot. This patch adds a check to avoid the division by zero. The stack trace below is for the 6.8.4 Kernel. I reproduced the issue on a Z16 Gen 2 Lenovo Thinkpad with a Apple Studio Display monitor connected via Thunderbolt. The amdgpu driver crashed with this exception when I rebooted the system with the monitor connected. kernel: ? die (arch/x86/kernel/dumpstack.c:421 arch/x86/kernel/dumpstack.c:434 arch/x86/kernel/dumpstack.c:447) kernel: ? do_trap (arch/x86/kernel/traps.c:113 arch/x86/kernel/traps.c:154) kernel: ? setup_dsc_config (drivers/gpu/drm/amd/amdgpu/../display/dc/dsc/dc_dsc.c:1053) amdgpu kernel: ? do_error_trap (./arch/x86/include/asm/traps.h:58 arch/x86/kernel/traps.c:175) kernel: ? setup_dsc_config (drivers/gpu/drm/amd/amdgpu/../display/dc/dsc/dc_dsc.c:1053) amdgpu kernel: ? exc_divide_error (arch/x86/kernel/traps.c:194 (discriminator 2)) kernel: ? setup_dsc_config (drivers/gpu/drm/amd/amdgpu/../display/dc/dsc/dc_dsc.c:1053) amdgpu kernel: ? asm_exc_divide_error (./arch/x86/include/asm/idtentry.h:548) kernel: ? setup_dsc_config (drivers/gpu/drm/amd/amdgpu/../display/dc/dsc/dc_dsc.c:1053) amdgpu kernel: dc_dsc_compute_config (drivers/gpu/drm/amd/amdgpu/../display/dc/dsc/dc_dsc.c:1109) amdgpu After applying this patch, the driver no longer crashes when the monitor is connected and the system is rebooted. I believe this is the same issue reported for 3113.
Configurations

Configuration 1 (hide)

OR cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*

History

21 Nov 2024, 09:22

Type Values Removed Values Added
References () https://git.kernel.org/stable/c/130afc8a886183a94cf6eab7d24f300014ff87ba - Patch () https://git.kernel.org/stable/c/130afc8a886183a94cf6eab7d24f300014ff87ba - Patch
References () https://git.kernel.org/stable/c/308de6be0c9c7ba36915c0d398e771725c0ea911 - Patch () https://git.kernel.org/stable/c/308de6be0c9c7ba36915c0d398e771725c0ea911 - Patch
References () https://git.kernel.org/stable/c/7e4f50dfc98c49b3dc6875a35c3112522fb25639 - Patch () https://git.kernel.org/stable/c/7e4f50dfc98c49b3dc6875a35c3112522fb25639 - Patch
References () https://git.kernel.org/stable/c/91402e0e5de9124a3108db7a14163fcf9a6d322f - Patch () https://git.kernel.org/stable/c/91402e0e5de9124a3108db7a14163fcf9a6d322f - Patch
References () https://git.kernel.org/stable/c/a32c8f951c8a456c1c251e1dcdf21787f8066445 - Patch () https://git.kernel.org/stable/c/a32c8f951c8a456c1c251e1dcdf21787f8066445 - Patch
References () https://git.kernel.org/stable/c/f187fcbbb8f8bf10c6687f0beae22509369f7563 - Patch () https://git.kernel.org/stable/c/f187fcbbb8f8bf10c6687f0beae22509369f7563 - Patch

17 Jul 2024, 16:50

Type Values Removed Values Added
CWE CWE-369
First Time Linux
Linux linux Kernel
CVSS v2 : unknown
v3 : unknown
v2 : unknown
v3 : 5.5
References () https://git.kernel.org/stable/c/130afc8a886183a94cf6eab7d24f300014ff87ba - () https://git.kernel.org/stable/c/130afc8a886183a94cf6eab7d24f300014ff87ba - Patch
References () https://git.kernel.org/stable/c/308de6be0c9c7ba36915c0d398e771725c0ea911 - () https://git.kernel.org/stable/c/308de6be0c9c7ba36915c0d398e771725c0ea911 - Patch
References () https://git.kernel.org/stable/c/7e4f50dfc98c49b3dc6875a35c3112522fb25639 - () https://git.kernel.org/stable/c/7e4f50dfc98c49b3dc6875a35c3112522fb25639 - Patch
References () https://git.kernel.org/stable/c/91402e0e5de9124a3108db7a14163fcf9a6d322f - () https://git.kernel.org/stable/c/91402e0e5de9124a3108db7a14163fcf9a6d322f - Patch
References () https://git.kernel.org/stable/c/a32c8f951c8a456c1c251e1dcdf21787f8066445 - () https://git.kernel.org/stable/c/a32c8f951c8a456c1c251e1dcdf21787f8066445 - Patch
References () https://git.kernel.org/stable/c/f187fcbbb8f8bf10c6687f0beae22509369f7563 - () https://git.kernel.org/stable/c/f187fcbbb8f8bf10c6687f0beae22509369f7563 - Patch
Summary
  • (es) En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: drm/amd/display: corrige la división por cero en setup_dsc_config Cuando slice_height es 0, la división por slice_height en el cálculo del número de sectores provocará un bloqueo del controlador de división por cero. Esto deja el kernel en un estado que requiere un reinicio. Este parche añade un check para evitar la división por cero. El seguimiento de la pila a continuación es para el kernel 6.8.4. Reproduje el problema en un Thinkpad Lenovo Z16 Gen 2 con un monitor Apple Studio Display conectado a través de Thunderbolt. El controlador amdgpu falló con esta excepción cuando reinicié el sistema con el monitor conectado. kernel: ? die (arch/x86/kernel/dumpstack.c:421 arch/x86/kernel/dumpstack.c:434 arch/x86/kernel/dumpstack.c:447) kernel:? do_trap (arch/x86/kernel/traps.c:113 arch/x86/kernel/traps.c:154) kernel: ? setup_dsc_config (drivers/gpu/drm/amd/amdgpu/../display/dc/dsc/dc_dsc.c:1053) núcleo amdgpu:? do_error_trap (./arch/x86/include/asm/traps.h:58 arch/x86/kernel/traps.c:175) kernel:? setup_dsc_config (drivers/gpu/drm/amd/amdgpu/../display/dc/dsc/dc_dsc.c:1053) núcleo amdgpu:? exc_divide_error (arch/x86/kernel/traps.c:194 (discriminador 2)) kernel:? setup_dsc_config (drivers/gpu/drm/amd/amdgpu/../display/dc/dsc/dc_dsc.c:1053) núcleo amdgpu:? asm_exc_divide_error (./arch/x86/include/asm/idtentry.h:548) núcleo:? setup_dsc_config (drivers/gpu/drm/amd/amdgpu/../display/dc/dsc/dc_dsc.c:1053) kernel amdgpu: dc_dsc_compute_config (drivers/gpu/drm/amd/amdgpu/../display/dc/dsc /dc_dsc.c:1109) amdgpu Después de aplicar este parche, el controlador ya no falla cuando se conecta el monitor y se reinicia el sistema. Creo que este es el mismo problema informado para 3113.
CPE cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*

08 Jun 2024, 13:15

Type Values Removed Values Added
New CVE

Information

Published : 2024-06-08 13:15

Updated : 2024-11-21 09:22


NVD link : CVE-2024-36969

Mitre link : CVE-2024-36969

CVE.ORG link : CVE-2024-36969


JSON object : View

Products Affected

linux

  • linux_kernel
CWE
CWE-369

Divide By Zero