事件背景:嵌入式系统的“心脏”失守
近期,安全研究团队 Binarly 在广泛应用于路由器、智能摄像头、服务器管理控制器(BMC)及各类嵌入式硬件的开源引导加载程序 U-Boot 中,发现了六个严重漏洞。从我们的应急响应经验来看,U-Boot 作为设备启动时运行的首批组件之一,其安全性直接决定了后续操作系统及所有应用层的信任根基。
此次发现的漏洞影响了自 v2013.07 版本以来的 U-Boot 代码,涉及超过 50 个稳定版本。由于 U-Boot 在操作系统加载之前运行,一旦被恶意代码植入,检测与清除将变得极其困难,甚至需要物理重刷存储芯片才能修复,这对企业级设备和基础设施而言是巨大的威胁。
攻击链分析:从 FIT 校验机制切入
这些漏洞的核心均集中在 U-Boot 对 FIT(Flattened Image Tree)镜像的验证过程中。FIT 格式用于打包内核、设备树和固件,并包含加密签名。攻击者如果能够构造恶意的 FIT 镜像,便可以触发验证逻辑中的缺陷。
从我们的安全监测视角来看,这一环节是很多企业容易忽视的重点。由于验证逻辑处于启动链的最前端,传统的安全防护软件根本无法介入。Binarly 的研究表明,攻击者并不总是需要物理接触设备,通过远程管理接口(如 BMC)诱导设备进行固件更新,同样可以完成恶意镜像的投递。
技术手法解析
本次披露的六个漏洞(BRLY-2026-037 至 BRLY-2026-042)展现了多种内存破坏手段:
- 空指针解引用与缓冲区溢出:部分漏洞源于对
fdt_get_name返回值的处理不当。在特定格式的镜像下,未经过滤的 NULL 指针直接参与内存操作,可能导致崩溃(拒绝服务)或在嵌入式设备零页映射环境下引发栈缓冲区溢出,从而实现代码执行。 - 栈缓冲区下溢:通过控制
len参数为负值,攻击者可以令指针反向移动,进而覆盖函数返回地址,实现精确定点攻击。 - 资源耗尽与逻辑错误:部分漏洞通过构造超大尺寸参数或极深嵌套的树结构,强制引导程序读取越界内存或耗尽栈空间,直接导致系统瘫痪。
Solar 团队经验与安全建议
类似针对底层引导程序和固件的攻击近年来明显增加。对于企业用户,我们提出以下建议:
首先,必须建立完善的固件更新管理机制。虽然 U-Boot 的补丁已在主分支发布,但最终用户依赖于设备厂商的固件更新推送。建议重点排查服务器 BMC 控制器及网络边缘设备,及时关注厂商公告。
其次,针对供应链安全,企业在采购嵌入式设备时,应要求供应商提供基于已知漏洞(如本次披露的六个漏洞)的合规性证明,并优先选择支持安全启动(Secure Boot)且具备固件签名校验功能的设备。
最后,如果您的业务环境中部署了大量此类设备,建议加强对 BMC 等远程管理接口的网络隔离,避免攻击者通过这些接口远程下发恶意固件。
如果您想了解勒索病毒的最新发展趋势,或在实际业务中遇到类似安全事件,欢迎关注“Solar应急响应团队”。
全国热线:400-613-6816 官网:www.solarsecurity.cn / www.sierting.com