CVE-2026-34961barebox 2026.04.0之前的版本在ext4文件系统解析过程中存在安全漏洞。该漏洞源于fs/ext4/ext4_common.c文件中缺少对eh_entries字段的有效性验证,未能将其与缓冲区容量进行比对。攻击者可以通过USB、SD卡或网络启动提供恶意的ext4文件系统镜像。当设备启动并解析该文件系统时,会触发堆越界读取,导致系统崩溃或潜在的敏感信息泄露。
该漏洞位于barebox的ext4文件系统驱动程序中,具体涉及extent树的解析逻辑。在ext4文件系统中,extent结构用于映射文件数据的物理块位置。解析过程首先读取extent header,其中包含一个eh_entries字段,指示该节点中extent条目的数量。在受影响的版本中,代码直接使用此值作为循环边界或内存读取偏移量,而未检查该值是否超过了预分配的缓冲区大小。
攻击者可以构造一个特制的ext4镜像,将extent header中的eh_entries字段设置为一个异常大的值(例如超过缓冲区大小)。当barebox在启动过程中尝试挂载或读取此恶意文件系统时,解析函数会根据eh_entries的值执行读取操作。由于缺乏边界检查,这将导致堆越界读取。虽然CVSS向量显示机密性影响为无(C:N),但越界读取本质上是读取了未授权的内存区域,可能导致拒绝服务(DoS,CVSS A:H)或信息泄露。攻击向量为本地(AV:L),需要物理接触(插入USB/SD卡)或控制网络启动环境。