CVE-2026-98748: Linux kernel · serial: 8250_bcm7271: fix use-after-free in brcmuart_remove()
Affects Linux kernelSource CVE Database V5
Not known to be exploited · fixed in f5ce06e648d775cc1ccf66f4f594bb8b559a7d8e : update Linux kernel when convenient.
Data as of 26 Oct 2026, 14:18 UTC
Rated by Threat Radar · CVSS not yet scored by NVD
- EPSS
- 0.1% chance of exploitation in 30 days – higher than 5% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
- Patch
- Available – fixed in f5ce06e648d775cc1ccf66f4f594bb8b559a7d8e, e32440fa536af96bdbc61d933a7c3a920b965edc, dd81650bec58ac70e5dfde2ec390acc1f0d1ed76 +2
Exploitation evidence
Disclosed: evidence found.
CVE published 18 Oct 2026
Detectable: no evidence on record.
No public nuclei template indexed
Weaponised: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 26 Oct 2026.
What to do
Upgrade to a fixed release listed under Affected software.
Affected software
| Product | Affected | Fixed in |
|---|---|---|
| LinuxLinux | Affected
| Fixed in
|
| LinuxLinux | Affected
| Fixed in
|
| LinuxLinux | Affected
| Fixed in
|
| LinuxLinux | Affected
| Fixed in
|
| LinuxLinux | Affected
| Fixed in
|
| LinuxLinux | Affected
| Fixed in– |
Description
In the Linux kernel, the following vulnerability has been resolved: serial: 8250_bcm7271: fix use-after-free in brcmuart_remove() brcmuart_handle_irq() starts priv->hrt to work around a receive-timeout quirk of the 8250 core when hardware flow control is enabled; the timer callback brcmuart_hrtimer_func() dereferences priv. brcmuart_remove() cancels the hrtimer before it unregisters the port, so a receive-timeout interrupt that arrives in between re-arms the timer. After devm frees priv, the callback runs on freed memory. Unregister the port before cancelling the hrtimer. serial8250_unregister_port() shuts the port down and frees its IRQ, so brcmuart_handle_irq() can no longer restart the timer, and the final hrtimer_cancel() drains any timer that was armed before or during the unregister. This issue was found by an in-house static analysis tool.
References
- git.kernel.org/stable/c/dd81650bec58ac70e5dfde2ec390acc1f0d1ed76 (opens in a new tab)
- git.kernel.org/stable/c/f5ce06e648d775cc1ccf66f4f594bb8b559a7d8e (opens in a new tab)
- git.kernel.org/stable/c/e32440fa536af96bdbc61d933a7c3a920b965edc (opens in a new tab)
- git.kernel.org/stable/c/0794ba5332754866b2f1c0cca668775be3ffcf0a (opens in a new tab)
- git.kernel.org/stable/c/189b9dc8c96ec9486482f27c1372b04a7152175e (opens in a new tab)