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->hw_ops->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()&#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.
Impact
Base Score 3.x
5.50
Severity 3.x
MEDIUM
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) |
To consult the complete list of CPE names with products and versions, see this page
References to Advisories, Solutions, and Tools
- https://git.kernel.org/stable/c/15fa12c119f869173f9b710cbe6a4a14071d2105
- https://git.kernel.org/stable/c/3a061d54e260b701b538873b43e399d9b8b83e03
- https://git.kernel.org/stable/c/550658a2d61e4eaf522c8ebc7fad76dc376bfb45
- https://git.kernel.org/stable/c/57af54a56024435d83e44c78449513b414eb6edf
- https://git.kernel.org/stable/c/b4f217d6fcc00c3fdc0921a7691f30be7490b073
- https://git.kernel.org/stable/c/bbeb0325a7460ebf1e03f5e0bfc5c652fba9519f
- https://git.kernel.org/stable/c/c5ef33c1489b2cd74368057fa00b5d2183bb5853
- https://git.kernel.org/stable/c/e2dabc4f7e7b60299c20a36d6a7b24ed9bf8e572



