CVE-2021-47542

Severity CVSS v4.0:
Pending analysis
Type:
CWE-476 NULL Pointer Dereference
Publication date:
24/05/2024
Last modified:
10/06/2024

Description

In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> net: qlogic: qlcnic: Fix a NULL pointer dereference in qlcnic_83xx_add_rings()<br /> <br /> In qlcnic_83xx_add_rings(), the indirect function of<br /> ahw-&gt;hw_ops-&gt;alloc_mbx_args will be called to allocate memory for<br /> cmd.req.arg, and there is a dereference of it in qlcnic_83xx_add_rings(),<br /> which could lead to a NULL pointer dereference on failure of the<br /> indirect function like qlcnic_83xx_alloc_mbx_args().<br /> <br /> Fix this bug by adding a check of alloc_mbx_args(), this patch<br /> imitates the logic of mbx_cmd()&amp;#39;s failure handling.<br /> <br /> This bug was found by a static analyzer. The analysis employs<br /> differential checking to identify inconsistent security operations<br /> (e.g., checks or kfrees) between two code paths and confirms that the<br /> inconsistent operations are not recovered in the current function or<br /> the callers, so they constitute bugs.<br /> <br /> Note that, as a bug found by static analysis, it can be a false<br /> positive or hard to trigger. Multiple researchers have cross-reviewed<br /> the bug.<br /> <br /> Builds with CONFIG_QLCNIC=m show no new warnings, and our<br /> static analyzer no longer warns about this code.

Vulnerable products and versions

CPE From Up to
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 3.9 (including) 4.4.294 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 4.5 (including) 4.9.292 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 4.10 (including) 4.14.257 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 4.15 (including) 4.19.220 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 4.20 (including) 5.4.164 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.5 (including) 5.10.84 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.11 (including) 5.15.7 (excluding)