Metasploit利用溢出漏洞远控Windows靶机操作指南讲解

Metasploit利用溢出漏洞远控Windows靶机操作指南讲解
Metasploit利用溢出漏洞远控Windows靶机操作指南讲解

1 网络测试环境构建

首先需要先配置好一个渗透测试用的网络环境,包括如图1所示的运行Kali Linux系统的计算机,如图2所示的Windows Server 2003系统的计算机和如图3所示的运行Windows 7系统的计算机。显然这三台计算机处于同一个网段中,可以相互通讯,Kali系统用作攻击机,下面将在此系统上运行Metasploit进行渗透测试,而Windows 2003和Windows 7系统都是本次任务中需要进行渗透入侵的靶机,保持安装后的默认状态,没有打额外的系统安全补丁。

图1 Kali攻击机

图2 Windows 2003靶机

图3 Windows 7 靶机

2 扫描靶机

在正式开始渗透之前,应该对靶机进行扫描探测工作,搞清楚渗透目标的系统类型、开放的端口服务、可能存在的安全漏洞等。

如图4所示,在Kali攻击机上执行Msfconsole命令,即可进入Metasploit 环境,如图5所示。

图3-4 msfconsole命令

图5 进入msf环境

现在可以利用MSF框架中集成的Nmap扫描器对渗透测试目标进行扫描,如图6和7所示,获取了靶机的开放服务和操作系统类型等信息。

图6 Windows 2003扫描结果

图7 Windows 7扫描结果

利用扫描器的脚步插件,还有可能直接探测出目标系统的安全漏洞,例如如图8所示,Nmap利用smb-check-vulns插件扫描探测出了Windows 2003靶机存

在MS08_067漏洞。

图8 漏洞扫描结果

3 利用MS08_067漏洞渗透入侵

MS08_067是一个曾经在各种Windows操作系统中广泛存在,而且危害特别严重的缓冲器溢出类型的漏洞,利用它可以在无需知道任何账户密码,也不需要受害者配合的情况下,通过网络直接远程控制受害的计算机。

为实现Metasploit在Windows操作系统的渗透测试,Metasploit目前提供了三种用户使用接口,一个是GUI模式,另一个是console模式,第三个是CLI (命令行)模式。目前这三种模式各有优缺点,本文仅使用MSF console模式。因为在console中可以使用MSF 所提供的所有功能,还可以在console中执行一些其他的外部命令,如ping。

既然已经知道Windows 2003靶机存在MS08_067漏洞,下面就在Metasploit 环境中利用它进行渗透入侵。

首先,通过使用“search”命令,搜索该漏洞对应的模块,并启用该渗透攻击模块查看基本信息,然后,输入use exploit/Windows/smb/ms08_067_netapi 命令表示选择利用这个漏洞,如图9所示。

图9 选择漏洞

然后用set命令选择一旦利用漏洞渗透进去使用什么攻击载荷,这里使用MSF框架里功能强大的Meterpreter攻击模块下的反向连接shell载荷,如图10所示。

图10 选择攻击载荷

用show options命令查看还有哪些参数需要配置,根据目标情况配置渗透攻击的选项。如图11所示

图11 需要配置的参数

配置本地攻击机和远程靶机的IP地址,以及靶机系统的类型,如图12所示。

图12 配置参数

所有需要的参数配置好了以后,在进行exploit渗透攻击时,会出现一些状况,有可能渗透不成功,需要在这时候谨慎。用exploit或run命令发动攻击,如图13所示,渗透成功后,设置的回连主机就是Metasploit攻击主机,攻击主机会获得一个meterpreter控制会话session。

图13 成功获取session

用了meterpreter的session后,即可用各种命令对远程靶机进行操作,如图14、15所示,在目标靶机上新建了一个账号hacker和密码,并将其加入到管理员组。为后续的远程控制提供方便。

图14 新建账号

图15 账号加入管理员组

为了更方便远程操作被成功渗透控制的靶机,还可以利用Meterpreter的强大功能,打开目标的3389远程桌面端口,如图16所示。

图3-16 打开远程桌面服务

现在可以用远程桌面客户端去连接靶机的远程桌面服务,如图17所示,用刚才新创建的账号和密码成功登录到系统后,即可在图形界面下方便地操作远程靶机,进行到这一步,我们可以对靶机进行一些信息的窃取,或是一些病毒和木马的上传。如图18所示。

图17 通过远程桌面登录

图18 通过远程桌面操作

至此,Metasploit利用MS08_067漏洞渗透入侵远程Windows 2003靶机的任务全部完成了。

4 利用MS10_046漏洞渗透入侵

因为Windows 7系统靶机上不存在MS08_067漏洞,为了渗透这个目标,我

们重新用USE命令选择另一个安全漏洞MS10_046,如图19所示。

再用命令show option查看利用这个漏洞需要配置哪些参数,如图20所示。

图20 查看参数

用set 命令配置监听服务器为本地攻击机的IP地址,如图21所示。

图21 配置监听地址

然后继续配置漏洞利用成功后的攻击载荷还是Meterpreter,配置攻击载荷所需的本地地址和远程地址,如图22所示。

图22 攻击载荷配置

再次用show options命令检查参数配置正确后,exploit发动攻击,如图23所示。

图23 开始攻击

MS10_046漏洞和MS08_067漏洞的利用方式不同,不是直接主动攻击目标获得远程控制shell,而是在本地生成一个包含漏洞利用代码的恶意网站,期望受害者访问这个恶意网站触发漏洞利用,如图24所示。

图24 生成恶意网站代码

现在可以诱使Windows 7靶机用浏览器去访问攻击机的恶意网站,如图25所示,当然,也可以采用其他辅助手段将这个过程做得更隐蔽一点,例如用ettercap发动DNS欺骗使受害者访问任何网站都自动连接到攻击机。这里为简单起见就直接访问。

图25 靶机访问恶意网站

回到攻击机的Metasploit界面,可以观察到受害靶机的漏洞已经被触发,打开了一个远程Meterpreter会话,即靶机和攻击机直接已经建立了连接,如图26所示。

图26 打开会话

如图27所示,现在类似上一个任务,已经可以对远程靶机进行控制操作,

渗透测试任务完成。

图27 远程控制

相关主题
相关文档
最新文档