CVE-2026-43413Linux内核中的hisi_sas驱动程序在处理用户发起的扫描操作时存在空指针解引用漏洞。由于该驱动仅支持一个通道,但在user_scan()函数中,代码逻辑会尝试扫描从0到max_channel(值为1)的所有通道。当尝试访问不存在的通道1时,相关数据结构未初始化,导致内核触发NULL指针异常。本地低权限攻击者可利用此漏洞导致系统崩溃,造成拒绝服务。
该漏洞位于drivers/scsi/hisi_sas/hisi_sas_main.c及相关的SAS层逻辑中。当用户通过sysfs触发扫描(如echo命令写入scan文件)时,内核调用user_scan()。该函数首先扫描通道0,随后循环扫描剩余通道(1至shost->max_channel)。hisi_sas硬件仅支持单通道(通道0),但max_channel被设置为1。在扫描通道1时,sas_find_dev_by_rphy函数尝试访问rphy指针,由于通道1不存在,该指针为NULL。代码在未检查指针有效性的情况下解引用它(偏移0x8b0),引发页错误(Page Fault)和内核恐慌(Kernel Panic),导致系统宕机。