CVE-2026-31549Linux内核中的cp2615 I2C驱动程序存在一个空指针解引用漏洞。该驱动程序在初始化过程中,直接使用USB设备的序列号字符串来命名I2C适配器,但代码中未对序列号字符串是否存在进行有效性验证。当系统连接到一个未提供序列号字符串的特制USB设备时,驱动程序会尝试访问空指针,导致内核崩溃或系统拒绝服务。
该漏洞位于Linux内核源码的drivers/i2c/busses/i2c-cp2615.c文件中。在驱动程序的probe函数执行期间,代码调用USB核心层函数(如usb_string)获取设备序列号,并将其作为i2c_adapter的name。由于代码逻辑缺陷,未对获取到的字符串指针进行NULL判断。如果连接的USB设备(可能是恶意构造的)在描述符中未定义序列号,接口将返回NULL指针。随后的字符串操作(如strscpy或直接打印)将触发内核页错误,导致系统发生Kernel Oops或Panic。根据CVSS 3.1评分,该漏洞攻击向量为本地(AV:L),需要低权限(PR:L),主要影响系统可用性(A:H)。