漏洞名称 : HTTP协议栈远程代码执行漏洞CVE-2021-31166 组件名称 : HTTP.sys 影响范围 : Windows 10 Version 2004, 20H2 Windows Server version 2004, 20H2 漏洞类型 : 远程代码执行 利用条件 : 1、用户认证:否 2、前置条件:受害主机启用了HTTP服务 3、触发方式:远程 综合评价 : <综合评定利用难度>:困难,在无需授权的情况下可以导致远程服务器拒绝服务,但是要实现代码执行比较困难。 <综合评定威胁等级>:高危,在无需授权的情况下即可实现远程拒绝服务甚至可能可以导致远程代码执行。
1 组件介绍
超文本传输协议(HTTP)是一个用于传输超媒体文档(例如HTML)的应用层协议。它是为Web浏览器与 Web 服务器之间的通信而设计的,Windows上的HTTP协议栈用于windows上的Web服务器,例如IIS等,若该协议栈相关的组件存在漏洞,则可能导致远程恶意代码执行。
2 漏洞描述
该漏洞是由于HTTP协议栈相关组件在处理存在多个Accept-Encoding字段的HTTP请求时存在Use-After-Free的漏洞,攻击者可利用该漏洞在未授权的情况下,构造恶意数据执行远程代码执行攻击,最终获取服务器最高权限。
3 漏洞复现
搭建Http组件10.0.19041.928版本环境,复现该漏洞,效果如下:
影响范围
HTTP.sys是Windows内核中最为重要的内核模块,是Windows上HTTP协议栈的底层网络驱动,该漏洞影响多个Windows版本 目前受影响的HTTP.sys版本: Windows 10 Version 2004, 20H2 Windows Server version 2004, 20H2
如何检测组件系统版本)
打开cmd.exe输入
systeminfo | findstr "KB5003173 KB4562830 KB5000736"
若无结果返回则说明没有安装更新补丁。
官方修复建议
当前官方已发布受影响版本的对应补丁(当前官方已发布最新版本),建议受影响的用户及时更新官方的安全补丁(及时更新升级到最新版本)。链接如下:
https://msrc.microsoft.com/update-guide/vulnerability/CVE-2021-31166
详述打补丁方法: 打开上述链接,下载当前系统版本对应的补丁包,进行安装。