CVE-2026-72486
CVE.org · Published
- Record status
- Published
- Identifier year (not publication year)
- 2026
- Source publication
- Source updated
- Imported by cveboard
- Source snapshot
- cve_2026-10-24_midnight_baseline ·
CNA source text (English)
mailbox: mtk-adsp: fix UAF during device teardown
In the Linux kernel, the following vulnerability has been resolved: mailbox: mtk-adsp: fix UAF during device teardown When the SOF audio driver fails to initialize (e.g. firmware boot timeout), its devres unwind frees the snd_sof_dev object that the mailbox client (mtk-adsp-ipc) reaches via chan->cl->rx_callback. The mtk-adsp-mailbox shutdown clears the mailbox command registers but leaves the IRQ line unmasked, so a late interrupt can still queue a threaded handler after mbox_free_channel() had cleared chan->cl, and mbox_chan_received_data() would then trigger UAF: BUG: KASAN: slab-use-after-free in sof_ipc3_validate_fw_version sof_ipc3_validate_fw_version sof_ipc3_do_rx_work sof_ipc3_rx_msg mt8196_dsp_handle_request mtk_adsp_ipc_recv mbox_chan_received_data mtk_adsp_mbox_isr irq_thread_fn Freed by task ...: kfree devres_release_all really_probe ... (sof-audio-of-mt8196 probe failure) The crash was observed roughly three seconds after the failed probe. disable_irq() in shutdown and enable_irq() in startup. disable_irq() also waits for any in-flight interrupts, so by the time mbox_free_channel() proceeds to clear chan->cl no rx_callback can run. In addition, request the IRQ with IRQF_NO_AUTOEN so it stays masked between probe and the first client bind — otherwise an early interrupt can crash on chan->cl == NULL in mbox_chan_received_data().
Scoped product and version facts
Fix information unknown; no fixed version is derived here. Missing information does not prove that no fix exists.
Exploitation unknown; this catalogue does not assess exploitation.
Linux
- Vendor
- Linux
- Product
- Linux
- Platforms
- Unknown
- Default status
unaffected
| Version (version) | Status (status) | Version scheme (versionType) | Exclusive end (lessThan) | Inclusive end (lessThanOrEqual) | Status changes (at → status) |
|---|---|---|---|---|---|
| af2dfa96c52d042df5deb29fb6e32d3ff4d76a61 | affected | git | b6337a08a63eef8efcffe3c01d479badda6bbbdb | Unavailable | None listed |
| af2dfa96c52d042df5deb29fb6e32d3ff4d76a61 | affected | git | e519c1d8c5efb5cd8d4c5bb3fe39b1bbb812bdb9 | Unavailable | None listed |
| af2dfa96c52d042df5deb29fb6e32d3ff4d76a61 | affected | git | fc6c3deb1d4c0adebf7dee0b8af4082af3f17690 | Unavailable | None listed |
| af2dfa96c52d042df5deb29fb6e32d3ff4d76a61 | affected | git | 7d881615fb6373f71fc628b3f00186aeca87a3d5 | Unavailable | None listed |
| af2dfa96c52d042df5deb29fb6e32d3ff4d76a61 | affected | git | 25d6ea6c76e1b1b7c57337b2f8f1b6fc8d5c52bc | Unavailable | None listed |
| af2dfa96c52d042df5deb29fb6e32d3ff4d76a61 | affected | git | b57d1a40bc43258372fa1f4d39305e093947a262 | Unavailable | None listed |
Linux
- Vendor
- Linux
- Product
- Linux
- Platforms
- Unknown
- Default status
affected
| Version (version) | Status (status) | Version scheme (versionType) | Exclusive end (lessThan) | Inclusive end (lessThanOrEqual) | Status changes (at → status) |
|---|---|---|---|---|---|
| 5.18 | affected | Unavailable | Unavailable | Unavailable | None listed |
| 0 | unaffected | semver | 5.18 | Unavailable | None listed |
| 6.1.178 | unaffected | semver | Unavailable | 6.1.* | None listed |
| 6.6.145 | unaffected | semver | Unavailable | 6.6.* | None listed |
| 6.12.97 | unaffected | semver | Unavailable | 6.12.* | None listed |
| 6.18.40 | unaffected | semver | Unavailable | 6.18.* | None listed |
| 7.1.5 | unaffected | semver | Unavailable | 7.1.* | None listed |
| 7.2 | unaffected | original_commit_for_fix | Unavailable | * | None listed |