开源工具DeepZero:开源搜索易受攻击的Windows驱动程序

DeepZero是一个开源引擎,可以自动搜索可利用的Windows内核驱动程序。你把它指向一个二进制文件文件夹,它会解析它们,将它们拆开,扫描它们,扔掉大部分,并询问语言模型是否可以攻击幸存的东西。管道是用YAML编写的,代码是Python 3.11及以上版本。

deepzero易受攻击的Windows驱动程序

维护该项目的Rehman Ahmadzai表示,DeepZero“在Snappy Driver Installer语料库的子集中发现了多个经过验证的漏洞,其中一些仍在进行披露过程。”捆绑的管道针对BYOVD,简称为“自带易受攻击的驱动程序”:攻击者加载包含缺陷的合法签名驱动程序,并使用它来访问内核。

管道的作用

七个阶段按顺序运行。第一个解析PE标题。第二个只保留暴露IOCTL表面的内核模式驱动程序,控制代码用户空间发送驱动程序使其做一些事情。第三个排除了已经在loldrivers.io上编入目录的驱动程序,公共列表的辩护人阻止了。然后,Ghidra在剩余的无头运行,Semgrep规则扫描导出的C源,名为pick_top_10的减少步骤将字段修剪到顶级候选层,然后模型才评估可利用性。

模型看到的任何东西都通过了第三个过滤器。

Ahmadzai告诉Help Net Security:“人工智能评估步骤被放置在最后,以便早期阶段可以收集上下文(例如二进制反编译,过滤掉预先已知的易受攻击的驱动程序或管道中不受支持的/32位二进制文件),这些上下文将最终由人工智能步骤进行评估。”

发现可能仍然需要物理硬件

许多驱动程序只有在硬件被枚举后才会创建设备对象。在没有该设备的机器或虚拟机上,路径永远不会打开,驱动程序暴露的任何东西都无法到达,仅从报告中看,它看起来与驱动程序相同,没有任何问题。反编译阶段记录哪个函数调用了IoCreateDevice,以及该函数是DriverEntry还是DriverEntry调用的东西。真实值意味着该设备会出现在任何将加载驱动程序的机器上,因此可以确认对它的发现。错误通常意味着即插即用回调创建它,并确认任何东西都需要硬件。当根本找不到IoCreateDevice时,阶段不会记录任何值,而不是猜测。

“DeepZero的底层引擎已经构建为目标不可知管道编排器。虽然包含的loldrivers研究管道是专门为Windows内核驱动程序量身定制的,但框架本身并不局限于单一架构或二进制类型,”Ahmadzai说。

DeepZero在GitHub上免费提供。

参考链接地址:https://www.helpnetsecurity.com/2026/09/16/vulnerable-windows-drivers-deepzero-open-source/

© 版权声明
THE END
你的支持是我们在网空安全路上的驱动力!
点赞13 分享