天下漏洞,尽知其名
HIGH

CVE-2026-74220 U-Boot nfs_read_reply 缓冲区溢出漏洞

影响恶意 NFS 服务器可触发内存破坏,导致引导加载程序崩溃或内存被篡改

AI 研判

U-Boot 的 net/nfs-common.c 中 nfs_read_reply() 函数在处理 NFS READ 应答长度时存在缓冲区溢出。攻击者可通过构造恶意的 NFS READ 应答长度,利用有符号整数处理绕过长度校验,向目标缓冲区之外写入数据。该漏洞影响 U-Boot 2026.10-rc5 之前的版本,CVSS 评分为 8.2(HIGH)。

影响范围

U-Boot

漏洞详情

漏洞类型为缓冲区溢出(整数符号处理不当导致长度校验被绕过)。nfs_read_reply() 在解析 NFS 服务器返回的 READ 应答时,未正确校验长度字段,攻击者提供特制长度值即可使写入长度超出目标缓冲区边界。由于 U-Boot 常通过 NFS 从网络加载内核或镜像,处于同一网络中的恶意或受控 NFS 服务器即可触发该问题,造成引导加载程序崩溃或内存破坏。

利用条件与风险

利用前提是目标设备使用 U-Boot 并通过 NFS 进行网络引导,且攻击者能够控制或冒充其 NFS 服务器(如处于同一网段或可进行中间人攻击)。实战中可导致设备启动失败或内存被破坏,具体是否可进一步实现代码执行取决于运行环境,暂无公开信息。

修复建议

建议升级至 U-Boot 2026.10-rc5 或更高版本以获取官方修复。临时缓解措施包括避免在不可信网络中使用 NFS 引导、对 NFS 服务器进行网络隔离与访问控制,具体补丁细节以官方公告为准。

原始情报

U-Boot before 2026.10-rc5 contains a buffer overflow in nfs_read_reply() function in net/nfs-common.c that allows attackers to corrupt memory by supplying crafted NFS READ reply lengths. A malicious NFS server can exploit signed integer handling to bypass length validation and write far past the destination buffer, crashing the bootloader or corrupting memory.