微软利用 AI 发现 GRUB2、U-Boot 和 Barebox 引导程序中的漏洞
HackerNews 编译,转载请注明出处: 微软利用其AI驱动的安全副驾工具,在开源引导程序GRUB2、U-Boot和Barebox中发现了20个此前未知的漏洞。 GRUB2(GRand Unified Bootloader)是大多数Linux发行版的默认引导程序,包括Ubuntu,而U-Boot和Barebox则广泛用于嵌入式和物联网设备。 微软在GRUB2中发现了11个漏洞,包括文件系统解析器中的整数和缓冲区溢出、命令缺陷以及密码比较中的侧信道攻击。 此外,在U-Boot和Barebox中还发现了9个缓冲区溢出漏洞,这些漏洞涉及解析SquashFS、EXT4、CramFS、JFFS2和符号链接,需要物理访问才能利用。 这些新发现的漏洞影响依赖UEFI安全启动的设备,如果条件合适,攻击者可以绕过安全保护来在设备上执行任意代码。 虽然利用这些漏洞可能需要对设备进行本地访问,但此前的引导程序攻击(如BlackLotus)是通过恶意软件感染实现的。 微软解释称:“虽然威胁行为者可能需要物理访问设备才能利用U-Boot或Barebox漏洞,但在GRUB2的情况下,漏洞可能被进一步利用来绕过安全启动并安装隐蔽的引导程序,或者可能绕过其他安全机制,如BitLocker。” “安装此类引导程序的后果是严重的,因为这可以授予威胁行为者对设备的完全控制,允许他们控制启动过程和操作系统,危及网络上的其他设备,并进行其他恶意活动。” “此外,这可能导致在操作系统重新安装或硬盘更换后仍然存在的持久性恶意软件。” 以下是微软在GRUB2中发现的漏洞摘要: CVE-2024-56737 – HFS文件系统挂载中的缓冲区溢出,由于对非空终止字符串的不安全strcpy操作 CVE-2024-56738 – 密码比较函数中的侧信道攻击(grub_crypto_memcmp不是恒定时间) CVE-2025-0677 – UFS符号链接处理中的整数溢出导致缓冲区溢出 CVE-2025-0678 – Squash4文件读取中的整数溢出导致缓冲区溢出 CVE-2025-0684 – ReiserFS符号链接处理中的整数溢出导致缓冲区溢出 CVE-2025-0685 – JFS符号链接处理中的整数溢出导致缓冲区溢出 CVE-2025-0686 – RomFS符号链接处理中的整数溢出导致缓冲区溢出 CVE-2025-0689 – UDF块处理中的越界读取 CVE-2025-0690 – 读取命令(键盘输入处理程序)中的有符号整数溢出和越界写入 CVE-2025-1118 – dump命令允许任意内存读取(应在生产环境中禁用) CVE-2025-1125 – HFS压缩文件打开中的整数溢出导致缓冲区溢出 除CVE-2025-0678被评为“高”(CVSS v3.1评分:7.8)外,所有上述漏洞均被评为中等严重性。 微软表示,安全副驾显著加速了在大型和复杂的代码库(如GRUB2)中的漏洞发现过程,节省了大约一周的时间,这些时间本将用于手动分析。 副驾识别漏洞并建议修复措施(来源:微软) AI工具不仅识别了此前未知的漏洞,还提供了针对性的缓解建议,这可以为开源项目(由志愿者和小型核心团队支持)提供指导,并加速安全补丁的发布。 利用分析中的发现,微软表示安全副驾在使用共享代码的项目中也发现了类似的漏洞,如U-Boot和Barebox。 GRUB2、U-Boot和Barebox在2025年2月发布了针对这些漏洞的安全更新,因此升级到最新版本应能缓解这些漏洞。 消息来源:Bleeping Computer; 本文由 HackerNews.cc 翻译整理,封面来源于网络; 转载请注明“转自 HackerNews.cc”并附上原文