CVE-2026-89897 PUBLISHED

media: cec: Serialize exclusive follower delivery

Assigner: Linux
Reserved: 11.09.2026 Published: 16.09.2026 Updated: 16.09.2026

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

media: cec: Serialize exclusive follower delivery

cec_receive_notify() reads the exclusive follower pointer without the adapter lock. Serialize the no-follower check and message delivery against mode changes and release.

Metrics

CVSS Vector: CVSS:3.1/AV:A/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS Score: 7.5

AV:A - cec_receive_notify() runs from cec_received_msg_ts() on HDMI-CEC frames a peer places on the shared CEC line. HDMI-CEC is a multi-drop bus among TVs, AVRs, streaming sticks, and conference or automotive HDMI sources, matching CAN/Bluetooth adjacent-segment scoring rather than Internet-routable Network. AC:H - The use-after-free requires cec_release() to kfree the exclusive-follower cec_fh after the unlocked pointer load in cec_receive_notify(). A CEC peer can flood receive but cannot close that filehandle, so success depends on concurrent local teardown the attacker cannot initiate. PR:N - HDMI-CEC has no authentication. Any device on the same CEC bus can emit frames that the adapter delivers into cec_received_msg_ts() with no Linux account, capability, or user-namespace check on the host. UI:N - Once the adapter is configured and receiving, which is normal for TVs, Android HDMI-CEC, SBCs, and automotive head units that claim a logical address at boot, RX delivery and any concurrent follower close run without a mount, prompt, or other interactive victim step. S:U - The use-after-free is of the kmalloc'd struct cec_fh inside the host kernel CEC core and does not cross a VM, IOMMU, or other separate security-authority boundary. C:H - After cec_release() kfree()s the exclusive follower, cec_queue_msg_fh() still locks and walks lists on the dangling cec_fh. That kernel heap use-after-free enables disclosure of reused object contents. I:H - cec_queue_msg_fh() writes the freed filehandle via mutex operations, list_add_tail of a new cec_msg_entry, and wake_up_interruptible, a heap use-after-free write and control-flow hijack primitive. A:H - Using a freed cec_fh from the receive path causes a kernel oops or panic even when not fully exploited for code execution, taking down the host.

Product Status

Vendor Linux
Product Linux
Versions Default: unaffected
  • affected from 9881fe0ca187c213eb3a6a8e78e45ad4d1cec171 to efc829b4b937f98c4467bffe9243f756b7cfbf7f (excl.)
  • affected from 9881fe0ca187c213eb3a6a8e78e45ad4d1cec171 to cac577854826950dda4d53569728b1da6c1425d5 (excl.)
  • affected from 9881fe0ca187c213eb3a6a8e78e45ad4d1cec171 to 4b532b271c91790b7ab661cd488a7ad36f5c4f6b (excl.)
  • affected from 9881fe0ca187c213eb3a6a8e78e45ad4d1cec171 to 271e57a936dcdbaecb4b1bd005d9a285bbe60ab4 (excl.)
  • affected from 9881fe0ca187c213eb3a6a8e78e45ad4d1cec171 to df941e6851da17fc53c7f6af2bdcc7383d17babc (excl.)
  • affected from 9881fe0ca187c213eb3a6a8e78e45ad4d1cec171 to 5c62095acc2a952099688774513c4a637bcdb2b5 (excl.)
  • affected from 9881fe0ca187c213eb3a6a8e78e45ad4d1cec171 to ae614f48712156fb0f55b207338d48d422c58bc0 (excl.)
  • affected from 9881fe0ca187c213eb3a6a8e78e45ad4d1cec171 to 1924d0788caa6c66fd320dd4704fae99487fd2c7 (excl.)
Vendor Linux
Product Linux
Versions Default: affected
  • Version 4.8 is affected
  • unaffected from 0 to 4.8 (excl.)
  • unaffected from 5.10.270 to 5.10.* (incl.)
  • unaffected from 5.15.221 to 5.15.* (incl.)
  • unaffected from 6.1.188 to 6.1.* (incl.)
  • unaffected from 6.6.157 to 6.6.* (incl.)
  • unaffected from 6.12.110 to 6.12.* (incl.)
  • unaffected from 6.18.51 to 6.18.* (incl.)
  • unaffected from 7.2.5 to 7.2.* (incl.)
  • unaffected from 7.3-rc1 to * (incl.)

References