|

研究人员披露,现代Linux发行版存在严重启动安全漏洞,攻击者只需短暂物理接触,即可通过篡改initramfs(初始内存文件系统)绕过Secure Boot机制,在系统重启后仍可保持持久控制。 该漏洞利用了Linux系统启动失败期间可访问的调试Shell接口,使得攻击者能够注入长期驻留的恶意程序,即便用户随后输入了正确的加密分区密码,攻击仍能持续生效。 核心要点概览:- 攻击者通过利用initramfs中调试Shell,在多次输入错误密码后绕过Secure Boot保护;
- 可将恶意木马植入未签名的initramfs组件中,实现系统重启后的跨会话驻留;
- Ubuntu 25.04、Debian 12、Fedora 42、AlmaLinux 10均受影响,OpenSUSE Tumbleweed默认安全;
- 添加内核参数(如Ubuntu加 panic=0,RedHat系加 rd.shell=0 rd.emergency=halt)可禁用调试Shell并缓解风险。
漏洞细节:Linux initramfs未签名组件被滥用安全研究员 Alexander Moch 表示,该漏洞的核心在于Linux引导流程中的**initramfs未签名性**。作为解密根分区的关键引导组件,initramfs默认并未采用签名保护,这成为整个Secure Boot链条中的**“薄弱环节”**。 在多次输入加密根分区密码错误后,多个主流发行版会自动进入调试Shell模式,为攻击者提供可操作窗口。 攻击过程:植入木马脚本并保持长期控制攻击者可插入U盘,借助调试Shell加载恶意工具链,过程如下: - 使用 unmkinitramfs 解包当前系统的initramfs;
- 在 scripts/local-bottom/ 目录中植入恶意hook脚本;
- 利用 cpio 和 gzip 等工具重新打包initramfs;
- 覆盖原系统的initramfs,攻击完成。
Moch展示的PoC中,恶意hook在系统解密根分区后执行,可将文件系统挂载为可写,并建立持久后门。 由于攻击未涉及签名内核镜像修改,且完全遵循正常引导流程,因此可规避常规安全防护机制,隐蔽性极强。 不同发行版受影响程度不同研究测试显示,不同Linux发行版对该攻击的防御能力不一: - Ubuntu 25.04:仅需三次密码错误,即可触发调试Shell;
- Debian 12:长按回车约一分钟也可进入Shell模式;
- Fedora 42 / AlmaLinux 10:虽然默认initramfs中无usb_storage模块,但攻击者可通过 Ctrl+Alt+Delete 重启后进入救援模式规避;
- OpenSUSE Tumbleweed:采用默认引导分区加密机制,可阻止攻击路径。
该攻击符合所谓“邪恶女仆攻击(Evil Maid)”场景——即攻击者仅需一次短暂的物理接触,即可实现系统持久性控制。 防护建议:添加内核参数,构建完整启动安全链针对该攻击路径,研究人员提出以下防御措施: - 禁用调试Shell访问:Ubuntu系:内核参数中添加 panic=0;RedHat系:添加 rd.shell=0 rd.emergency=halt。
- 强化启动过程控制:启用Bootloader密码保护;对启动分区启用 LUKS加密;开启SSD原生硬件加密。
- 部署高级安全机制:使用 UKI(统一内核映像):将内核与initramfs封装为单一签名二进制文件;启用 TPM(受信平台模块):将initramfs完整性写入PCR(平台配置寄存器),防止篡改。
该漏洞再次提醒我们,完整的引导链条签名保护仍是Linux系统安全的“最后一公里”问题。对使用加密磁盘的Linux系统而言,应将此类“边缘攻击”视为严重威胁,尤其在移动设备、政府机关或涉密终端场景下。
(责任编辑:admin) |