CVE-2024-46676

MEDIUM

Linux Kernel < 5.4.283 - Divide By Zero

Title source: rule
STIX 2.1

Description

In the Linux kernel, the following vulnerability has been resolved: nfc: pn533: Add poll mod list filling check In case of im_protocols value is 1 and tm_protocols value is 0 this combination successfully passes the check 'if (!im_protocols && !tm_protocols)' in the nfc_start_poll(). But then after pn533_poll_create_mod_list() call in pn533_start_poll() poll mod list will remain empty and dev->poll_mod_count will remain 0 which lead to division by zero. Normally no im protocol has value 1 in the mask, so this combination is not expected by driver. But these protocol values actually come from userspace via Netlink interface (NFC_CMD_START_POLL operation). So a broken or malicious program may pass a message containing a "bad" combination of protocol parameter values so that dev->poll_mod_count is not incremented inside pn533_poll_create_mod_list(), thus leading to division by zero. Call trace looks like: nfc_genl_start_poll() nfc_start_poll() ->start_poll() pn533_start_poll() Add poll mod list filling check. Found by Linux Verification Center (linuxtesting.org) with SVACE.

Scores

CVSS v3 5.5
EPSS 0.0001
EPSS Percentile 1.9%
Attack Vector LOCAL
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

CISA SSVC

Vulnrichment
Exploitation none
Automatable no
Technical Impact partial

Details

CWE
CWE-369
Status published
Products (8)
linux/Kernel 3.12.0 - 5.4.283linux
linux/Kernel 5.11.0 - 5.15.166linux
linux/Kernel 5.16.0 - 6.1.108linux
linux/Kernel 5.5.0 - 5.10.225linux
linux/Kernel 6.2.0 - 6.6.49linux
linux/Kernel 6.7.0 - 6.10.8linux
linux/linux_kernel 6.11 rc1 (5 CPE variants)
linux/linux_kernel 3.12 - 5.4.283
Published Sep 13, 2024
Tracked Since Feb 18, 2026