CVE-2024-43893
kernel: serial: core: check uartclk for zero to avoid divide by zero
Severity
LowRed Hat Product Security
CVSS 3.1
Review impact separately from score.
Published · August 26, 2024
Updated · November 21, 2025
Description
A divide by zero vulnerability was found in the uart_get_divisor() function in the Linux Kernel's serial core subsystem. This issue is caused by the improper handling of invalid baud rates. When an invalid baud_base is specified using the TIOCSSERIAL ioctl command, if uartclk is zero, a subsequent call to uart_get_divisor() results in a divide by zero error. A local attacker could exploit this vulnerability by issuing a specially crafted TIOCSSERIAL ioctl call with an invalid baud_base value. This could cause a divide by zero error, leading to a kernel crash and denial of service.
CVSS score applicability
The CVSS score(s) listed for this vulnerability do not reflect the associated product's status, and are included for informational purposes to better understand the severity of this vulnerability.
Mitigation
Mitigation for this issue is either not available or the currently available options do not meet the Red Hat Product Security criteria comprising ease of use and deployment, applicability to widespread installation base or stability.
CVSS / CWE
CVSS 3.1 · 5.5CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
CWE-369 · Divide By Zero