PatchSiren

PatchSiren cyber security CVE debrief

CVE-2026-23253 Linux CVE debrief

A use-after-free vulnerability exists in the Linux kernel's DVB (Digital Video Broadcasting) core subsystem, specifically in the DVR (Digital Video Recorder) device open path. When a new reader opens the DVR device via `dvb_dvr_open()`, the function incorrectly calls `dvb_ringbuffer_init()`, which reinitializes a shared waitqueue list head to empty. This waitqueue is shared across all open instances of the same DVR device. The reinitialization orphans existing waitqueue entries from `io_uring` poll or `epoll`, leaving them with stale `prev`/`next` pointers while the list head is reset to `{self, self}`. This can lead to memory corruption, privilege escalation, or denial of service when the stale waitqueue entries are subsequently accessed. The vulnerability affects Linux kernels from version 2.6.17 through multiple stable branches. The fix replaces the `dvb_ringbuffer_init()` call with direct assignment of buffer data/size and a call to `dvb_ringbuffer_reset()`, which properly resets read/write positions without touching the waitqueue or spinlock.

Vendor
Linux
Product
Unknown
CVSS
HIGH 7.8
CISA KEV
Not listed in stored evidence
Original CVE published
2026-03-18
Original CVE updated
2026-06-01
Advisory published
2026-03-18
Advisory updated
2026-06-01

Who should care

Linux system administrators, kernel maintainers, embedded device manufacturers using DVB subsystems, security teams managing Linux workstations and servers with DVB hardware, and organizations running containerized or multi-tenant environments where untrusted users may have access to DVB device nodes

Technical summary

The vulnerability is a use-after-free condition in `drivers/media/dvb-core/dmxdev.c`. The `dvb_dvr_open()` function calls `dvb_ringbuffer_init()` on each new open of a DVR device. This function calls `init_waitqueue_head()`, which resets the waitqueue list head. Because `dmxdev->dvr_buffer.queue` is shared across all opens of the same DVR device, any existing waitqueue entries (from `io_uring` poll, `epoll`, or blocking reads) become orphaned with dangling pointers. The waitqueue and spinlock were already correctly initialized in `dvb_dmxdev_init()`. The fix replaces `dvb_ringbuffer_init()` with direct buffer pointer assignment and `dvb_ringbuffer_reset()`, which resets `pread`, `pwrite`, and `error` with proper memory ordering without reinitializing the waitqueue or spinlock. Attack vector is local, requiring low privileges and no user interaction. Impact is high for confidentiality, integrity, and availability.

Defensive priority

HIGH

Recommended defensive actions

  • Apply the relevant stable kernel patch for your branch: 5.10.253 or later, 5.15.203 or later, 6.1.167 or later, 6.6.130 or later, 6.12.77 or later, 6.18.17 or later, 6.19.7 or later, or 7.0-rc1 with the fix included
  • Upgrade to a patched Linux kernel version that includes the fix for CVE-2026-23253
  • If immediate patching is not possible, restrict access to DVB DVR device nodes (/dev/dvb/adapter*/dvr*) to trusted users only, as local access is required
  • Monitor systems for unusual crashes or hangs in DVB-related processes, which may indicate exploitation attempts
  • Review custom or out-of-tree DVB drivers for similar patterns of shared waitqueue reinitialization

Evidence notes

The vulnerability was resolved in the Linux kernel media subsystem. The issue was introduced by incorrect reinitialization of a shared ringbuffer waitqueue in `dvb_dvr_open()`. The fix ensures that only buffer data pointers and positions are reset on reopen, preserving the integrity of the shared waitqueue and spinlock that were properly initialized once in `dvb_dmxdev_init()`. Multiple stable kernel branches received patches.

Sources and references

Verified primary and authoritative sources

  • CVE-2026-23253 CVE Program record

    Publisher, destination, and source semantics verified

    URL: https://www.cve.org/CVERecord?id=CVE-2026-23253

    CVE Program - Official CVE Program record with source-provided CVE metadata.

  • CVE-2026-23253 NVD vulnerability detail

    Publisher, destination, and source semantics verified

    URL: https://nvd.nist.gov/vuln/detail/CVE-2026-23253

    NIST National Vulnerability Database - Official NIST NVD detail page and source-specific vulnerability assessment.

Supplemental references

  • Mitigation or vendor reference

    Unverified legacy reference

    URL: https://git.kernel.org/stable/c/32eb8e4adc207ef31bc6e5ae56bab940b0176066

    416baaa9-dc9f-4396-8d5f-8c081fb06d67 - Patch

  • Mitigation or vendor reference

    Unverified legacy reference

    URL: https://git.kernel.org/stable/c/527cfa8a3486b3555c5c15e2f62be484a11398dc

    416baaa9-dc9f-4396-8d5f-8c081fb06d67 - Patch

  • Mitigation or vendor reference

    Unverified legacy reference

    URL: https://git.kernel.org/stable/c/af050ab44fa1b1897a940d7d756e512232f5e5df

    416baaa9-dc9f-4396-8d5f-8c081fb06d67 - Patch

  • Mitigation or vendor reference

    Unverified legacy reference

    URL: https://git.kernel.org/stable/c/bfbc0b5b32a8f28ce284add619bf226716a59bc0

    416baaa9-dc9f-4396-8d5f-8c081fb06d67 - Patch

  • Mitigation or vendor reference

    Unverified legacy reference

    URL: https://git.kernel.org/stable/c/cfd94642025e6f71c8f754bdec0800ee95e4f3dd

    416baaa9-dc9f-4396-8d5f-8c081fb06d67 - Patch

  • Mitigation or vendor reference

    Unverified legacy reference

    URL: https://git.kernel.org/stable/c/d71781bad59b1c9d60d7068004581f9bf19c0c9d

    416baaa9-dc9f-4396-8d5f-8c081fb06d67 - Patch

  • Mitigation or vendor reference

    Unverified legacy reference

    URL: https://git.kernel.org/stable/c/f1e520ca2e83ece6731af6167c9e5e16931ecba0

    416baaa9-dc9f-4396-8d5f-8c081fb06d67 - Patch

Methodology and review provenance

AI-assisted synthesis based on stored public vulnerability evidence. System validation, approval state, and publication status do not by themselves establish human review of this revision. PatchSiren helps prioritize defensive review and does not prove exposure or remediation on any system.