IPBUF安全漏洞报告
English
CVE-2026-43345 CVSS 7.5 高危

CVE-2026-43345 Linux内核IPA驱动拒绝服务漏洞

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

漏洞信息

漏洞编号
CVE-2026-43345
漏洞类型
拒绝服务
CVSS评分
7.5 高危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
Linux Kernel

相关标签

Linux Kernel拒绝服务DoSIPA DriverKernel Panic

漏洞概述

Linux内核IPA驱动存在漏洞,因IPA v5.0+版本中事件环索引寄存器定义使用了错误标识符,导致索引未被正确编程。这使得GSI通道无法发出传输完成信号,导致`gsi_channel_trans_quiesce()`永久阻塞。该问题会导致运行时挂起、系统挂起等操作无限期卡死,IPA数据路径完全不可用,形成拒绝服务风险。

技术细节

该漏洞位于Linux内核的`net: ipa`驱动模块。在IPA v5.0及之后版本中,硬件寄存器布局发生变化,事件环索引字段从`CH_C_CNTXT_0`移动到了`CH_C_CNTXT_1`。然而,内核代码中的v5.0寄存器定义在`CH_C_CNTXT_1`的`fmask`数组中错误地沿用了旧标识符`ERINDEX`,而非正确的`CH_ERINDEX`。因此,驱动程序未能将事件环索引写入正确的硬件地址。当系统尝试进入运行时挂起、系统挂起或停止远程处理器时,GSI通道需要完成数据传输。由于事件环索引未配置,硬件无法产生完成中断,导致`gsi_channel_trans_quiesce()`在`wait_for_completion()`调用中无限等待,最终导致系统死锁和数据路径中断。

攻击链分析

STEP 1
步骤1
攻击者向目标设备发送网络数据包,触发IPA(IP加速器)数据处理路径。
STEP 2
步骤2
系统或管理员尝试执行系统挂起、运行时挂起或停止远程处理器的操作。
STEP 3
步骤3
内核调用`gsi_channel_trans_quiesce()`等待GSI通道传输完成。
STEP 4
步骤4
由于IPA v5.0+寄存器定义错误,事件环索引未设置,硬件无法发送完成信号。
STEP 5
步骤5
内核在`wait_for_completion()`中无限阻塞,导致系统挂起失败并死机,造成拒绝服务。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
/* * PoC for CVE-2026-43345: IPA v5.0+ Event Ring Index DoS * This script attempts to trigger the hang by forcing a suspend state * while the IPA interface is active on a vulnerable kernel. * Note: This requires a vulnerable kernel version and specific hardware. */ #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <sys/reboot.h> int main() { printf("[+] Attempting to trigger IPA hang on vulnerable kernel...\n"); // In a real scenario, network traffic would be generated to load the IPA. // Then a system suspend is triggered. printf("[*] Simulating trigger condition for system suspend...\n"); // On a vulnerable device, the following command would cause the system // to hang indefinitely instead of suspending. system("echo mem > /sys/power/state"); // If the code reaches here, the system is not vulnerable or patched. printf("[-] System did not hang. Vulnerability might be patched.\n"); return 0; }

影响范围

Linux Kernel (IPA v5.0及以后版本)
Linux Kernel (特定稳定分支,修复前)

防御指南

临时缓解措施
建议立即更新操作系统内核以修复此漏洞。如果无法立即更新,应避免在受影响设备上执行系统挂起或远程处理器停止操作,以防止系统死锁。

参考链接