千家信息网

如何进行CVE-2020-16898漏洞复现及修复

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,本篇文章为大家展示了如何进行漏洞复现及修复,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。一、漏洞介绍该漏洞主要是由于Windows TCP/IP堆栈在处理选项
千家信息网最后更新 2026年10月31日如何进行CVE-2020-16898漏洞复现及修复

本篇文章为大家展示了如何进行漏洞复现及修复,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

一、漏洞介绍

该漏洞主要是由于Windows TCP/IP堆栈在处理选项类型为25(0x19,递归DNS服务器选项)且长度字段值为偶数的ICMPv6的路由广播数据包时,处理逻辑存在纰漏,导致存在远程代码执行漏洞。成功利用该漏洞的攻击者可以在目标机器(主机或服务器)上执行任意代码。

影响范围:

• Microsoft Windows 10 1709
• Microsoft Windows 10 1803
• Microsoft Windows 10 1809
• Microsoft Windows 10 1903
• Microsoft Windows 10 1909
• Microsoft Windows 10 2004
• Microsoft Windows Server 2019
• Microsoft Windows Server, version 1903
• Microsoft Windows Server, version 1909
• Microsoft Windows Server, version 2004

二、漏洞浅析

当Windows TCP / IP堆栈不正确地处理使用选项类型25(递归DNS服务器选项)且长度字段值为偶数的ICMPv6路由器广告数据包时,存在一个远程执行代码漏洞。在此选项中,长度以8个字节为增量进行计数,因此长度为3的RDNSS选项的总长度应为24个字节。该选项本身包含五个字段:IPv6递归DNS服务器的类型,长度,保留,生存时间和地址。前四个字段始终总共为8个字节,但最后一个字段可以包含可变数量的IPv6地址,每个IPv6地址均为16个字节。按照RFC 8106,长度字段应始终为至少3的奇数值,当提供一个偶数长度值时,Windows TCP / IP堆栈错误地将网络缓冲区的前进量减少了8个字节。这是因为堆栈在内部以16字节为增量进行计数,因此无法解决使用非RFC兼容长度值的情况。这种不匹配导致堆栈将当前选项的最后8个字节解释为第二个选项的开始,最终导致缓冲区溢出和潜在的RCE。

三、漏洞复现

复现步骤

1、 虚拟机网络设置开启ipv6

2、查看环境情况

Windows版本,按win+r,在弹出窗口中输入winver,查看版本信息

3、用国外大神的脚本进行检测有漏洞和没漏洞的结果如下:

PowerShell.exe -ExecutionPolicy UnRestricted -File C:\Users\user\Desktop\new.ps1.ps1

4、执行ipconfig,查看ipv6地址这里注意,靶机的ipv6地址选取 "ipv6地址" 或 "临时ipv6地址"

5、执行ipconfig,查看ipv6地址这里注意,攻击机的ipv6地址选取 "本地ipv6地址

6、运行plyload,靶机蓝屏

poc原理:

由于Windows TCP/IP堆栈在处理选项类型为25(0x19,递归DNS服务器选项),当伪造长度字段值为偶数的ICMPv6的路由广播数据包发送给目标主机时,Windows TCP/IP 在检查包过程中会根据Length来获取每个包的偏移,遍历解析,导致对 Addresses of IPv6 Recursive DNS Servers 和下一个 RDNSS 选项的边界解析错误,从而绕过验证,将攻击者伪造的option包进行解析,造成栈溢出,从而导致系统崩溃。

四、修复方法

(1)下载微软官方提供的补丁:

https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2020-16898

(2)内网等不便安装更新的用户,可以使用微软官方给出的临时变通措施:

禁用 ICMPv6 RDNSS:

以管理员身份打开PowerShell,输入以下命令,即可"显示接口参数"

netsh int ipv6 show interface

可以根据此列表,查询到需要禁用的接口,执行禁用命令如下

netsh int ipv6 set int 8 rabaseddnsconfig=disable

返回"确定"后禁用成功,开启方法同上。上述操作均无需重启电脑。

上述内容就是如何进行漏洞复现及修复,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注行业资讯频道。

漏洞 地址 长度 字段 字节 堆栈 服务器 服务 偶数 类型 递归 处理 代码 数据 路由 攻击 成功 主机 内容 命令 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 保险科技 互联网保险 湖北九亚互联网络科技有限公司 无线互联网科技 北京禾田雨橡互联网科技 互联网科技logo设计 深圳艾佳互联网科技 互联网汽车科技小镇 武汉健翔互联网络科技有限公司 宜昌元轩互联网科技有限公司 哈尔滨屹滨互联网科技有限公司 民营互联网公司国防科技 无锡工业互联网科技有限公司 山东有哪些互联网科技公司 互联网营销推广黑科技 富国互联网科技002692 上海乐五互联网科技有限公司 容联科技互联网电商 互联网科技企业商标注意事项 中国科技和美国互联网 科技互联网专业工作会议发言稿 亿账通互联网科技 互联网养老 桔豆科技 宁波青枫互联网科技有限公司 崇明区互联网教育科技诚信经营 互联网科技和信息 中国科技创新与世界互联网大会 半导体行业属于互联网高科技类吗 易租星互联网科技有限公司 北京天晋互联网科技有限公司 互联网科技对化妆品行业
0