他们从各大操作系统中发现了26个 USB 漏洞,用的是这款模糊测试工具

 聚焦源代码安全,网罗国内外最新资讯!

编译:奇安信代码卫士团队

普渡大学的研究员 Hui Peng 和瑞士洛桑联邦理工学院的研究员 Mathias Payer 在多种操作系统(如 LinuxmacOSWindows  FreeBSD)使用的 USB 驱动栈中发现了26个新漏洞。他们表示这些漏洞是通过自己创建的模糊测试新工具 USBFuzz 找到的。

模糊测试工具即允许安全研究员向其它程序发送大量无效、异常或随机数据作为输入的应用程序。安全研究员之后分析所测软件发现新bug 的行为,而这些新 bug 可能会被恶意利用。

可移植的USB模糊测试工具

为测试 USB 驱动,这两名研究员开发了旨在测试当代操作系统 USB 驱动栈的新型模糊测试工具。他们指出,“USBFuzz 的核心使用模拟软件的 USB 设备向(正在执行 IO 操作的)驱动提供随机设备数据。由于模拟的 USB 设备在设备层面运作,因此将其移植到其它平台上非常简单。”

由此研究团队不仅能够在 Linux 上(多数模糊测试程序运作的地方)而且还能在其它操作系统上测试 USBFuzz。研究员指出他们在如下操作系统上进行了测试:

  • 9 Linux 内核新近版本:v4.14.81v4.15v4.16v4.17v4.18.19v4.19v4.19.1v4.19.2 v4.20-rc2(评估该工具时的最新版本)

  • FreeBSD 12(最新版本)

  • MacOS 10.15 Catalina(最新版本)

  • Windows(版本8和版本10,安装了最新的安全更新

找到26个新 bug

测试结果显示,他们借助 USBFuzz 共发现了26个新 bug。研究人员在 FreeBSD 中发现了一个 bug,在 MacOS 中发现了3 bug(其中2个导致异常重启,1个导致系统冻结),在 Windows 8 Windows 10 中发现了4 bug(导致蓝屏死机)。

不过,大多数漏洞且最严重的漏洞位于 Linux 中,共18个。其中16个是高危内存漏洞,影响多个 Linux 子系统(USB coreUSB sound net-work),1bug 位于 Linux USB 主机控制器驱动中,最后1个位于 USB 摄像头驱动中。

研究员表示已将 bug 告知 Linux 内核团队,并提供补丁提案以减少“内核开发人员在修复所报告漏洞时的负担”。在这18 Linux bug 中,研究人员表示其中11个在去年首次发布报告时修复,而其中的10个已修复漏洞获得 CVE 编号。其余7个漏洞有望在不久之后修复,“其余的 bug 有两类,一类是仍在捕获中/披露中,另一类是其他研究员也发现和报告过的”。

USBFuzz 或将开源

Payer在发布白皮书草案时说明了他们在 USBFuzz 中所做的工作。他们打算在20208月举行的 Usenix 安全虚拟大会上展示其研究成果。

之前,谷歌安全工程师也曾使用名为 syzkaller 的谷歌自制模糊测试工具在201711月发现了79个影响 Linux 内核 USB 驱动的 bug

Peng Payer 表示,USBFuzz 的功能超过之前的工具如 vUSBfzyzkaller usb-fuzzer,原因是USBFuzz 可使用户对测试数据拥有更大的控制权并且可在操作系统之前移植,而之前的工具通常只能在 *NIX 系统上发挥作用。

会议举行完后,这两名研究员计划在 GitHub 上开源 USBFuzz

完整论文请见:

http://hexhive.epfl.ch/publications/files/20SEC3.pdf


推荐阅读

研究人员推出智能灰盒模糊测试概念

Supermicro服务器被曝 UBAnywhere 漏洞,可导致 USB 遭远程访问

原文链接

https://www.zdnet.com/article/microsoft-warns-about-attacks-with-the-ponyfinal-ransomware/

题图:Pixabay License

本文由奇安信代码卫士编译,不代表奇安信观点。转载请注明“转自奇安信代码卫士 www.codesafe.cn”。

奇安信代码卫士 (codesafe)

国内首个专注于软件开发安全的

产品线。

    点个 “在看” ,加油鸭~

你可能感兴趣的:(他们从各大操作系统中发现了26个 USB 漏洞,用的是这款模糊测试工具)