CVE-2021-47786CVE-2021-47786是Redragon(红龙)游戏鼠标驱动程序中的一个高危内核级拒绝服务漏洞。该漏洞存在于Windows系统下的REDRAGON_MOUSE内核驱动中,CVSS评分达到7.5分,属于高危级别。攻击者可以通过发送特制的IOCTL(输入/输出控制)请求来触发该漏洞,无需任何认证或用户交互。漏洞的成因是驱动程序在处理2000字节的IOCTL请求时缺乏充分的输入验证,攻击者只需构造包含特定字节模式的畸形数据并发送到REDRAGON_MOUSE设备,即可导致内核驱动崩溃,使系统陷入蓝屏死机(BSOD)状态,从而造成完整的系统可用性丧失。此漏洞影响所有使用该驱动程序的用户,攻击者可远程利用此漏洞对目标系统实施拒绝服务攻击。
该漏洞属于Windows内核驱动IOCTL处理不当导致的拒绝服务漏洞。在Windows系统中,应用程序通过DeviceIoControl函数向内核驱动发送IOCTL请求来与硬件设备通信。REDRAGON_MOUSE驱动在处理IOCTL请求时存在以下问题:1) 缺乏对输入缓冲区大小的有效验证;2) 对缓冲区内容的字节模式检查不足;3) 内核内存操作缺少边界检查。攻击者可以构造一个2000字节的畸形缓冲区,其中包含能够触发驱动代码路径异常的特定字节模式。当这个精心设计的IOCTL请求被发送到\\\\.\\REDRAGON_MOUSE设备时,驱动在解析和处理数据的过程中会发生内存访问违规,导致内核态崩溃。内核驱动的崩溃会导致整个系统进入蓝屏死机状态,系统需要重启才能恢复。这本质上是一个内核级的缓冲区处理缺陷,攻击者利用了驱动开发者对IOCTL输入验证的疏忽。