CVE-2026-43171Linux内核EFI/CPER模块中的cper_print_fw_err函数存在逻辑缺陷,未严格校验错误记录偏移量的合法性。当偏移量超出记录实际长度时,整数减法操作会发生下溢,导致内核错误地转储大量内存。此行为不仅引发敏感数据泄露,还会导致系统资源耗尽,甚至触发内核崩溃,从而造成严重的本地拒绝服务风险。
该漏洞位于Linux内核的EFI/CPER子系统,具体源于cper_print_fw_err()函数在处理固件错误记录时的逻辑缺陷。函数在计算剩余可打印长度时(执行length -= offset操作),未预先验证偏移量offset是否在记录的合法长度范围内。当遭遇恶意固件或存在严重错误的固件时,传入的偏移量可能大于记录实际长度,导致无符号整数减法发生下溢,从而产生一个极大的长度值。这使得内核误判,进而尝试转储整个内存区域。这不仅会消耗大量CPU时间造成系统性能严重下降或挂起,还可能引发敏感内核数据泄露。更严重的是,如果转储操作涉及未映射的内存区域,将直接触发内核崩溃(OOPS),导致系统拒绝服务。