Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessReach target over FC fabric (adjacent)
-
DeliverySend unsolicited NVMe LS to qla2xxx port
-
ExploitLS-reject error path frees still-linked uctx
-
ExecutionLater list_add_tail/list_del hits freed node
-
ImpactKernel list corruption / panic (DoS)
Vulnerability Assessment
| Exploitation Conditions | Requires the qla2xxx driver bound to a QLogic Fibre Channel HBA operating on the NVMe-over-Fibre-Channel path, and the specific LS-reject error branch in qla_nvme_xmt_ls_rsp() to be taken while a uctx is linked in fcport->unsol_ctx_head (populated by qla2xxx_process_purls_iocb from unsolicited purex LS traffic). Limiting factors: exploitation depends on FC fabric interaction and an error/reject condition on the LS response path rather than a directly attacker-chosen input, so triggering is not reliable; the host must have this driver and NVMe-oF FC transport in use, which is uncommon outside enterprise SAN environments. Not exploitable against default desktop/server configurations lacking FC HBAs. |
| Impact | The input CVSS 3.1 vector (AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H = 8.8 High) substantially overstates real-world risk. This is a CWE-416 use-after-free / linked-list corruption on an *error path* in the qla2xxx SCSI-to-NVMe (NVMe-over-Fibre-Channel) driver: on the LS-reject error branch, qla_nvme_xmt_ls_rsp() kfree()s the uctx without list_del()-ing it from fcport->unsol_ctx_head, so a later list_add_tail()/list_del() writes through freed memory and can panic or corrupt the list. The realistic technical impact is a kernel crash / memory corruption (denial of service), not confidentiality loss - so C:H/I:H is not supported and the practical outcome is A:H-dominant. There is no EPSS score, no CISA KEV listing, and no public exploit in the provided data (no public exploit identified at time of analysis). The AV:A rating presumably reflects that the unsolicited LS originates from the Fibre Channel fabric, but the bug lives on a reject/error handling path that is not straightforwardly attacker-steerable, so exploitability is closer to AC:H and effectively a reliability defect. Net: this is a legitimate kernel fix but a low-to-medium operational priority, well below what the 8.8 score implies. |
| Exploit ScenarioDerived | On a host running the qla2xxx driver with a QLogic Fibre Channel HBA acting as an NVMe-over-FC initiator/target, an unsolicited Link Service request from the FC fabric is processed and linked into fcport->unsol_ctx_head, but the NVMe transport callback hits the LS-reject error path, which frees the context while it is still on the list. Subsequent list operations for that fcport then dereference or overwrite freed memory, causing list corruption or a kernel panic. No public exploit code exists; realistic triggering depends on fabric/transport error conditions rather than a reliable attacker-controlled primitive. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 25, 2026
Use-after-free and linked-list corruption in the Linux kernel's qla2xxx QLogic Fibre Channel driver can occur when the NVMe-over-Fibre-Channel transport takes the LS-response reject error path in qla_nvme_xmt_ls_rsp(): the uctx structure is freed with kfree() while still linked in fcport->unsol_ctx_head, so a later list_add_tail() writes through the freed node and a subsequent list_del() can corrupt the list or panic the kernel. Affected configurations are hosts running the qla2xxx driver against a QLogic FC HBA with the NVMe-oF FC transport active, primarily enterprise SAN deployments; per the independent assessment this is a local/adjacent, high-complexity issue (AV:L/AC:H/PR:L) whose triggering depends on an error/reject condition on the LS response path rather than directly attacker-chosen input, a notable reduction from the 8.8 input score. There is no public exploit code identified at time of analysis and the flaw is not confirmed actively exploited (no CISA KEV listing); vendor patches are available in the stable trees.
RemediationAI
Vendor-released patch: upstream fixes are the commits e46160a5d4fa59bf4d5f3412b6b5cb79edb967dd, c55d649a6cc246c3ccd5d118faea230c46b60f35, and a95fc5f1c12bba1dbff72bd2611e7fad0758831b, delivered in stable releases 6.18.53, 7.2.7, and 7.3-rc1, plus a backport for the 6.6 series; upgrade the kernel to one of these or later and reboot so the qla2xxx module is reloaded. Because affected systems are limited to hosts with a QLogic FC HBA on the NVMe-oF FC path, the most practical compensating control is to avoid or disable that path until patched: unload or blacklist the qla2xxx driver, or disable NVMe-over-Fibre-Channel (nvme-fc) on systems that do not need it, accepting the loss of SAN/NVMe-oF storage connectivity; alternatively restrict FC fabric access to trusted initiators/targets and avoid unsolicited LS traffic from untrusted fabric peers, though this is only a partial mitigation because the crash depends on the driver's own reject error path and cannot be reliably gated at the fabric level. Kernel livepatching of the affected qla_nvme_xmt_ls_rsp() free path is possible on supported distributions but must be validated against the FC/NVMe-oF workload, since the fix adds a mandatory list_del() before kfree().
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The flaw lives in the qla2xxx SCSI/FC low-level driver's NVMe-over-Fibre-Channel glue (qla_nvme.c, qla_nvme_xmt_ls_rsp()). When unsolicited purex link-service (LS) traffic is received, qla2xxx_process_purls_iocb() allocates a uctx and links it into fcport->unsol_ctx_head. The NVMe transport later calls back into qla_nvme_xmt_ls_rsp() to transmit the LS response; on the error (out:) path that function kfree()s the uctx without a matching list_del(), leaving a dangling node in the per-fcport list. The next list_add_tail() for that fcport then writes through the freed node, and a later list_del() can corrupt the list head or crash the kernel. The intended pattern is already used in qla_nvme_release_lsrsp_cmd_kref() and qla2xxx_process_purls_pkt(); the commit notes that qla2x00_rel_sp() on the failure path only returns the SRB to its pool and does not invoke sp->put_fn, so the out: path is the only free site and uctx is always still linked there. Although the upstream advisory carries no CWE and the reported tags mention information disclosure, the root-cause class is a use-after-free / improper list-element lifetime management (CWE-416, with CWE-617 reachable-abort characteristics), where integrity and availability of the kernel (and potentially disclosure of freed-memory contents) are the realistic consequences rather than deterministic remote code execution.
Know when the next one hits your stack
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Error-path list-corruption on a hardware/fabric-gated driver, not reliably attacker-steerable, so AC:H and AV:L/PR:L; crash-dominant DoS gives A:H with C:N and only incidental I:L.
AV:A/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:H
Primary rating from Vendor (Linux).
CVSS VectorVendor: Linux
Lifecycle Timeline
3DescriptionCVE.org
In the Linux kernel, the following vulnerability has been resolved:
scsi: qla2xxx: Unlink NVMe unsol ctx before freeing on LS reject error
qla_nvme_xmt_ls_rsp() obtains uctx, which was linked into fcport->unsol_ctx_head by qla2xxx_process_purls_iocb() and is still linked when the NVMe transport calls back to transmit the LS response. On the error (out:) path the function frees uctx with kfree() but never removes it from the list. This leaves a freed node in fcport->unsol_ctx_head: the next list_add_tail() for that fcport writes through the freed node, and a subsequent list_del() can corrupt the list or panic.
Unlink uctx with list_del() before kfree() on the error path, matching the other free sites in qla_nvme_release_lsrsp_cmd_kref() and qla2xxx_process_purls_pkt(). qla2x00_rel_sp() in the failure path only returns the SRB to its pool and does not invoke sp->put_fn, so the out: path is the sole free and uctx is always still linked there.
Executive ViewAI
CVE-2026-97528 is a high-severity use-after-free flaw in the Linux kernel's qla2xxx driver affecting QLogic Fibre Channel HBAs when the NVMe-over-Fibre-Channel transport is active, primarily impacting enterprise SAN deployments. Exploitation requires local access and a specific error condition on the LS-response path, limiting risk to authorized users on affected hosts, but a successful trigger can cause kernel list corruption or panic, potentially disrupting storage availability. Leadership should prioritize identifying affected systems and preparing for vendor remediation, as no public exploit code or active exploitation has been identified at this time.
No vendor-released patch identified at time of analysis. Interim mitigations: restrict unprivileged local access, disable NVMe-oF FC transport on affected hosts if not operationally required, monitor kernel logs for list corruption or oops, and consider isolating affected HBAs from untrusted local users.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
Same technique Information Disclosure
View allVendor StatusVendor
SUSE
Severity: Moderate| Product | Status |
|---|---|
| SUSE Linux Enterprise Desktop 15 SP7 | Not-Affected |
| SUSE Linux Enterprise Desktop 15 SP7 | Not-Affected |
| SUSE Linux Enterprise High Availability Extension 15 SP7 | Not-Affected |
| SUSE Linux Enterprise High Availability Extension 15 SP7 | Not-Affected |
| SUSE Linux Enterprise High Availability Extension 16.0 | Affected |
| SUSE Linux Enterprise High Availability Extension 16.0 | Affected |
| SUSE Linux Enterprise High Availability Extension 16.1 | Affected |
| SUSE Linux Enterprise High Availability Extension 16.1 | Affected |
| SUSE Linux Enterprise Micro 5.3 | Not-Affected |
| SUSE Linux Enterprise Micro 5.3 | Not-Affected |
| SUSE Linux Enterprise Micro 5.3 | Not-Affected |
| SUSE Linux Enterprise Micro 5.3 | Not-Affected |
| SUSE Linux Enterprise Micro 5.4 | Not-Affected |
| SUSE Linux Enterprise Micro 5.4 | Not-Affected |
| SUSE Linux Enterprise Micro 5.4 | Not-Affected |
| SUSE Linux Enterprise Micro 5.4 | Not-Affected |
| SUSE Linux Enterprise Micro 5.5 | Not-Affected |
| SUSE Linux Enterprise Micro 5.5 | Not-Affected |
| SUSE Linux Enterprise Micro 5.5 | Not-Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP7 | Not-Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP7 | Not-Affected |
| SUSE Linux Enterprise Module for Development Tools 15 SP7 | Not-Affected |
| SUSE Linux Enterprise Module for Development Tools 15 SP7 | Not-Affected |
| SUSE Linux Enterprise Real Time 15 SP7 | Not-Affected |
| SUSE Linux Enterprise Server 15 SP7 | Not-Affected |
| SUSE Linux Enterprise Server 15 SP7 | Not-Affected |
| SUSE Linux Enterprise Server 16.0 | Affected |
| SUSE Linux Enterprise Server 16.0 | Affected |
| SUSE Linux Enterprise Server 16.1 | Affected |
| SUSE Linux Enterprise Server 16.1 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP7 | Not-Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP7 | Not-Affected |
| SUSE Linux Enterprise Server for SAP applications 16.0 | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.0 | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.1 | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.1 | Affected |
| SUSE Linux Micro 6.0 | Affected |
| SUSE Linux Micro 6.0 | Affected |
| SUSE Linux Micro 6.0 | Affected |
| SUSE Linux Micro 6.1 | Affected |
| SUSE Linux Micro 6.1 | Affected |
| SUSE Linux Micro 6.1 | Affected |
| SUSE Linux Micro 6.2 | Affected |
| SUSE Linux Micro 6.2 | Affected |
| SUSE Linux Micro Extras 6.0 | Affected |
| SUSE Linux Micro Extras 6.0 | Affected |
| SUSE Linux Micro Extras 6.0 | Affected |
| SUSE Linux Micro Extras 6.1 | Affected |
| SUSE Linux Micro Extras 6.1 | Affected |
| SUSE Real Time Module 15 SP7 | Not-Affected |
| openSUSE Leap 16.0 | Affected |
| SUSE Linux Enterprise High Performance Computing 12 SP5 | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4-LTSS | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4-LTSS | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5 | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5-LTSS | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5-LTSS | Not-Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP4 | Not-Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP5 | Not-Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP6 | Not-Affected |
| SUSE Linux Enterprise Module for Development Tools 15 SP4 | Not-Affected |
| SUSE Linux Enterprise Module for Development Tools 15 SP5 | Not-Affected |
| SUSE Linux Enterprise Module for Development Tools 15 SP6 | Not-Affected |
| SUSE Linux Enterprise Server 11 SP4 LTSS EXTREME CORE | Not-Affected |
| SUSE Linux Enterprise Server 11 SP4 LTSS EXTREME CORE | Not-Affected |
| SUSE Linux Enterprise Server 12 SP5 | Not-Affected |
| SUSE Linux Enterprise Server 12 SP5-LTSS | Not-Affected |
| SUSE Linux Enterprise Server 12 SP5-LTSS | Not-Affected |
| SUSE Linux Enterprise Server 15 SP4 | Not-Affected |
| SUSE Linux Enterprise Server 15 SP4-LTSS | Not-Affected |
| SUSE Linux Enterprise Server 15 SP4-LTSS | Not-Affected |
| SUSE Linux Enterprise Server 15 SP5 | Not-Affected |
| SUSE Linux Enterprise Server 15 SP5-LTSS | Not-Affected |
| SUSE Linux Enterprise Server 15 SP5-LTSS | Not-Affected |
| SUSE Linux Enterprise Server 15 SP6 | Not-Affected |
| SUSE Linux Enterprise Server 15 SP6-LTSS | Not-Affected |
| SUSE Linux Enterprise Server 15 SP6-LTSS | Not-Affected |
| SUSE Linux Enterprise Server LTSS Extended Security 12 SP5 | Not-Affected |
| SUSE Linux Enterprise Server LTSS Extended Security 12 SP5 | Not-Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP4 | Not-Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP4 | Not-Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP5 | Not-Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP5 | Not-Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP6 | Not-Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP6 | Not-Affected |
| SUSE CaaS Platform 4.0 | Not-Affected |
| SUSE Enterprise Storage 6 | Not-Affected |
| SUSE Enterprise Storage 7 | Not-Affected |
| SUSE Enterprise Storage 7.1 | Not-Affected |
| SUSE Linux Enterprise Desktop 11 SP4 | Not-Affected |
| SUSE Linux Enterprise Desktop 15 SP1 | Not-Affected |
| SUSE Linux Enterprise Desktop 15 SP2 | Not-Affected |
| SUSE Linux Enterprise Desktop 15 SP3 | Not-Affected |
| SUSE Linux Enterprise Desktop 15 SP4 | Not-Affected |
| SUSE Linux Enterprise Desktop 15 SP5 | Not-Affected |
| SUSE Linux Enterprise Desktop 15 SP6 | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP1 | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP1-ESPOS | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP1-LTSS | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP2 | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP2-ESPOS | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP2-LTSS | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP3 | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP3-ESPOS | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP3-LTSS | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4 | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4-ESPOS | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5-ESPOS | Not-Affected |
| SUSE Linux Enterprise Micro 5.0 | Not-Affected |
| SUSE Linux Enterprise Micro 5.1 | Not-Affected |
| SUSE Linux Enterprise Micro 5.2 | Not-Affected |
| SUSE Linux Enterprise Micro 5.2 | Not-Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP1 | Not-Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP2 | Not-Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP3 | Not-Affected |
| SUSE Linux Enterprise Module for Development Tools 15 SP1 | Not-Affected |
| SUSE Linux Enterprise Module for Development Tools 15 SP2 | Not-Affected |
| SUSE Linux Enterprise Module for Development Tools 15 SP3 | Not-Affected |
| SUSE Linux Enterprise Real Time 15 SP2 | Not-Affected |
| SUSE Linux Enterprise Real Time 15 SP3 | Not-Affected |
| SUSE Linux Enterprise Real Time 15 SP4 | Not-Affected |
| SUSE Linux Enterprise Real Time 15 SP4 | Not-Affected |
| SUSE Linux Enterprise Real Time 15 SP5 | Not-Affected |
| SUSE Linux Enterprise Server 11 SP4 | Not-Affected |
| SUSE Linux Enterprise Server 11 SP4-LTSS | Not-Affected |
| SUSE Linux Enterprise Server 15 SP1 | Not-Affected |
| SUSE Linux Enterprise Server 15 SP1-BCL | Not-Affected |
| SUSE Linux Enterprise Server 15 SP1-LTSS | Not-Affected |
| SUSE Linux Enterprise Server 15 SP1-LTSS | Not-Affected |
| SUSE Linux Enterprise Server 15 SP2 | Not-Affected |
| SUSE Linux Enterprise Server 15 SP2-BCL | Not-Affected |
| SUSE Linux Enterprise Server 15 SP2-LTSS | Not-Affected |
| SUSE Linux Enterprise Server 15 SP2-LTSS | Not-Affected |
| SUSE Linux Enterprise Server 15 SP3 | Not-Affected |
| SUSE Linux Enterprise Server 15 SP3-BCL | Not-Affected |
| SUSE Linux Enterprise Server 15 SP3-LTSS | Not-Affected |
| SUSE Linux Enterprise Server 15 SP3-LTSS | Not-Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP1 | Not-Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP2 | Not-Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP3 | Not-Affected |
| SUSE Manager Proxy 4.0 | Not-Affected |
| SUSE Manager Proxy 4.1 | Not-Affected |
| SUSE Manager Proxy 4.2 | Not-Affected |
| SUSE Manager Proxy 4.3 | Not-Affected |
| SUSE Manager Proxy LTS 4.3 | Not-Affected |
| SUSE Manager Retail Branch Server 4.0 | Not-Affected |
| SUSE Manager Retail Branch Server 4.1 | Not-Affected |
| SUSE Manager Retail Branch Server 4.2 | Not-Affected |
| SUSE Manager Retail Branch Server 4.3 | Not-Affected |
| SUSE Manager Retail Branch Server LTS 4.3 | Not-Affected |
| SUSE Manager Server 4.0 | Not-Affected |
| SUSE Manager Server 4.1 | Not-Affected |
| SUSE Manager Server 4.2 | Not-Affected |
| SUSE Manager Server 4.3 | Not-Affected |
| SUSE Manager Server LTS 4.3 | Not-Affected |
| SUSE Real Time Module 15 SP4 | Not-Affected |
| SUSE Real Time Module 15 SP5 | Not-Affected |
| openSUSE Leap 15.3 | Not-Affected |
| openSUSE Leap 15.4 | Not-Affected |
| openSUSE Leap 15.4 | Not-Affected |
| openSUSE Leap 15.5 | Not-Affected |
| openSUSE Leap 15.5 | Not-Affected |
| openSUSE Leap 15.6 | Not-Affected |
| SUSE Linux Enterprise Server for NVIDIA 16.1 | Affected |
EUVD-2026-86836
GHSA-cw7x-747c-3cx3
NVD
CVE.org
EPSS
VulDB
Exploit-DB