实验环境:

  靶机:windows10 1903 专业版

   攻击机:kali 2020.3

   VMware:vmware14

实验工具:

  Python 3.8.5

    msfconsole

实验PROC:

  靶机镜像:ed2k://|file|cn_windows_10_business_editions_version_1903_x64_dvd_e001dd2c.iso|4815527936|47D4C57E638DF8BF74C59261E2CE702D|/

    检测漏洞poc:https://github.com/ollypwn/SMBGhost

    蓝屏proc:https://github.com/chompie1337/SMBGhost_RCE_PoC

实验前提:

  靶机关闭防火墙

  靶机安装完毕后注意创建快照

  pip安装netaddr模块

漏洞介绍:(内容来自腾讯安全 https://s.tencent.com/research/bsafe/912.html)

  该漏洞是Windows10在处理SMB 3.1.1协议的压缩消息时,对头部数据没有做任何安全检查,直接使用,从而引发内存破坏漏洞,达到任意命令执行。

漏洞目标:(内容来自腾讯安全 https://s.tencent.com/research/bsafe/912.html)

  漏洞主要攻击端口为445,但也会有其他触发方式如,构造恶意的SMB服务器并通过网页、压缩包、共享目录、OFFICE文档等多种方式传递给目标用户

当用户打开恶意文件,无需开启445端口就可以触发漏洞

漏洞影响:(内容来自腾讯安全 https://guanjia.qq.com/avast/984/index.html)

  通过此漏洞获取到的权限为系统最高权限

  不影响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)

漏洞复现:

  首先判断是否存在漏洞

  

  打开SMBGhost,利用scanner.py检测是否存在漏洞

  CMD输入命令 python.exe scanner.py 192.168.1.140

  

  出现 Vulnerable 则表示成功

  打开SMBGhost_RCE_PoC文件夹通过exploit.py文件进行蓝屏攻击

  

  输入命令 python.exe exploit.py -ip [IP]

  出现以下回显表示攻击成功

   

  如果没有成功可以进行多次尝试

  多次失败可以尝试恢复快照

  

  接着返回虚拟机发现已经蓝屏

  

  靶机恢复快照

  获取shell攻击

  尝试使用exp反弹shell,打开kali虚拟机

  通过msfvenom命令生成payload

  

  执行完毕后会在当前工作目录下生成exploit文件

  通过cat查看文件可以看到里面是定义了一个名为buf的变量并把payload赋值给buf

  

  打开github下载的PROC文件夹

  并把exploit.py文件里面USER_PAYLOAD的值替换为buf值

  kali进入msf输入命令

  注意: lport 要和msfvenom生成的payload保持一致

  use exploit/multi/handler
  set payload windows/x64/meterpreter/bind_tcp
  set lport 8888
  set rhost 192.168.1.140
  run

  启动监听,并等待再次攻击

  之后再次运行替换过buf的exploit

  如果不成功可以多次尝试或恢复快照

  

  运行成功后返回kali

  可以看到攻击成功

  

防御手段: (参考 https://www.cnblogs.com/kbhome/p/13073746.html)

  打补丁:

    https://msrc.microsoft.com/update-guide/en-US/vulnerability/CVE-2020-0796 (windows官方补丁)

  禁用SMBv3压缩:

    禁用SMB 3.0的压缩功能,是否使用需要结合自己业务进行判断。
    使用以下PowerShell命令禁用压缩功能,以阻止未经身份验证的攻击者利用SMBv3 服务器的漏洞。
    Set-ItemProperty -Path “HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters” DisableCompression -Type DWORD -Value 1 -Force
    用户可通过以下PowerShell命令撤销禁用压缩功能
    Set-ItemProperty -Path “HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters” DisableCompression -Type DWORD -Value 0 -Force
    注:利用以上命令进行更改后,无需重启即可生效;该方法仅可用来防护针对SMB服务器(SMB SERVER)的攻击,无法对SMB客户端(SMB Client)进行防护。

  设置防火墙策略关闭相关端口:

    SMB的TCP 445端口
    NetBIOS名称解析的UDP 137端口
    NetBIOS数据图服务的UDP 138端口
    NetBIOS会话服务的TCP 139端口

  通过IP安全策略屏蔽危险端口,bat执行添加防火墙策略,关闭危险服务:

    http://www.piis.cn/news/new1614.asp

 

总结:

  这次实验参考的比较多

  https://blog.csdn.net/weixin_45006525/article/details/106553519 (主要攻击手段参考

  https://guanjia.qq.com/avast/984/index.html         (漏洞版本参考

  https://s.tencent.com/research/bsafe/912.html        (漏洞基本消息参考

  https://www.cnblogs.com/kbhome/p/13073746.html       (防御手段参考

  攻击整体思路,通过445端口进行攻击,利用proc和msf攻击靶机并反弹shell,kali监听反弹的shell(注意反弹监听的shell要一致)

[永恒之黑]CVE-2020-0796(漏洞复现)的更多相关文章

  1. 永恒之蓝(MS17-010)漏洞复现

    1. 漏洞介绍 永恒之蓝: 恒之蓝是指2017年4月14日晚,黑客团体Shadow Brokers(影子经纪人)公布一大批网络攻击工具,其中包含"永恒之蓝"工具,"永恒之 ...

  2. CVE¬-2020-¬0796 漏洞复现(本地提权)

    CVE­-2020-­0796 漏洞复现(本地提权) 0X00漏洞简介 Microsoft Windows和Microsoft Windows Server都是美国微软(Microsoft)公司的产品 ...

  3. struts2(s2-052)远程命令执行漏洞复现

    漏洞描述: 2017年9月5日,Apache Struts发布最新安全公告,Apache Struts2的REST插件存在远程代码执行的高危漏洞,该漏洞由lgtm.com的安全研究员汇报,漏洞编号为C ...

  4. 8.Struts2-057漏洞复现

    漏洞信息: 定义XML配置时如果namespace值未设置且上层动作配置(Action Configuration)中未设置或用通配符namespace时可能会导致远程代码执行. url标签未设置va ...

  5. CVE-2020-0796“永恒之黑”漏洞复现

    0x00 漏洞概述 Microsoft Server Message Block 3.1.1(SMBv3)协议在处理某些请求的方式中存在代码执行漏洞.攻击者可以精心构造数据包发送到SMB服务器,无需经 ...

  6. CVE-2020-0796(永恒之黑)漏洞复现

    声明:仅供学习与参考,请勿用于非法用途(后果自负) 一.影响范围(需关闭 Win10 防火墙): Windows 10 Version 1903 for 32-bit Systems Windows ...

  7. 【研究】ms17-010永恒之蓝漏洞复现

    1       永恒之蓝漏洞复现(ms17-010) 1.1     漏洞描述: Eternalblue通过TCP端口445和139来利用SMBv1和NBT中的远程代码执行漏洞,恶意代码会扫描开放44 ...

  8. EternalBlue永恒之蓝漏洞复现

    EternalBlue漏洞复现 1.    实训目的 永恒之蓝(EternalBlue)是由美国国家安全局开发的漏洞利用程序,对应微软漏洞编号ms17-010.该漏洞利用工具由一个名为”影子经济人”( ...

  9. 永恒之蓝MS17-010漏洞复现

    永恒之蓝MS17-010漏洞复现 1.漏洞描述: 起因: 永恒之蓝(Eternalblue)是指2017年4月14日晚,黑客团体Shadow Brokers(影子经纪人)公布一大批网络攻击工具,其中包 ...

随机推荐

  1. 虚拟机VMware15 Ubuntu18.04 搭建FTP服务器

    1.安装vsftpd sudo apt install vsftpd 2.查看是否安装成功,出现版本等信息即成功 sudo vsftpd -v 3.添加ftp用户 sudo useradd -m su ...

  2. poi 1182

    食物链 || 带权并查集 0:同类 1:吃 2:被吃 #include <cstdio> using namespace std; const int maxn=5e4+3; int f[ ...

  3. 第15.40节、PyQt(Python+Qt)实战:moviepy实现MP4视频转gif动图的工具

    专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 一.引言 在写<第15.39节.splitDockWidget和 ...

  4. 第15.3节 PyCharm程序调试功能介绍

    一. 代码调试 点击工具栏的调试按钮(如下图蓝色圈标记按钮)可以进行程序调试,可以在调试前先设置断点,断点设置就是在打开文件的行与前面的行号之间用鼠标单击进行设置和取消(如下图蓝色下划线上面的实体圆点 ...

  5. PyQt学习随笔:槽函数获取信号发送对象的方法

    在PyQt中,相似控件发送的信号可以每个控件信号对应一个槽函数,也可以将相似控件的相同信号对应到一个槽函数,但如果槽函数相同,怎么区分信号是谁发送的呢?那就是在信号函数中使用sender()函数获取信 ...

  6. Asp.net core中RedisMQ的简单应用

    最近一个外部的项目,使用到了消息队列,本来是用rabbitmq实现的,但是由于是部署到别人家的服务器上,想尽量简化一些,项目中本来也要接入了redis缓存,就尝试使用redis来实现简单的消息队列. ...

  7. 事后Postmortem会议

    会议图片 一.设想和目标 1. 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述? 我的软件是要建立一个失物招领网站,是一个为校园里的失误招领工作提供便利的平台.我们对 ...

  8. java中==和equals的不同使用方法

    System.out.println("input a charact a      "); Scanner input2 = new Scanner(System.in); St ...

  9. SNOI2020 部分题解

    D1T1 画图可以发现,多了一条边过后的图是串并联图.(暂时不确定) 然后我们考虑把问题变成,若生成树包含一条边\(e\),则使生成树权值乘上\(a_e\),否则乘上\(b_e\),求最终的生成树权值 ...

  10. 题解-CF677D Vanya and Treasure

    CF677D Vanya and Treasure 有一个 \(n\times m\) 的矩阵 \(a(1\le a_{i,j}\le p)\),求从起点 \((1,1)\) 出发依次遍历值为 \(1 ...