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

CVE-2026-43369 Linux内核空指针解引用漏洞

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

漏洞信息

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

相关标签

Linux Kernel空指针解引用DoS本地提权drm/amd

漏洞概述

Linux内核drm/amd驱动存在空指针解引用漏洞。当GPU初始化失败时,设备清理过程未检查IP块版本指针是否为NULL,导致内核崩溃。

技术细节

该漏洞位于Linux内核的drm/amd驱动模块。当GPU初始化因不支持的硬件块失败时,IP块结构体中的version指针可能为NULL。在设备清理阶段,amdgpu_device_fini_hw函数调用amdgpu_device_set_pg_state和amdgpu_device_set_cg_state,遍历所有IP块并直接访问adev->ip_blocks[i].version,由于缺少NULL指针检查,导致内核空指针解引用。攻击者需具备本地低权限,通过触发初始化失败场景即可利用此漏洞造成系统拒绝服务。

攻击链分析

STEP 1
步骤1
攻击者利用本地低权限账户,尝试加载或触发drm/amd驱动程序。
STEP 2
步骤2
通过特定的硬件操作或配置,导致GPU初始化流程失败(例如使用不支持的HW block)。
STEP 3
步骤3
系统检测到初始化失败,开始执行设备清理流程(amdgpu_device_fini_hw)。
STEP 4
步骤4
清理代码遍历IP块并直接访问为NULL的版本指针,触发内核空指针解引用。
STEP 5
步骤5
内核发生崩溃(Kernel Panic),导致系统拒绝服务。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
/* * Conceptual PoC for CVE-2026-43369 * This C code simulates the vulnerable logic in the Linux Kernel. */ struct ip_block { void *version; // Can be NULL if init fails }; struct amdgpu_device { struct ip_block *ip_blocks; int num_ip_blocks; }; void vulnerable_cleanup(struct amdgpu_device *adev) { for (int i = 0; i < adev->num_ip_blocks; i++) { // VULNERABILITY: Direct access without NULL check printf("Checking version: %p\n", adev->ip_blocks[i].version); // If version is NULL, accessing its members causes a crash/OOPS // int status = adev->ip_blocks[i].version->status; } } /* * Trigger: * 1. Attacker causes GPU init failure (e.g., specific hardware interaction). * 2. Kernel calls cleanup path. * 3. vulnerable_cleanup is executed with a NULL version pointer. * 4. Kernel Panic occurs. */

影响范围

Linux Kernel (具体受影响版本请参考Git提交记录)

防御指南

临时缓解措施
建议系统管理员尽快更新Linux内核至修复版本。在无法立即更新的情况下,应限制对GPU设备的非授权访问,并监控内核日志以检测异常崩溃。

参考链接

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