IPBUF安全漏洞报告
English
CVE-2026-43412 CVSS 5.5 中危

CVE-2026-43412 Linux Kernel qdsp6组件移除错误致崩溃

披露日期: 2026-05-08
来源: 416baaa9-dc9f-4396-8d5f-8c081fb06d67

漏洞信息

漏洞编号
CVE-2026-43412
漏洞类型
拒绝服务
CVSS评分
5.5 中危
攻击向量
本地 (AV:L)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
Linux Kernel

相关标签

Linux Kernel拒绝服务ASoC本地漏洞Qualcomm空指针解引用

漏洞概述

Linux内核中的ASoC (ALSA System on Chip) qcom qdsp6驱动存在漏洞。在ADSP停止和启动过程中,由于组件移除顺序不当,导致内核崩溃。具体而言,q6apm-audio的remove回调在移除遍历之前就删除了RTDs,导致q6apm DAI组件仍链接在卡上,从而在重新绑定时引发NULL指针解引用错误。

技术细节

该漏洞源于Linux内核音频子系统驱动中的资源管理逻辑缺陷。当ADSP停止时,`q6apm-audio`组件的`.remove`回调函数被触发,它会卸载拓扑并移除PCM运行时(RTD)。此时,包含`q6apm` DAI组件的RTD被过早删除。然而,这些组件本身尚未执行其移除遍历,导致它们仍然保持着与音频卡的链接。当下次尝试重新绑定或访问这些已失效的组件时,系统试图访问已被释放的内存地址(NULL指针),从而触发内核崩溃(Oops)。修复方案是调整移除顺序,确保依赖组件先移除,父组件最后移除,以维持引用完整性。

攻击链分析

STEP 1
步骤1
攻击者获取目标系统的本地低权限访问权限。
STEP 2
步骤2
攻击者触发ADSP停止和启动操作,可能通过音频服务重启或特定的音频设备交互。
STEP 3
步骤3
内核执行q6apm组件移除逻辑,由于顺序错误,导致组件引用悬空。
STEP 4
步骤4
系统在后续操作中访问空指针,触发内核崩溃,导致拒绝服务。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
/* * PoC Concept for CVE-2026-43412 * Triggering the crash requires causing the ADSP to stop and start, * specifically invoking the audio path teardown and rebind. */ #include <stdio.h> #include <stdlib.h> #include <fcntl.h> #include <unistd.h> int main() { printf("[+] Attempting to trigger ADSP restart logic...\n"); // In a real scenario, this would involve interacting with the ALSA // subsystem or the specific QDSP6 driver ioctls to force a // topology unload and reload sequence. int fd = open("/dev/snd/controlC0", O_RDWR); if (fd < 0) { perror("[-] Failed to open audio device"); return 1; } // Simulate operations that lead to .remove callback ordering issue // (Actual trigger mechanism depends on specific audio usage) printf("[+] Interacting with audio driver to force topology reload...\n"); // Hypothetical ioctl or sequence to stop ADSP audio path // ioctl(fd, STOP_ADSPP, NULL); // Hypothetical ioctl to start ADSP audio path (triggers rebind) // ioctl(fd, START_ADSPP, NULL); close(fd); printf("[+] If vulnerable, kernel NULL pointer dereference should occur now.\n"); return 0; }

影响范围

Linux Kernel (修复补丁提交前的版本)

防御指南

临时缓解措施
限制非特权用户对音频驱动和内核模块的访问权限,避免在未修复的系统上进行频繁的ADSP重启操作。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表