CVE-2023-54289 in Linux
Summary
by MITRE • 12/30/2025
In the Linux kernel, the following vulnerability has been resolved:
scsi: qedf: Fix NULL dereference in error handling
Smatch reported:
drivers/scsi/qedf/qedf_main.c:3056 qedf_alloc_global_queues() warn: missing unwind goto?
At this point in the function, nothing has been allocated so we can return directly. In particular the "qedf->global_queues" have not been allocated so calling qedf_free_global_queues() will lead to a NULL dereference when we check if (!gl[i]) and "gl" is NULL.
If you want to get best quality of vulnerability data, you may have to visit VulDB.
Analysis
by VulDB Data Team • 06/07/2026
The vulnerability CVE-2023-54289 represents a critical NULL dereference issue within the Linux kernel's SCSI subsystem, specifically affecting the qedf driver implementation. This flaw resides in the qedf_alloc_global_queues() function located in drivers/scsi/qedf/qedf_main.c at line 3056, where static analysis tools like Smatch have identified a potential path leading to system instability. The vulnerability stems from improper error handling logic that fails to account for the state of allocated resources during function execution, creating a scenario where subsequent cleanup operations attempt to access null pointers.
The technical implementation flaw manifests when the qedf driver encounters an error condition during the allocation of global queues for SCSI operations. During the execution flow, the function attempts to allocate resources for qedf->global_queues but fails to properly handle the error case before proceeding to cleanup operations. The Smatch analysis indicates that at this specific point in the code, no resources have actually been allocated yet, making the subsequent call to qedf_free_global_queues() dangerous. When the cleanup function executes, it checks conditions like "!gl[i]" where gl itself is NULL, leading to a direct NULL pointer dereference that can cause kernel crashes or system instability.
This vulnerability impacts the overall operational integrity of Linux systems running with SCSI storage configurations that utilize the qedf driver, particularly in enterprise environments where reliable storage connectivity is critical. The NULL dereference can result in kernel oops messages, system crashes, or denial of service conditions that affect storage I/O operations. From an ATT&CK perspective, this vulnerability could be leveraged as a privilege escalation vector or system stability compromise, potentially allowing adversaries to disrupt storage services or gain unauthorized access to system resources. The CWE classification for this issue would align with CWE-476 which addresses NULL pointer dereference, and potentially CWE-252 which covers unchecked return values in system functions.
Mitigation strategies for CVE-2023-54289 should prioritize applying the official kernel patches provided by the Linux kernel security team, which typically involve adding proper null checks before cleanup operations or restructuring the allocation logic to ensure proper resource management. System administrators should also implement monitoring solutions to detect potential kernel crashes or stability issues related to SCSI operations, while maintaining regular kernel updates to address similar vulnerabilities. Additionally, organizations should consider implementing runtime protections such as kernel hardening measures and memory protection mechanisms that can detect and prevent NULL pointer dereference attempts, particularly in environments where the affected qedf driver is actively used for storage connectivity.