探索未知:BSOD-Kernel-Fuzzing - 打开设备驱动安全新纪元

探索未知:BSOD-Kernel-Fuzzing - 打开设备驱动安全新纪元

Preview 查看详细论文

在信息安全的舞台上,对闭源内核驱动程序的测试和漏洞发现始终是一个挑战。然而,BSOD-Kernel-Fuzzing 开源项目为这一领域带来了一种创新方法,它允许我们对二进制设备驱动进行大规模、可扩展的模糊测试(fuzzing)。

项目介绍

BSOD-Kernel-Fuzzing 是基于柏林工业大学网络安全系(SecT)硕士论文项目的研究成果。这个项目的核心在于通过 QEMU 中的设备仿真实现对 KVM 的内核模糊测试,从而对闭源设备驱动进行安全审计。这一突破性工作使得即使对于二进制形式的设备驱动,也能进行有效的安全性评估,并已经在 NVIDIA 图形驱动中发现了三个重大安全漏洞(CVE-2021-1090,CVE-2021-1095 和 CVE-2021-1096)。

技术分析

项目包括三个主要组件:

  1. bsod-afl:基于 afl 的内核模糊测试工具,其初始设计受到 kernel-fuzzer-for-xen-project 的启发,专为 KVM 环境进行了优化。
  2. bsod-syzkaller:针对闭源目标进行了改进的 syzkaller 工具,通过一个名为 syz-bp-cov 的小型工具提供断点覆盖率反馈,提升了模糊测试的效果。
  3. bsod-fakedev:利用 QEMU 的 pci-replay 功能来模拟真实设备行为,结合从 QEMU vfio 跟踪数据中提取的 pci-replay 数据,以提高测试的真实性和准确性。

为了实现这些功能,项目依赖于 KVM-VMI,这是一个提供了 KVM 内核模块与 QEMU 强大洞察能力的项目。

应用场景

BSOD-Kernel-Fuzzing 非常适用于以下场景:

  • 安全团队希望对闭源设备驱动进行全面的安全审查。
  • 开发者正在寻找一种工具,用于在产品发布前检测可能的内核级缺陷,避免生产环境中出现严重的系统崩溃问题。
  • 学术研究人员在探索新的模糊测试技术和方法时,可以借鉴和扩展这个项目。

项目特点

  1. 闭源兼容性:BSOD-Kernel-Fuzzing 克服了传统模糊测试工具无法处理二进制驱动的局限,适用于闭源硬件驱动。
  2. 高效覆盖:通过 syz-bp-cov 提供的断点覆盖率反馈,能深入到代码执行的细粒度级别,提高模糊测试的效率。
  3. 设备仿真:使用 bsod-fakedev 及 pci-replay 技术,模拟真实设备的行为,提高了测试的真实性。
  4. 灵活性:支持使用 afl 和 syzkaller 两种流行的模糊测试框架,满足不同需求。

如果你热衷于内核安全或者对设备驱动的模糊测试感兴趣,BSOD-Kernel-Fuzzing 将是你不可错过的资源。立即加入,一同挖掘潜在的安全隐患,为系统安全贡献力量!

  • 20
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

卢颜娜

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值