Vulnerability · Published Aug 22, 2024 · Assigned by Linux

CVE-2021-4441spi: spi-zynq-qspi: Fix a NULL pointer dereference in zynq_qspi_exec_mem_op()

Medium 5.5

In plain English

A medium-severity security flaw in Linux from Linux. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.2% (higher than 13% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS NVD)5.5Medium
Exploit odds (30 days)0.2%top 86.8% of all CVEs
Exploited in the wildNo reportsCISA SSVC: none
Attack toolingNoneno public tooling known

Official description

In the Linux kernel, the following vulnerability has been resolved: spi: spi-zynq-qspi: Fix a NULL pointer dereference in zynq_qspi_exec_mem_op() In zynq_qspi_exec_mem_op(), kzalloc() is directly used in memset(), which could lead to a NULL pointer dereference on failure of kzalloc(). Fix this bug by adding a check of tmpbuf. This bug was found by a static analyzer. The analysis employs differential checking to identify inconsistent security operations (e.g., checks or kfrees) between two code paths and confirms that the inconsistent operations are not recovered in the current function or the callers, so they constitute bugs. Note that, as a bug found by static analysis, it can be a false positive or hard to trigger. Multiple researchers have cross-reviewed the bug. Builds with CONFIG_SPI_ZYNQ_QSPI=m show no new warnings, and our static analyzer no longer warns about this code.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
Debian:12linux5.16.12-1DEBIAN-CVE-2021-4441
Debian:13linux5.16.12-1DEBIAN-CVE-2021-4441
Debian:14linux5.16.12-1DEBIAN-CVE-2021-4441
Ubuntu:22.04:LTSlinux-allwinner-5.19no fix listedUBUNTU-CVE-2021-4441
Ubuntu:22.04:LTSlinux-aws-5.19no fix listedUBUNTU-CVE-2021-4441
Ubuntu:22.04:LTSlinux-aws-6.2no fix listedUBUNTU-CVE-2021-4441
Ubuntu:22.04:LTSlinux-aws-6.5no fix listedUBUNTU-CVE-2021-4441
Ubuntu:22.04:LTSlinux-azure-5.19no fix listedUBUNTU-CVE-2021-4441
Ubuntu:22.04:LTSlinux-azure-6.2no fix listedUBUNTU-CVE-2021-4441
Ubuntu:22.04:LTSlinux-azure-6.5no fix listedUBUNTU-CVE-2021-4441
Ubuntu:22.04:LTSlinux-azure-fde-5.19no fix listedUBUNTU-CVE-2021-4441
Ubuntu:22.04:LTSlinux-azure-fde-6.2no fix listedUBUNTU-CVE-2021-4441
Ubuntu:22.04:LTSlinux-gcp-5.19no fix listedUBUNTU-CVE-2021-4441
Ubuntu:22.04:LTSlinux-gcp-6.2no fix listedUBUNTU-CVE-2021-4441
Ubuntu:22.04:LTSlinux-gcp-6.5no fix listedUBUNTU-CVE-2021-4441
Ubuntu:22.04:LTSlinux-hwe-5.19no fix listedUBUNTU-CVE-2021-4441
Ubuntu:22.04:LTSlinux-hwe-6.2no fix listedUBUNTU-CVE-2021-4441
Ubuntu:22.04:LTSlinux-hwe-6.5no fix listedUBUNTU-CVE-2021-4441
Ubuntu:22.04:LTSlinux-intel-iot-realtimeno fix listedUBUNTU-CVE-2021-4441
Ubuntu:22.04:LTSlinux-lowlatency-hwe-5.19no fix listedUBUNTU-CVE-2021-4441
Ubuntu:22.04:LTSlinux-lowlatency-hwe-6.2no fix listedUBUNTU-CVE-2021-4441
Ubuntu:22.04:LTSlinux-lowlatency-hwe-6.5no fix listedUBUNTU-CVE-2021-4441
Ubuntu:22.04:LTSlinux-nvidia-6.2no fix listedUBUNTU-CVE-2021-4441
Ubuntu:22.04:LTSlinux-oem-5.17no fix listedUBUNTU-CVE-2021-4441
Ubuntu:22.04:LTSlinux-oem-6.0no fix listedUBUNTU-CVE-2021-4441
Ubuntu:22.04:LTSlinux-oem-6.1no fix listedUBUNTU-CVE-2021-4441
Ubuntu:22.04:LTSlinux-oem-6.5no fix listedUBUNTU-CVE-2021-4441
Ubuntu:22.04:LTSlinux-oracle-6.5no fix listedUBUNTU-CVE-2021-4441
Ubuntu:24.04:LTSlinux-raspi-realtimeno fix listedUBUNTU-CVE-2021-4441
Ubuntu:22.04:LTSlinux-realtimeno fix listedUBUNTU-CVE-2021-4441
Ubuntu:22.04:LTSlinux-riscvno fix listedUBUNTU-CVE-2021-4441
Ubuntu:22.04:LTSlinux-riscv-5.19no fix listedUBUNTU-CVE-2021-4441
Ubuntu:22.04:LTSlinux-riscv-6.5no fix listedUBUNTU-CVE-2021-4441
Ubuntu:22.04:LTSlinux-starfive-5.19no fix listedUBUNTU-CVE-2021-4441
Ubuntu:22.04:LTSlinux-starfive-6.2no fix listedUBUNTU-CVE-2021-4441
Ubuntu:22.04:LTSlinux-starfive-6.5no fix listedUBUNTU-CVE-2021-4441

Affected products (as reported)

VendorProductVersions
Linux Linux 67dca5e580f1e93a66177389981541cac208c817 – before df14d2bed8e2455878e046e67123d9ecb2e7905667dca5e580f1e93a66177389981541cac208c817 – before 2efece1368aeee2d2552c7ec36aeb676c4d4c95f67dca5e580f1e93a66177389981541cac208c817 – before 3c32405d6474a21f7d742828e73c13e326dcae8267dca5e580f1e93a66177389981541cac208c817 – before b9dd08cbebe0c593c49bf86d2012a431494e54cb67dca5e580f1e93a66177389981541cac208c817 – before ab3824427b848da10e9fe2727f035bbeecae6ff4
Linux Linux 5.2

References