kDriver Fuzzer是一款基于ioctlbf框架编写的驱动漏洞挖掘工具,利用kDriver Fuzzer,可以挖掘不同驱动近的CVE,感兴趣或需要的朋友可以下载使用,下面附有软件框架图和参数说明。
kDriver Fuzzer使用说明
一些环境说明:
编译环境:Windows 10 x64 build 1607
项目IDE:VS2013
测试环境:Windows 7 x86、Windows 10 x86 build 1607
参数介绍:
"-l" :开启日志记录模式(不会影响主日志记录模块)
"-s" :驱动枚举模块
"-d" :打开设备驱动的名称
"-i" :待Fuzz的ioctl code,默认从0xnnnn0000-0xnnnnffff
"-n" :在探测阶段采用null pointer模式,该模式下极易fuzz 到空指针引用漏洞,不加则常规探测模式
"-r" :指定明确的ioctl code范围
"-u" :只fuzz -i参数给定的ioctl code
"-f" :在探测阶段采用0x00填充缓冲区
"-q" :在Fuzz阶段不显示填充input buffer的数据内容
"-e" :在探测和fuzz阶段打印错误信息(如getlasterror())
"-h" :帮助信息
常用Fuzz命令实例:
kDriver Fuzz.exe -s
进行驱动枚举,将CreateFile成功的驱动设备名称,以及部分受限的驱动设备名称打印并写入Enum Driver.txt文件中
kDriver Fuzz.exe -d X -i 0xaabb0000 -f -l
对X驱动的ioctl code 0xaabb0000-0xaabbffff范围进行探测及对可用的ioctl code进行fuzz,探测时除了正常探测外增加0x00填充缓冲区探测,开启数据日志记录(如增加-u参数,则只对ioctl code 0xaabb0000探测,若是有效ioctl code则进入fuzz阶段)
kDriver Fuzz.exe -d X -r 0xaabb1122-0xaabb3344 -n -l
对X驱动的ioctl code 0xaabb1122-0xaabb3344范围内进行探测,探测时采用null pointer模式,并数据日志记录
∨ 展开