补丁不给力,Windows漏洞 (CVE-2020-0986) 沦为新0day,或于2021年修复

本文主要是介绍补丁不给力,Windows漏洞 (CVE-2020-0986) 沦为新0day,或于2021年修复,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 聚焦源代码安全,网罗国内外最新资讯!

6月份,微软发布补丁,修复了 Windows 操作系统中当时已遭利用的 0day (CVE-2020-0986)。该漏洞可使攻击者在失陷机器上将权限提升至内核级别。但事实证明,该补丁仍可被绕过。谷歌研究人员发现了一种新的利用方法绕过该补丁并公开 PoC 代码。该漏洞新获得的 CVE 编号是 CVE-2020-17008。微软或于2021年1月补丁星期二修复。

老洞新用

当时,卡巴斯基实验室的研究人员发现,攻击者可结合利用尚为 0day 的CVE-2020-0986和 IE 浏览器中的0day,实现提升权限,进而远程执行代码。如今,谷歌 Project Zero 团队的安全研究员 Maddie Stone 发现,攻击者仍可通过发送一个偏移量而非指针的方式,触发CVE-2020-0986,提升至内核权限。

Stone 指出,CVE-2020-0986 是一个任意指针解引用漏洞,可导致攻击者控制 memcpy 函数的 “src” 和 “dest” 指针。微软给出的补丁不正确的原因在于,它将指针修改为偏移量,因此该函数的参数仍可被控制。

Stone 在博客文章中指出,“完整性较低的进程可以将 LPC 信息发送给 splwow64.exe(中等完整性)并在 splwow64 内存空间中获得 write-what-where 原语。攻击者控制该目标、复制的内容以及通过memcpy 调用复制的字节数。目标指针计算的偏移量仅限制为:

Offset <= 0x7FFFFFFF
Offset + perceived size of structure <= 0x7FFFFFFF

Splwow64 将 LPC 信息传递给 GdiPrinterThunk。该易受攻击的 memcpy 位于信息 0x6D 中。

CVE-2020-0986 和 CVE-2020-17008 的唯一不同之处在于,对于前者而言,攻击者发送了一个指针,而对于后者而言,攻击者发送的是一个偏移量。

PoC

为证明微软发布补丁后,利用仍然可能实现,Stone 发布了改自卡巴斯基实验室的 PoC 代码,同时还给出了如何正确运行 PoC 代码的指令。Stone 指出,PoC 所需要做的是两次触发该漏洞:“首先泄露存储信息并用于生成指针而添加的偏移量所在的堆地址,然后获得 write-what-where 原语。“

完整 PoC 文件可见谷歌博客文章(见原文链接)。

将于2021年1月发布补丁

微软于9月24日收到谷歌提交的漏洞报告并在一天之后确认问题存在,分配编号 CVE-2020-17008。微软本计划于2020年11月发布补丁,但由于在测试阶段出现问题,因此将推迟到2020年1月12日补丁星期二发布。

谷歌Project Zero 团队规定的漏洞披露期限为90天,且宽限期为14天。由于微软在1月6日之前无法提供补丁,因此这两个最后期限均不满足。

另外,如 Stone 所言,攻击者过去已利用且非常熟悉该漏洞,因此如果修复方案不正确,会再次利用它。

推荐阅读

已遭利用的微软0day CVE-2020-1464,原来是两年前的老相识

我偶然发现一个严重 0day,影响 Win7 和 Server 2008 R2,微软未发补丁(详情)

原文链接

https://www.bleepingcomputer.com/news/security/windows-zero-day-with-bad-patch-gets-new-public-exploit-code

https://bugs.chromium.org/p/project-zero/issues/detail?id=2096

题图:Pixabay License

本文由奇安信代码卫士编译,不代表奇安信观点。转载请注明“转自奇安信代码卫士 https://codesafe.qianxin.com”。

奇安信代码卫士 (codesafe)

国内首个专注于软件开发安全的

产品线。

    觉得不错,就点个 “在看” 或 "赞” 吧~

这篇关于补丁不给力,Windows漏洞 (CVE-2020-0986) 沦为新0day,或于2021年修复的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/597229

相关文章

修复已被利用的高危漏洞! macOS Sequoia 15.6.1发布

《修复已被利用的高危漏洞!macOSSequoia15.6.1发布》苹果公司于今日发布了macOSSequoia15.6.1更新,这是去年9月推出的macOSSequoia操作... MACOS Sequoia 15.6.1 正式发布!此次更新修复了一个已被黑客利用的严重安全漏洞,并解决了部分中文用户反馈的

电脑提示d3dx11_43.dll缺失怎么办? DLL文件丢失的多种修复教程

《电脑提示d3dx11_43.dll缺失怎么办?DLL文件丢失的多种修复教程》在使用电脑玩游戏或运行某些图形处理软件时,有时会遇到系统提示“d3dx11_43.dll缺失”的错误,下面我们就来分享超... 在计算机使用过程中,我们可能会遇到一些错误提示,其中之一就是缺失某个dll文件。其中,d3dx11_4

游戏闪退弹窗提示找不到storm.dll文件怎么办? Stormdll文件损坏修复技巧

《游戏闪退弹窗提示找不到storm.dll文件怎么办?Stormdll文件损坏修复技巧》DLL文件丢失或损坏会导致软件无法正常运行,例如我们在电脑上运行软件或游戏时会得到以下提示:storm.dll... 很多玩家在打开游戏时,突然弹出“找不到storm.dll文件”的提示框,随后游戏直接闪退,这通常是由于

Windows环境下解决Matplotlib中文字体显示问题的详细教程

《Windows环境下解决Matplotlib中文字体显示问题的详细教程》本文详细介绍了在Windows下解决Matplotlib中文显示问题的方法,包括安装字体、更新缓存、配置文件设置及编码調整,并... 目录引言问题分析解决方案详解1. 检查系统已安装字体2. 手动添加中文字体(以SimHei为例)步骤

基于Python开发Windows屏幕控制工具

《基于Python开发Windows屏幕控制工具》在数字化办公时代,屏幕管理已成为提升工作效率和保护眼睛健康的重要环节,本文将分享一个基于Python和PySide6开发的Windows屏幕控制工具,... 目录概述功能亮点界面展示实现步骤详解1. 环境准备2. 亮度控制模块3. 息屏功能实现4. 息屏时间

在Windows上使用qemu安装ubuntu24.04服务器的详细指南

《在Windows上使用qemu安装ubuntu24.04服务器的详细指南》本文介绍了在Windows上使用QEMU安装Ubuntu24.04的全流程:安装QEMU、准备ISO镜像、创建虚拟磁盘、配置... 目录1. 安装QEMU环境2. 准备Ubuntu 24.04镜像3. 启动QEMU安装Ubuntu4

Windows下C++使用SQLitede的操作过程

《Windows下C++使用SQLitede的操作过程》本文介绍了Windows下C++使用SQLite的安装配置、CppSQLite库封装优势、核心功能(如数据库连接、事务管理)、跨平台支持及性能优... 目录Windows下C++使用SQLite1、安装2、代码示例CppSQLite:C++轻松操作SQ

qt5cored.dll报错怎么解决? 电脑qt5cored.dll文件丢失修复技巧

《qt5cored.dll报错怎么解决?电脑qt5cored.dll文件丢失修复技巧》在进行软件安装或运行程序时,有时会遇到由于找不到qt5core.dll,无法继续执行代码,这个问题可能是由于该文... 遇到qt5cored.dll文件错误时,可能会导致基于 Qt 开发的应用程序无法正常运行或启动。这种错

电脑提示xlstat4.dll丢失怎么修复? xlstat4.dll文件丢失处理办法

《电脑提示xlstat4.dll丢失怎么修复?xlstat4.dll文件丢失处理办法》长时间使用电脑,大家多少都会遇到类似dll文件丢失的情况,不过,解决这一问题其实并不复杂,下面我们就来看看xls... 在Windows操作系统中,xlstat4.dll是一个重要的动态链接库文件,通常用于支持各种应用程序

基于Python实现一个Windows Tree命令工具

《基于Python实现一个WindowsTree命令工具》今天想要在Windows平台的CMD命令终端窗口中使用像Linux下的tree命令,打印一下目录结构层级树,然而还真有tree命令,但是发现... 目录引言实现代码使用说明可用选项示例用法功能特点添加到环境变量方法一:创建批处理文件并添加到PATH1