CVE-2026-74741 (GCVE-0-2026-74741)
Vulnerability from cvelistv5
Published
2026-08-26 14:36
Modified
2026-08-27 05:01
Severity ?
VLAI Severity ?
EPSS score ?
Summary
In the Linux kernel, the following vulnerability has been resolved:
net: ngbe: fix NULL pointer dereference in non-MSI-X interrupt enabling
In non-MSI-X mode (such as legacy INTx or single MSI), wx->msix_entry is
not allocated or initialized. Calling NGBE_INTR_MISC(wx) dereferences
wx->msix_entry->entry, leading to a NULL pointer dereference crash.
This issue was introduced by fixing the IRQ vector when the number of
VFs is 7. Fix the issue by explicitly checking `pdev->msix_enabled` to
determine the correct vector index.
Additionally, as a side fix, set the interrupt mask to BIT(0) for the
non-MSI-X fallback. In MSI/INTx mode, the MISC and queue interrupts
share vector 0, and the WX_PX_MISC_IVAR register is only valid in the
MSI-X case. Thus, BIT(0) is the correct mask for the miscellaneous cause
when MSI-X is disabled.
References
Impacted products
{
"containers": {
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"product": "Linux",
"programFiles": [
"drivers/net/ethernet/wangxun/ngbe/ngbe_main.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"lessThan": "cef4c5b9aca24651d069adf9462b221df6a2a669",
"status": "affected",
"version": "4174c0c331a2aa3322d3b3be532808deb041b37d",
"versionType": "git"
},
{
"lessThan": "0ab482b2195edc000262f0eae1cdcb416b8f335d",
"status": "affected",
"version": "4174c0c331a2aa3322d3b3be532808deb041b37d",
"versionType": "git"
},
{
"lessThan": "5f3a13e0bb5ebcc1ca2dfda42ea40b9f3c2be6ea",
"status": "affected",
"version": "4174c0c331a2aa3322d3b3be532808deb041b37d",
"versionType": "git"
}
]
},
{
"defaultStatus": "affected",
"product": "Linux",
"programFiles": [
"drivers/net/ethernet/wangxun/ngbe/ngbe_main.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"status": "affected",
"version": "6.16"
},
{
"lessThan": "6.16",
"status": "unaffected",
"version": "0",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.18.*",
"status": "unaffected",
"version": "6.18.46",
"versionType": "semver"
},
{
"lessThanOrEqual": "7.1.*",
"status": "unaffected",
"version": "7.1.10",
"versionType": "semver"
},
{
"lessThanOrEqual": "*",
"status": "unaffected",
"version": "7.2",
"versionType": "original_commit_for_fix"
}
]
}
],
"cpeApplicability": [
{
"nodes": [
{
"cpeMatch": [
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.18.46",
"versionStartIncluding": "6.16",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "7.1.10",
"versionStartIncluding": "6.16",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "7.2",
"versionStartIncluding": "6.16",
"vulnerable": true
}
],
"negate": false,
"operator": "OR"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nnet: ngbe: fix NULL pointer dereference in non-MSI-X interrupt enabling\n\nIn non-MSI-X mode (such as legacy INTx or single MSI), wx-\u003emsix_entry is\nnot allocated or initialized. Calling NGBE_INTR_MISC(wx) dereferences\nwx-\u003emsix_entry-\u003eentry, leading to a NULL pointer dereference crash.\n\nThis issue was introduced by fixing the IRQ vector when the number of\nVFs is 7. Fix the issue by explicitly checking `pdev-\u003emsix_enabled` to\ndetermine the correct vector index.\n\nAdditionally, as a side fix, set the interrupt mask to BIT(0) for the\nnon-MSI-X fallback. In MSI/INTx mode, the MISC and queue interrupts\nshare vector 0, and the WX_PX_MISC_IVAR register is only valid in the\nMSI-X case. Thus, BIT(0) is the correct mask for the miscellaneous cause\nwhen MSI-X is disabled."
}
],
"metrics": [
{
"cvssV3_1": {
"baseScore": 7.5,
"baseSeverity": "HIGH",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
"version": "3.1"
},
"scenarios": [
{
"lang": "en",
"value": "AV:N - The NULL dereference is in ngbe_intr(), the MSI/INTx hard-IRQ handler reached when the Wangxun ngbe NIC raises an interrupt from wire activity (RX/TX completion, link, or misc events); a remote peer sending traffic to an up interface drives this path with no local access.\nAC:L - After the 4174c0c regression every non-MSI-X interrupt that reaches ngbe_irq_enable(wx,false) deterministically dereferences NULL msix_entry; MSI/INTx fallback is automatic on MSI-X allocation failure, VMs, and pci=nomsi, and each packet reliably retriggers the fault.\nPR:N - No credentials or capabilities are needed on the target once the netdev is up; received frames are handled in hardirq before any socket, netfilter, or authentication gate, so any host that can send packets to the interface can trigger the crash.\nUI:N - Interrupt delivery and the faulty re-enable run automatically in hardirq context on normal NIC operation; no administrator or end-user action beyond the interface already being configured up at boot is required.\nS:U - The oops is confined to kernel hardirq context within the same security authority; it is not a VM escape, hypervisor bypass, IOMMU violation, or sandbox boundary crossing.\nC:N - The fault is a NULL read of wx-\u003emsix_entry-\u003eentry while computing an interrupt mask; execution aborts immediately with no out-of-bounds read, use-after-free, or data returned to the attacker.\nI:N - This is a pure NULL pointer read, not memory corruption; no attacker-controlled write, heap spray, or control-flow hijack primitive exists before the kernel faults.\nA:H - The NULL dereference occurs in hardirq context and causes a kernel oops or panic, fully denying availability; on internet-facing servers with ngbe in MSI/INTx mode an unauthenticated remote attacker can repeat the crash on every interrupt."
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-08-27T05:01:01.751Z",
"orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"shortName": "Linux"
},
"references": [
{
"url": "https://git.kernel.org/stable/c/cef4c5b9aca24651d069adf9462b221df6a2a669"
},
{
"url": "https://git.kernel.org/stable/c/0ab482b2195edc000262f0eae1cdcb416b8f335d"
},
{
"url": "https://git.kernel.org/stable/c/5f3a13e0bb5ebcc1ca2dfda42ea40b9f3c2be6ea"
}
],
"title": "net: ngbe: fix NULL pointer dereference in non-MSI-X interrupt enabling",
"x_generator": {
"engine": "bippy-1.2.0"
}
}
},
"cveMetadata": {
"assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"assignerShortName": "Linux",
"cveId": "CVE-2026-74741",
"datePublished": "2026-08-26T14:36:52.937Z",
"dateReserved": "2026-08-15T05:44:03.930Z",
"dateUpdated": "2026-08-27T05:01:01.751Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
Loading…
Loading…
Sightings
| Author | Source | Type | Date |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
- Confirmed: The vulnerability is confirmed from an analyst perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
- Patched: This vulnerability was successfully patched by the user reporting the sighting.
- Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
- Not confirmed: The user expresses doubt about the veracity of the vulnerability.
- Not patched: This vulnerability was not successfully patched by the user reporting the sighting.
Loading…
Loading…