CVE-2021-47542: net: qlogic: qlcnic: Fix a NULL pointer dereference in qlcnic_83xx_add_rings()
In the Linux kernel, the following vulnerability has been resolved:
net: qlogic: qlcnic: Fix a NULL pointer dereference in qlcnic_83xx_add_rings()
In qlcnic_83xx_add_rings(), the indirect function of
ahw->hw_ops->alloc_mbx_args will be called to allocate memory for
cmd.req.arg, and there is a dereference of it in qlcnic_83xx_add_rings(),
which could lead to a NULL pointer dereference on failure of the
indirect function like qlcnic_83xx_alloc_mbx_args().
Fix this bug by adding a check of alloc_mbx_args(), this patch
imitates the logic of mbx_cmd()'s failure handling.
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_QLCNIC=m show no new warnings, and our
static analyzer no longer warns about this code.
Security readout for executives and security teams
Plain-English summary
This is a Linux kernel driver bug in the QLogic qlcnic network driver. If a mailbox-argument allocation fails, later code may dereference a NULL pointer and crash kernel code. The source notes it was found by static analysis and may be hard to trigger.
Executive priority
Treat as routine kernel maintenance unless qlcnic is used on important servers. The main credible impact is kernel instability, not confirmed active compromise. Patch through normal OS update channels and escalate only where affected driver exposure is confirmed.
Technical view
qlcnic_83xx_add_rings() calls ahw->hw_ops->alloc_mbx_args and later dereferences cmd.req.arg without verifying allocation success. The stable fixes add failure checking modeled after mbx_cmd() handling. Evidence identifies affected Linux kernel ranges, but provides no CVSS, CWE, or trigger conditions.
Likely exposure
Exposure is most relevant to Linux systems running affected kernel versions where the qlcnic driver is present, built, or loadable. Systems without this driver path are less likely to be exposed, but the bundle does not provide a complete product matrix.
Exploitation context
The bundle does not show public exploitation, and KEV is false. The description says the bug was found by static analysis, may be false positive or hard to trigger, and was cross-reviewed by researchers.
Researcher notes
The core issue is missing allocation-failure handling in qlcnic_83xx_add_rings(). Sources do not establish attacker control, reachability, privilege requirements, or exploitability. Validation should focus on kernel version, driver presence, and whether downstream vendor patches include the stable commits.
Mitigation direction
Update to a vendor-supported kernel containing the qlcnic stable fix.
Check Linux distribution advisories for exact fixed package versions.
Prioritize hosts using or loading the qlcnic driver.
Track kernel fleet versions against the affected ranges in the CVE record.
Avoid direct wrangler or unrelated deployment actions; this is an OS patching issue.
Validation and detection
Inventory Linux kernel versions across affected infrastructure.
Check whether the qlcnic driver is built, installed, or loaded.
Confirm the vendor kernel includes one of the referenced stable commits.
Review crash logs for qlcnic-related NULL pointer dereferences.
Document exceptions where affected kernels cannot be upgraded promptly.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2021-47542 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.