CVE-2024-57834 in Linux
Summary
by MITRE • 02/27/2025
In the Linux kernel, the following vulnerability has been resolved:
media: vidtv: Fix a null-ptr-deref in vidtv_mux_stop_thread
syzbot report a null-ptr-deref in vidtv_mux_stop_thread. [1]
If dvb->mux is not initialized successfully by vidtv_mux_init() in the vidtv_start_streaming(), it will trigger null pointer dereference about mux in vidtv_mux_stop_thread().
Adjust the timing of streaming initialization and check it before stopping it.
[1]
KASAN: null-ptr-deref in range [0x0000000000000128-0x000000000000012f]
CPU: 0 UID: 0 PID: 5842 Comm: syz-executor248 Not tainted 6.13.0-rc4-syzkaller-00012-g9b2ffa6148b1 #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/13/2024 RIP: 0010:vidtv_mux_stop_thread+0x26/0x80 drivers/media/test-drivers/vidtv/vidtv_mux.c:471 Code: 90 90 90 90 66 0f 1f 00 55 53 48 89 fb e8 82 2e c8 f9 48 8d bb 28 01 00 00 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 b6 04 02 84 c0 74 02 7e 3b 0f b6 ab 28 01 00 00 31 ff 89 ee e8 RSP: 0018:ffffc90003f2faa8 EFLAGS: 00010202 RAX: dffffc0000000000 RBX: 0000000000000000 RCX: ffffffff87cfb125 RDX: 0000000000000025 RSI: ffffffff87d120ce RDI: 0000000000000128 RBP: ffff888029b8d220 R08: 0000000000000005 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000003 R12: ffff888029b8d188 R13: ffffffff8f590aa0 R14: ffffc9000581c5c8 R15: ffff888029a17710 FS: 00007f7eef5156c0(0000) GS:ffff8880b8600000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007f7eef5e635c CR3: 0000000076ca6000 CR4: 00000000003526f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: vidtv_stop_streaming drivers/media/test-drivers/vidtv/vidtv_bridge.c:209 [inline]
vidtv_stop_feed+0x151/0x250 drivers/media/test-drivers/vidtv/vidtv_bridge.c:252 dmx_section_feed_stop_filtering+0x90/0x160 drivers/media/dvb-core/dvb_demux.c:1000 dvb_dmxdev_feed_stop.isra.0+0x1ee/0x270 drivers/media/dvb-core/dmxdev.c:486 dvb_dmxdev_filter_stop+0x22a/0x3a0 drivers/media/dvb-core/dmxdev.c:559 dvb_dmxdev_filter_free drivers/media/dvb-core/dmxdev.c:840 [inline]
dvb_demux_release+0x92/0x550 drivers/media/dvb-core/dmxdev.c:1246 __fput+0x3f8/0xb60 fs/file_table.c:450 task_work_run+0x14e/0x250 kernel/task_work.c:239 get_signal+0x1d3/0x2610 kernel/signal.c:2790 arch_do_signal_or_restart+0x90/0x7e0 arch/x86/kernel/signal.c:337 exit_to_user_mode_loop kernel/entry/common.c:111 [inline]
exit_to_user_mode_prepare include/linux/entry-common.h:329 [inline]
__syscall_exit_to_user_mode_work kernel/entry/common.c:207 [inline]
syscall_exit_to_user_mode+0x150/0x2a0 kernel/entry/common.c:218 do_syscall_64+0xda/0x250 arch/x86/entry/common.c:89 entry_SYSCALL_64_after_hwframe+0x77/0x7f
Be aware that VulDB is the high quality source for vulnerability data.
Analysis
by VulDB Data Team • 05/24/2026
The vulnerability described in CVE-2024-57834 affects the Linux kernel's video test driver component known as vidtv, specifically within the mux subsystem. This issue manifests as a null pointer dereference occurring in the vidtv_mux_stop_thread function, which is triggered when the mux structure fails to initialize properly during streaming setup. The problem arises from a timing issue in the initialization sequence where the system attempts to stop a streaming thread without first verifying whether the necessary initialization has been completed successfully. This flaw was identified through automated fuzzing by syzbot, which reported a kernel address sanitizer (KASAN) error indicating a null pointer dereference at a specific memory location within the vidtv_mux.c source file.
The technical root cause of this vulnerability lies in the improper handling of resource allocation and cleanup within the video test driver's streaming infrastructure. When vidtv_mux_init() fails to properly initialize the dvb->mux structure during vidtv_start_streaming(), subsequent calls to vidtv_mux_stop_thread() attempt to access this uninitialized pointer, leading to a kernel panic or system crash. This type of error falls under the Common Weakness Enumeration category CWE-476, which specifically addresses null pointer dereference conditions. The vulnerability demonstrates a classic race condition or improper state management issue where the system does not adequately validate the success of initialization routines before proceeding to cleanup operations, violating fundamental principles of defensive programming and resource management.
The operational impact of this vulnerability is significant within environments that utilize the Linux kernel's video test drivers, particularly in testing and development scenarios where the vidtv subsystem is actively employed. Systems running affected kernel versions may experience unexpected crashes or system instability when video streaming operations are terminated, potentially leading to service disruption or data loss. The vulnerability affects the kernel's ability to gracefully handle cleanup operations, which can be exploited in denial-of-service attacks targeting systems that rely on video streaming capabilities or in scenarios where automated testing frameworks utilize these test drivers. From an attacker perspective, this represents a potential path to system instability that could be leveraged in broader exploitation campaigns, particularly in virtualized environments where such kernel-level flaws can have cascading effects.
Mitigation strategies for this vulnerability focus on correcting the initialization and cleanup sequence within the vidtv subsystem. The fix involves adjusting the timing of streaming initialization to ensure proper validation before attempting cleanup operations, and implementing proper checks to verify that the mux structure has been successfully initialized before invoking vidtv_mux_stop_thread. This approach aligns with the ATT&CK framework's concept of privilege escalation through kernel exploitation, as it addresses a fundamental flaw in kernel memory management that could be exploited to gain unauthorized access or cause system instability. Users should upgrade to kernel versions containing the patched code that properly validates initialization states before proceeding with cleanup operations, while system administrators should monitor for potential exploitation attempts targeting this specific kernel vulnerability through intrusion detection systems and kernel log analysis tools.