freeBuf
主站

分类

云安全 AI安全 开发安全 终端安全 数据安全 Web安全 基础安全 企业安全 关基安全 移动安全 系统安全 其他安全

特色

热点 工具 漏洞 人物志 活动 安全招聘 攻防演练 政策法规

点我创作

试试在FreeBuf发布您的第一篇文章 让安全圈留下您的足迹
我知道了

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

CVE-2021-1647 Windows Defender缓冲区溢出导致的任意代码执行漏洞复现
FreeBuf-329171 2021-05-31 13:53:43 223113

0x01 漏洞概述

Windows Defender是Windows自带的防护软件,其在对可执行文件进行检测时采用模拟执行的策略进行黑白判定,模拟执行分为两个部分:指令模拟和运行环境模拟。其中指令模拟会将程序的响应平台指令(arm/mips/x86等)转换成Defender自己的中间指令,然后运行相应的中间指令来模拟执行该文件;而运行环境模拟则是对内存系统、文件系统、系统API、DLL等进行模拟。

Defender在进行指令模拟的时候遇到带壳的可执行文件会使用内置的一些方法尝试脱壳,目前支持脱壳的方式有Upxw64/Upxw/WExtract/NSPacker/Shrinker/PECompact2/Area51/Crypter1337/Aspack/PKLite/SfxCab/Asprotect 等,这次漏洞所在的就是Asprotect壳的脱壳过程中,当攻击者构造一个带有特殊PE头的可执行文件,Windows Defender检测时就会出发缓冲区溢出漏洞进而导致任意代码执行。

0x02 影响版本

1622440103_60b478a75199616c8dbfb.png!small?1622440154017

0x03 环境搭建

1.首先安装VMware workstation虚拟机(本实验使用的VMware workstation虚拟机为15版本)

2.在虚拟机上安装 Windows10 1903 靶机(或上述任一受影响版本)

3.下载POC程序

确保Windows Defender没有更新(可以采取断网措施防止后续更新)

0x04 漏洞复现

1.启动Windows 10虚拟机

2.将含有POC程序的压缩包复制到靶机任意位置

3.直接右键对该文件进行解压

4.解压后就能弹一个system权限的命令行窗口出来,因为Windows Defender在文件被从压缩包里解压出来的时候就会检查这几个新文件,发现是加壳的可执行文件就会让引擎脱壳,其中的溢出漏洞就会触发,进而达到任意命令执行的目的。

5.同时Windows Defender也会发生崩溃,并在数十秒后自动重新启动。

0x05 防护建议

Windows联网,打开Windows Defender防护中心手动点击更新Windows Defender,并保持Windows自动更新开启,或通过第三方安全防护软件的相关补丁功能进行补丁安装。

# web安全 # 漏洞分析 # 网络安全技术
本文为 FreeBuf-329171 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
FreeBuf-329171 LV.5
这家伙太懒了,还未填写个人描述!
  • 27 文章数
  • 7 关注者
CVE-2020-13942 Apache Unomi 远程代码执行漏洞复现
2021-08-31
CVE-2020-11651CVE-2020-11652 SaltStack认证绕过漏洞、目录遍历漏洞
2021-08-30
CVE-2020-1938 Tomcat AJP漏洞复现
2021-08-27
文章目录