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

CVE-2026-43094: Linux内核ixgbevf驱动空指针引用漏洞

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

漏洞信息

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

相关标签

Linux KernelDoSNULL Pointer DereferenceixgbevfHyper-V本地漏洞

漏洞概述

Linux内核中的ixgbevf驱动程序存在一个空指针解引用漏洞。该漏洞源于在修复邮箱API兼容性时,虽然向ixgbevf_mac_ops添加了.negotiate_features回调函数,但未将其添加到Hyper-V特定的操作表ixgbevf_hv_mac_ops中。当ixgbevf驱动在Hyper-V虚拟机上初始化时,ixgbevf_negotiate_api函数会无条件调用hw->mac.ops.negotiate_features(),由于该指针为NULL,导致内核崩溃。该漏洞可能导致系统拒绝服务,影响系统可用性。

技术细节

该漏洞位于Linux内核的ixgbevf(Intel 82599虚拟函数驱动)模块中。问题出在针对Hyper-V环境的特定代码路径。开发者之前提交了补丁a7075f501bd3,引入了.negotiate_features回调以协商API功能,并更新了标准的mac操作表,但遗漏了Hyper-V专用的操作表(ixgbevf_hv_mac_ops)。在驱动加载期间,ixgbevf_probe函数会调用ixgbevf_sw_init,进而调用ixgbevf_negotiate_api。此函数内部无条件调用ixgbevf_set_features,后者尝试访问hw->mac.ops.negotiate_features函数指针。在Hyper-V虚拟环境中,由于该指针未被初始化(为NULL),CPU在尝试执行该地址指令时触发页面错误,导致内核NULL指针解引用。这会引发Kernel Panic,导致系统崩溃或重启。

攻击链分析

STEP 1
步骤1
攻击者获得Hyper-V虚拟机的本地低权限访问权限。
STEP 2
步骤2
系统启动或用户尝试加载ixgbevf驱动模块。
STEP 3
步骤3
驱动执行初始化流程,调用ixgbevf_probe。
STEP 4
步骤4
代码执行到ixgbevf_negotiate_api,尝试调用未初始化的函数指针。
STEP 5
步骤5
触发内核NULL指针解引用,导致系统崩溃(拒绝服务)。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
/* * Conceptual PoC for CVE-2026-43094 * Trigger: Loading the ixgbevf driver on a Hyper-V VM running a vulnerable kernel. * The crash occurs automatically during driver initialization (probe). */ #include <linux/module.h> #include <linux/kernel.h> // This simulates the missing function pointer in the Hyper-V ops table // In the vulnerable code, hw->mac.ops.negotiate_features is NULL. void simulated_trigger(void) { // The vulnerability is a NULL pointer dereference. // Real exploit: Just load the module 'ixgbevf'. void (*null_func)(void) = NULL; printk(KERN_INFO "Attempting to trigger NULL pointer dereference...\n"); // This line causes the Kernel Panic/Oops in the vulnerable scenario // null_func(); // Note: Actual exploitation requires the hardware environment (Hyper-V) // and the vulnerable kernel version. The crash happens in ixgbevf_negotiate_api. } int init_module(void) { simulated_trigger(); return 0; } void cleanup_module(void) { printk(KERN_INFO "Module unloaded\n"); }

影响范围

Linux Kernel (包含commit a7075f501bd3但未应用修复补丁的版本)

防御指南

临时缓解措施
在未修复的内核上,可以通过限制本地用户权限或禁用ixgbevf驱动模块来降低风险,但这可能会影响网络功能。

参考链接

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