CVE-2026-31552: wifi: wlcore: Return -ENOMEM instead of -EAGAIN if there is not enough headroom
Noroxi assessment
Priority: Monitor (action score 30/100)
- The sources we track (CISA KEV, Exploit-DB, Metasploit, Nuclei, GitHub) show no public exploit code or exploitation in the wild.
- Probability of exploitation in the next 30 days: 0.50% (FIRST EPSS).
- Anyone who can reach it over the internet can trigger it. No account or password is required. No user action is required. No special conditions are required; it is repeatable.
- Fixed version: Linux Linux 12f9eef39e49716c763714bfda835a733d5f6dea, 46c670ff1ff466e5eccb3940f726586473dc053c, 5.10.253; cbl2 kernel 5.15.202.1-1 on CBL-Mariner 2.0 Release Notes.
Low priority for now. Upgrade to Linux Linux 12f9eef39e49716c763714bfda835a733d5f6dea, 46c670ff1ff466e5eccb3940f726586473dc053c, 5.10.253; cbl2 kernel 5.15.202.1-1 on CBL-Mariner 2.0 Release Notes or later.
Generated automatically from the record's data: CVSS (NVD and CNA), CISA KEV and SSVC, FIRST EPSS, exploit sources, fixed versions. How we calculate it
Primary sources: NVD · CVE.org · FIRST EPSS
In the Linux kernel, the following vulnerability has been resolved: wifi: wlcore: Return -ENOMEM instead of -EAGAIN if there is not enough headroom Since upstream commit e75665dd0968 ("wifi: wlcore: ensure skb headroom before skb_push"), wl1271_tx_allocate() and with it wl1271_prepare_tx_frame() returns -EAGAIN if pskb_expand_head() fails. However, in wlcore_tx_work_locked(), a return value of -EAGAIN from wl1271_prepare_tx_frame() is interpreted as the aggregation buffer being full. This causes the code to flush the buffer, put the skb back at the head of the queue, and immediately retry the same skb in a tight while loop. Because wlcore_tx_work_locked() holds wl->mutex, and the retry happens immediately with GFP_ATOMIC, this will result in an infinite loop and a CPU soft lockup. Return -ENOMEM instead so the packet is dropped and the loop terminates. The problem was found by an experimental code review agent based on gemini-3.1-pro while reviewing backports into v6.18.y.
- Published
- Apr 24, 2026
- Updated
- Nov 11, 2026
- EPSS
- 0.5% · 43th percentile
- CWE
- CWE-835
Report tools
Action score
30
Low priority for now.
- CVSS
- 30 / 40 · 7.5 / 10
- CISA KEV
- 0 / 30 · Not listed
- EPSS
- 0 / 30 · 0.5%
CNA vs NVD score
- NVD
- —
- CNA · Linux
- 7.5
- NVD has not scored this yet; the score shown is the CNA’s.
The score given by the assigning authority versus NVD’s independent score. A gap means the severity is contested.
Get told when this record changes
- Not in KEV: no record of exploitation in the wild
- No public exploit code on record
- A fix has been released
If any of these changes, we'll tell you in the daily email digest.
Is your version affected? Check itNoroxi analysis
What does it mean in your environment?
The assessment above is generated automatically from the record's data; it doesn't know your environment. Our team verifies on your systems whether this vulnerability is actually exploitable and which mitigation is enough.
We use this product, ask for helpAffected systems
Is your version affected?
Pick the product and type the version you run. It's compared with this record's version ranges in your browser; the version isn't sent anywhere.
| Vendor | Product | CPE |
|---|---|---|
| linux | linux kernel | cpe:2.3:o:linux:linux_kernel |
Versions reported by the vendor
Affected version ranges reported by the assigning authority (Linux). Independent of NVD's CPE analysis and usually ahead of it.
Linux Linux
- 6.19affected
- 88295a55fefe5414e64293638b6f7549646e58ed and later · before 980f793645540ca7a6318165cc12f49d5febeb99affected · git
- cd89a4656c03f8db0c57350aaec69cd3cfaa3522 and later · before 12f9eef39e49716c763714bfda835a733d5f6deaaffected · git
- 745a0810dbc96a0471e5f5e627ba1e978c3116d4 and later · before ceb46b40b021d21911ff8608ce4ed33c1264ad2faffected · git
- b167312390fdd461c81ead516f2b0b44e83a9edb and later · before a6dc74209462c4fe5a88718d2f3a5286886081c8affected · git
- 71de0b6e04bbee5575caf9a1e4d424e7dcc50018 and later · before cfa64e2b3717be1da7c4c1aff7268a009e8c1610affected · git
- 689a7980e4788e13e766763d53569fb78dea2513 and later · before 46c670ff1ff466e5eccb3940f726586473dc053caffected · git
- e75665dd096819b1184087ba5718bd93beafff51 and later · before f2c06d718a7b85cbc59ceaa2ff3f46b178ac709caffected · git
- e75665dd096819b1184087ba5718bd93beafff51 and later · before deb353d9bb009638b7762cae2d0b6e8fdbb41a69affected · git
- 5.10.250 and later · before 5.10.253affected · semver
Affected versions · NVD (9)
NVD version ranges (for catalog products). Add the product to your stack with a version and matching uses these.
- linux linux kernel5.10.250 and later · before 5.10.253
- linux linux kernel5.15.200 and later · before 5.15.203
- linux linux kernel6.1.163 and later · before 6.1.167
- linux linux kernel6.6.124 and later · before 6.6.130
- linux linux kernel6.12.70 and later · before 6.12.78
- linux linux kernel6.18.10 and later · before 6.18.20
- linux linux kernel6.19.1 and later · before 6.19.10
- linux linux kernel6.19
- linux linux kernel7.0
Package-level exposure
OSV and GitHub Advisory data: ecosystem, package and range. SBOM matching uses this table.
| Ecosystem | Package | Affected range | Fix |
|---|---|---|---|
| Debian:12 | linux | before 6.1.170-1 | 6.1.170-1 |
| Debian:13 | linux | before 6.12.85-1 | 6.12.85-1 |
| Debian:14 | linux | before 6.19.10-1 | 6.19.10-1 |
Same product
linux: all recordsOther highest-scoring records for the same primary product.
- CVE-2026-31431crypto: algif_aead - Revert to operating out-of-placeKEV90Now
- CVE-2022-0847A flaw was found in the way the "flags" member of the new pipe buffer structure was lacking proper initialization in copy_page_to_iter_pipe…KEV89Now
- CVE-2021-22555Heap Out-Of-Bounds Write in Netfilter IP6T_SO_SET_REPLACEKEV85Now
Published before and after this one in the same product
- ← EarlierCVE-2026-31550Apr 24, 2026 · pmdomain: bcm: bcm2835-power: Increase ASB control timeout22Monitor
- ← EarlierCVE-2026-31551Apr 24, 2026 · wifi: mac80211: Fix static_branch_dec() underflow for aql_disable.22Monitor
- Later →CVE-2026-31553Apr 24, 2026 · KVM: arm64: Fix the descriptor address in __kvm_at_swap_desc()35Monitor
Remediation
Which version to upgrade to
Fix versions compiled from the vendor, package registries and Microsoft. Verify the vendor's note before upgrading.
| Product / package | Fixed version | Source |
|---|---|---|
| Linux Linux | 12f9eef39e49716c763714bfda835a733d5f6dea | Vendor (CNA) |
| Linux Linux | 46c670ff1ff466e5eccb3940f726586473dc053c | Vendor (CNA) |
| Linux Linux | 5.10.253 | Vendor (CNA) |
| Linux Linux | 5.15.203 | Vendor (CNA) |
| Linux Linux | 6.1.167 | Vendor (CNA) |
| Linux Linux | 6.12.78 | Vendor (CNA) |
| Linux Linux | 6.18.20 | Vendor (CNA) |
| Linux Linux | 6.6.130 | Vendor (CNA) |
| Linux Linux | 980f793645540ca7a6318165cc12f49d5febeb99 | Vendor (CNA) |
| Linux Linux | a6dc74209462c4fe5a88718d2f3a5286886081c8 | Vendor (CNA) |
| Linux Linux | ceb46b40b021d21911ff8608ce4ed33c1264ad2f | Vendor (CNA) |
| Linux Linux | cfa64e2b3717be1da7c4c1aff7268a009e8c1610 | Vendor (CNA) |
| Linux Linux | deb353d9bb009638b7762cae2d0b6e8fdbb41a69 | Vendor (CNA) |
| Linux Linux | f2c06d718a7b85cbc59ceaa2ff3f46b178ac709c | Vendor (CNA) |
| cbl2 kernel 5.15.202.1-1 on CBL-Mariner 2.0 | Release Notes | Microsoft (MSRC) |
| debian:linux | 6.1.170-1 · Debian:12 | Package registry (OSV) |
Exploit status
No known public exploit
No public exploit has been observed yet. That doesn't mean you're safe, only that the bar is a little higher.
Research context
For pentesters and researchers: attack profile, score disagreement, timeline, patch commits, credits, variant and chain candidates, bug bounty scope. All derived from existing data; no exploit code.
Timeline
From publication to today: proof of concept, Metasploit module, CISA KEV and fix record. Dates are as reported by the sources.
No dated events beyond publication.
Variant candidates
Same product, same weakness class, within 18 months. If the patch missed the root cause, the sibling bug is here.
- CVE-2026-314482 days apartext4: avoid infinite loops caused by residual data37Monitor
- CVE-2026-6388986 days apartscsi: scsi_transport_fc: Widen FPIN pname walker counter to u3232Monitor
- CVE-2026-5293361 days apartio_uring/poll: fix signed comparison in io_poll_get_ownership()31Monitor
- CVE-2026-2345121 days apartbonding: prevent potential infinite loop in bond_header_parse()30Monitor
- CVE-2026-4605233 days apartceph: only d_add() negative dentries when they are unhashed30Monitor
- CVE-2026-6414886 days apartpds_core: fix error handling in pdsc_devcmd_wait30Monitor
Not on record for this CVE: EPSS history · patch commit or PR link · researcher credit · public bounty program.
Technical details
Attack conditions
- Anyone who can reach it over the internet can trigger it.
- No account or password is required.
- No user action is required.
- No special conditions are required; it is repeatable.
If successful
- Confidentiality
- none
- Integrity
- none
- Availability
- high · the service can be disrupted
- Attack vector
- Network
- Attack complexity
- Low
- Privileges required
- None
- User interaction
- None
- Scope
- Unchanged
- Confidentiality impact
- None
- Integrity impact
- None
- Availability impact
- High
Weakness class (CWE)
CWE-835 · Loop with Unreachable Exit Condition ('Infinite Loop')CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
nvd-secondary
Attack context
MITRE CAPEC attack patterns and ATT&CK techniques for this weakness class (CWE). A starting point for detection rules and threat hunting.
MITRE has no CAPEC/ATT&CK mapping for this CWE.
Change log (1)
- Fix✗ → ✓
For records you follow, these changes also arrive as notifications. →
References
Show all references (7 more)Show less
- git.kernel.org/stable/c/46c670ff1ff466e5eccb3940f726586473dc053c
- git.kernel.org/stable/c/980f793645540ca7a6318165cc12f49d5febeb99
- git.kernel.org/stable/c/a6dc74209462c4fe5a88718d2f3a5286886081c8
- git.kernel.org/stable/c/ceb46b40b021d21911ff8608ce4ed33c1264ad2f
- git.kernel.org/stable/c/cfa64e2b3717be1da7c4c1aff7268a009e8c1610
- git.kernel.org/stable/c/deb353d9bb009638b7762cae2d0b6e8fdbb41a69
- git.kernel.org/stable/c/f2c06d718a7b85cbc59ceaa2ff3f46b178ac709c
Vendor advisories and official records. Exploit/PoC links are deliberately left out.