数百万台嵌入式设备捆绑的文件系统中存在未修复的漏洞 | Fatfs

🐟 2026-07-04 16:49 1




[!quote]+


安全公司 runZero 披露了 FatFs 中的七个漏洞,FatFs 是一个小型文件系统库,允许设备读取和写入 USB 驱动器和 SD 卡上使用的 FAT 和 exFAT 格式。


在受影响最严重的系统中,攻击者如果将装有恶意代码的 USB 驱动器、SD 卡或更新文件植入设备,就可以破坏设备的内存并运行自己的代码。


许多嵌入式设备缺乏手机和台式机上的内存保护机制,因此 runZero 指出“任何物理接触都会导致越狱”。公共信息亭、带 SD 卡槽的摄像头、ATM 机或带 USB 接口的投票机,在被短暂物理接触后,本不应该轻易交出完全控制权,但 runZero 却做到了。


这七个漏洞的基本原理相同。设备尝试读取故意损坏的存储卷或固件映像,而 FatFs 无法正确处理这些错误数据。runZero 将这组漏洞的 CVSS 评级为中等到高,没有严重漏洞。


此次漏洞的主要特征是 CVE-2026-6682 (CVSS 7.6),即挂载 FAT32 卷的代码中存在整数溢出漏洞。错误的计算会导致错误的文件大小,而后续代码会将其误认为是实际的读取长度。在实际硬件上,这可能导致内存损坏和代码执行。



  • CVE-2026-6682(7.6,高危):FAT32 挂载整数溢出漏洞,可能导致内存损坏和代码执行。该漏洞不仅可通过物理介质访问,还可通过某些固件更新访问。

  • CVE-2026-6687 (7.6,高危):exFAT 卷标签字段溢出小缓冲区,使攻击者能够轻松地进行内存损坏。

  • CVE-2026-6688 (7.6,高危):过长的文件名会导致许多项目在 FatFs 周围编写的包装代码溢出,例如将 fno.fname 复制到固定缓冲区。仅靠 FatFs 内部很难修复此问题。

  • CVE-2026-6685(6.1,中等):碎片卷上的缓存处理中的数学包装可能会悄无声息地损坏数据。

  • CVE-2026-6683(4.6,中等风险):exFAT 文件系统除零漏洞,会导致设备崩溃。在更新过程中,该漏洞可能导致硬件损坏。某些固件更新也可能存在此漏洞。

  • CVE-2026-6686(4.6,中等):超出文件末尾的文件可能会泄露先前删除的文件中的残留数据。

  • CVE-2026-6684(4.6,中等):格式错误的 GPT 分区表(磁盘映射表)可能导致设备在挂载期间挂起。这是上游修复的七个漏洞中唯一一个,已在 FatFS R0.16 中修复。


难点在于,FatFs 由一位开发者在互联网的某个角落维护,runZero 表示他们多次尝试联系这位维护者,并联系了日本的 JPCERT/CC 协调中心,但均未得到回应。


最新回复 (2)
  • proc 07-04 17:35
    2

    嵌入式设备向来是漏洞重灾区,最关键的是难以修复

  • 🐟 楼主 07-04 17:36
    3

    关键不应该是用胶水把接口堵死和不联网喵^-^

* 帖子来源Linux.do
返回