220 lines
11 KiB
JSON
220 lines
11 KiB
JSON
{
|
|
"dataType": "CVE_RECORD",
|
|
"dataVersion": "5.2",
|
|
"cveMetadata": {
|
|
"cveId": "CVE-2025-39918",
|
|
"assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
|
|
"state": "PUBLISHED",
|
|
"assignerShortName": "Linux",
|
|
"dateReserved": "2025-04-16T07:20:57.147Z",
|
|
"datePublished": "2025-10-01T07:55:13.851Z",
|
|
"dateUpdated": "2026-08-05T12:06:03.017Z"
|
|
},
|
|
"containers": {
|
|
"cna": {
|
|
"providerMetadata": {
|
|
"orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
|
|
"shortName": "Linux",
|
|
"dateUpdated": "2026-08-05T12:06:03.017Z"
|
|
},
|
|
"descriptions": [
|
|
{
|
|
"lang": "en",
|
|
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nwifi: mt76: fix linked list corruption\n\nNever leave scheduled wcid entries on the temporary on-stack list"
|
|
}
|
|
],
|
|
"metrics": [
|
|
{
|
|
"cvssV3_1": {
|
|
"version": "3.1",
|
|
"vectorString": "CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
|
|
"baseScore": 8.8,
|
|
"baseSeverity": "HIGH"
|
|
},
|
|
"scenarios": [
|
|
{
|
|
"lang": "en",
|
|
"value": "AV:A - The vulnerable code is the mt76 802.11 TX scheduler, driven entirely by wireless traffic; an attacker within radio range saturates the hardware TX ring (flooding probe/auth requests an AP must answer, or bulk traffic) and controls station add/remove via association and injected deauth frames. This is same-WLAN-segment reachability, matching the standard Adjacent classification for WiFi driver bugs.\nAC:L - Both required conditions are directly attacker-controlled — TX-ring saturation is produced by the attacker's own traffic flood (or by forcing a scan/channel change that sets MT76_RESET), and multiple queued wcids are the normal state of a multi-station AP. Slab grooming for the follow-on UAF write is likewise driven by attacker-timed association/disassociation, so no condition lies outside the attacker's influence.\nPR:N - No credentials on the target kernel are needed: unassociated frame injection (probe/auth request floods eliciting responses, deauth frames forcing station teardown) drives both the TX-ring saturation and the mt76_wcid_cleanup() path that dereferences the corrupted list, and an attacker on an open or guest WLAN holds no privilege on the AP either.\nUI:N - The corruption occurs inside the driver's tx worker and station-removal paths in response to attacker-generated frames alone. No action by any local user or administrator is required.\nS:U - The corrupted list heads and the resulting writes are all within the kernel's own memory and security authority. No VM, IOMMU, or sandbox boundary is crossed.\nC:H - The dangling list nodes are traversed and dereferenced through stale on-stack pointers and through freed, reallocated mt76 station slab objects, and the resulting `list_del` write primitive can be leveraged to disclose kernel memory. Per the use-after-free / memory-corruption guidance this rates High.\nI:H - `list_del_init()` on an orphaned entry performs `next->prev = prev` / `prev->next = next`, writing kernel pointers into a stack frame already reused by another task and, after the neighbouring wcid is freed, into an attacker-groomable reallocated slab object — a controllable kernel write primitive suitable for control-flow hijacking.\nA:H - The bug permanently wedges TX for every orphaned station (their frames are never re-scheduled), and the cross-linked stale and live lists produce cycles that spin `while (!list_empty(&tx_list))` forever under local_bh_disable() with phy->tx_lock held, hanging the system; with CONFIG_DEBUG_LIST it is an immediate list-corruption BUG/oops."
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"affected": [
|
|
{
|
|
"product": "Linux",
|
|
"vendor": "Linux",
|
|
"defaultStatus": "unaffected",
|
|
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
|
|
"programFiles": [
|
|
"drivers/net/wireless/mediatek/mt76/tx.c"
|
|
],
|
|
"versions": [
|
|
{
|
|
"version": "0b3be9d1d34e21dada69c539fbf51a5fe868028a",
|
|
"lessThan": "e4d5a5fc61fdc65220a1ce078d24c1d20bbb0835",
|
|
"status": "affected",
|
|
"versionType": "git"
|
|
},
|
|
{
|
|
"version": "0b3be9d1d34e21dada69c539fbf51a5fe868028a",
|
|
"lessThan": "c91a59b04f928cb4a1436b0e0a27650883d0388a",
|
|
"status": "affected",
|
|
"versionType": "git"
|
|
},
|
|
{
|
|
"version": "0b3be9d1d34e21dada69c539fbf51a5fe868028a",
|
|
"lessThan": "49fba87205bec14a0f6bd997635bf3968408161e",
|
|
"status": "affected",
|
|
"versionType": "git"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"product": "Linux",
|
|
"vendor": "Linux",
|
|
"defaultStatus": "affected",
|
|
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
|
|
"programFiles": [
|
|
"drivers/net/wireless/mediatek/mt76/tx.c"
|
|
],
|
|
"versions": [
|
|
{
|
|
"version": "6.12",
|
|
"status": "affected"
|
|
},
|
|
{
|
|
"version": "0",
|
|
"lessThan": "6.12",
|
|
"status": "unaffected",
|
|
"versionType": "semver"
|
|
},
|
|
{
|
|
"version": "6.12.46",
|
|
"lessThanOrEqual": "6.12.*",
|
|
"status": "unaffected",
|
|
"versionType": "semver"
|
|
},
|
|
{
|
|
"version": "6.16.6",
|
|
"lessThanOrEqual": "6.16.*",
|
|
"status": "unaffected",
|
|
"versionType": "semver"
|
|
},
|
|
{
|
|
"version": "6.17",
|
|
"lessThanOrEqual": "*",
|
|
"status": "unaffected",
|
|
"versionType": "original_commit_for_fix"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"cpeApplicability": [
|
|
{
|
|
"nodes": [
|
|
{
|
|
"operator": "OR",
|
|
"negate": false,
|
|
"cpeMatch": [
|
|
{
|
|
"vulnerable": true,
|
|
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
|
|
"versionStartIncluding": "6.12",
|
|
"versionEndExcluding": "6.12.46"
|
|
},
|
|
{
|
|
"vulnerable": true,
|
|
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
|
|
"versionStartIncluding": "6.12",
|
|
"versionEndExcluding": "6.16.6"
|
|
},
|
|
{
|
|
"vulnerable": true,
|
|
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
|
|
"versionStartIncluding": "6.12",
|
|
"versionEndExcluding": "6.17"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"references": [
|
|
{
|
|
"url": "https://git.kernel.org/stable/c/e4d5a5fc61fdc65220a1ce078d24c1d20bbb0835"
|
|
},
|
|
{
|
|
"url": "https://git.kernel.org/stable/c/c91a59b04f928cb4a1436b0e0a27650883d0388a"
|
|
},
|
|
{
|
|
"url": "https://git.kernel.org/stable/c/49fba87205bec14a0f6bd997635bf3968408161e"
|
|
}
|
|
],
|
|
"title": "wifi: mt76: fix linked list corruption",
|
|
"x_generator": {
|
|
"engine": "bippy-1.2.0"
|
|
}
|
|
},
|
|
"adp": [
|
|
{
|
|
"metrics": [
|
|
{
|
|
"cvssV3_1": {
|
|
"scope": "UNCHANGED",
|
|
"version": "3.1",
|
|
"baseScore": 5.5,
|
|
"attackVector": "LOCAL",
|
|
"baseSeverity": "MEDIUM",
|
|
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H",
|
|
"integrityImpact": "NONE",
|
|
"userInteraction": "NONE",
|
|
"attackComplexity": "LOW",
|
|
"availabilityImpact": "HIGH",
|
|
"privilegesRequired": "LOW",
|
|
"confidentialityImpact": "NONE"
|
|
}
|
|
},
|
|
{
|
|
"other": {
|
|
"type": "ssvc",
|
|
"content": {
|
|
"id": "CVE-2025-39918",
|
|
"role": "CISA Coordinator",
|
|
"options": [
|
|
{
|
|
"Exploitation": "none"
|
|
},
|
|
{
|
|
"Automatable": "no"
|
|
},
|
|
{
|
|
"Technical Impact": "partial"
|
|
}
|
|
],
|
|
"version": "2.0.3",
|
|
"timestamp": "2026-01-14T17:43:08.095838Z"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"problemTypes": [
|
|
{
|
|
"descriptions": [
|
|
{
|
|
"lang": "en",
|
|
"type": "CWE",
|
|
"description": "CWE-noinfo Not enough information"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"title": "CISA ADP Vulnrichment",
|
|
"providerMetadata": {
|
|
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
|
|
"shortName": "CISA-ADP",
|
|
"dateUpdated": "2026-01-14T17:52:47.870Z"
|
|
}
|
|
}
|
|
]
|
|
}
|
|
} |