CVE-2026-5164virtio-win组件中的RhelDoUnMap()函数存在一处严重的输入验证漏洞,该函数未能正确校验用户在取消映射请求中提供的描述符具体数量。本地具有高权限的攻击者可利用该漏洞,通过恶意提供过量的描述符数据导致缓冲区溢出,进而触发系统崩溃及拒绝服务,严重影响系统稳定性与安全性。
该漏洞源于virtio-win驱动程序中RhelDoUnMap()函数对输入参数的校验逻辑缺失。在处理取消映射请求时,该函数直接使用用户提供的描述符数量值,而未对该数值进行边界检查或有效性验证。攻击者需具备本地高权限,通过构造特制的I/O控制请求,将一个异常大的描述符数量传递给该函数。由于缺乏校验,程序在后续处理中会尝试访问超出预定缓冲区范围的内存区域,导致缓冲区溢出。这种内存破坏行为不仅可能覆盖关键数据结构,还会触发异常处理机制,最终导致系统崩溃或死机,实现拒绝服务攻击,严重影响业务连续性。