Логотип exploitDog
Консоль
Логотип exploitDog

exploitDog

redhat логотип

CVE-2026-98708

Опубликовано: 18 окт. 2026
Источник: redhat
CVSS3: 4.7

Описание

In the Linux kernel, the following vulnerability has been resolved: wifi: mac80211: keep paired old chanctx alive An in-place replacement keeps reciprocal replace_ctx pointers between the old WILL_BE_REPLACED chanctx and the new REPLACES_OTHER chanctx. However, the early free paths only consider assigned and reserved link users when deciding whether to free the old chanctx. That lets the old chanctx be freed too early while the replacement partner still points back to it, either when the last assigned link is released or when that link successfully reassigns to another existing context. Later unreserve and switch-finalization paths can then follow a stale replace_ctx pointer. Keep a paired old chanctx alive until the replacement pair has been torn down. Apply the same check to both __ieee80211_link_release_channel() and ieee80211_link_use_reserved_reassign(). If the replacement is later abandoned, ieee80211_link_unreserve_chanctx() already tears down the pairing before freeing the old chanctx once no users remain.

A flaw was found in the Linux kernel's mac80211 wireless subsystem. A local user could exploit this flaw to cause a Denial of Service (DoS) or system instability. During in-place channel context replacement, an old channel context can be freed prematurely while still referenced by its replacement context. Subsequent link operations access the stale pointer, triggering a use-after-free condition that leads to a kernel crash.

Отчет

A lifetime management flaw in mac80211 can free an old WILL_BE_REPLACED channel context while its REPLACES_OTHER partner still retains a reciprocal replace_ctx pointer. A later unreserve or switch finalization path can follow this stale pointer and cause a use after free, with a possible repeated free of the old channel context depending on the later cleanup path. Impact is at least a local denial of service through kernel memory corruption and a kernel crash. In the worst still defensible case the stale kernel object may permit confidentiality and integrity impact or local privilege escalation, although a controllable write primitive is not proven by the supplied code. For the CVSS the PR:L reflects a local user or service with delegated wireless configuration capability rather than an unauthenticated remote attacker. AC:H reflects the required multi-vif in-place replacement and teardown sequence. The issue is not directly network reachable based on the supplied paths, and wireless traffic alone is not sufficient evidence of remote triggering.

Меры по смягчению последствий

Mitigation for this issue is either not available or the currently available options don't meet the Red Hat Product Security criteria comprising ease of use and deployment, applicability to widespread installation base or stability.

Затронутые пакеты

ПлатформаПакетСостояниеРекомендацияРелиз
Red Hat Enterprise Linux 10kernelFix deferred

Показывать по

Дополнительная информация

Статус:

Moderate
Дефект:
CWE-416
https://bugzilla.redhat.com/show_bug.cgi?id=2555067kernel: kernel: mac80211: Denial of Service via use-after-free in channel context replacement

4.7 Medium

CVSS3

Связанные уязвимости

ubuntu
23 дня назад

In the Linux kernel, the following vulnerability has been resolved: wifi: mac80211: keep paired old chanctx alive An in-place replacement keeps reciprocal replace_ctx pointers between the old WILL_BE_REPLACED chanctx and the new REPLACES_OTHER chanctx. However, the early free paths only consider assigned and reserved link users when deciding whether to free the old chanctx. That lets the old chanctx be freed too early while the replacement partner still points back to it, either when the last assigned link is released or when that link successfully reassigns to another existing context. Later unreserve and switch-finalization paths can then follow a stale replace_ctx pointer. Keep a paired old chanctx alive until the replacement pair has been torn down. Apply the same check to both __ieee80211_link_release_channel() and ieee80211_link_use_reserved_reassign(). If the replacement is later abandoned, ieee80211_link_unreserve_chanctx() already tears down the pairing before freeing the o...

nvd
23 дня назад

In the Linux kernel, the following vulnerability has been resolved: wifi: mac80211: keep paired old chanctx alive An in-place replacement keeps reciprocal replace_ctx pointers between the old WILL_BE_REPLACED chanctx and the new REPLACES_OTHER chanctx. However, the early free paths only consider assigned and reserved link users when deciding whether to free the old chanctx. That lets the old chanctx be freed too early while the replacement partner still points back to it, either when the last assigned link is released or when that link successfully reassigns to another existing context. Later unreserve and switch-finalization paths can then follow a stale replace_ctx pointer. Keep a paired old chanctx alive until the replacement pair has been torn down. Apply the same check to both __ieee80211_link_release_channel() and ieee80211_link_use_reserved_reassign(). If the replacement is later abandoned, ieee80211_link_unreserve_chanctx() already tears down the pairing before freeing the

CVSS3: 5.2
msrc
22 дня назад

wifi: mac80211: keep paired old chanctx alive

debian
23 дня назад

In the Linux kernel, the following vulnerability has been resolved: w ...

github
23 дня назад

In the Linux kernel, the following vulnerability has been resolved: wifi: mac80211: keep paired old chanctx alive An in-place replacement keeps reciprocal replace_ctx pointers between the old WILL_BE_REPLACED chanctx and the new REPLACES_OTHER chanctx. However, the early free paths only consider assigned and reserved link users when deciding whether to free the old chanctx. That lets the old chanctx be freed too early while the replacement partner still points back to it, either when the last assigned link is released or when that link successfully reassigns to another existing context. Later unreserve and switch-finalization paths can then follow a stale replace_ctx pointer. Keep a paired old chanctx alive until the replacement pair has been torn down. Apply the same check to both __ieee80211_link_release_channel() and ieee80211_link_use_reserved_reassign(). If the replacement is later abandoned, ieee80211_link_unreserve_chanctx() already tears down the pairing before freeing t...

4.7 Medium

CVSS3

Уязвимость CVE-2026-98708 в Red Hat CVE — exploitDog