Metasploit利用溢出漏洞远控Windows靶机操作指南
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
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所示。
图19 漏洞选择
再用命令show option查看利用这个漏洞需要配置哪些参数,如图20所示。
图20 查看参数
用set 命令配置监听服务器为本地攻击机的IP地址,如图21所示。
图21 配置监听地址
然后继续配置漏洞利用成功后的攻击载荷还是Meterpreter,配置攻击载荷所需的本地地址和远程地址,如图22所示。
图22 攻击载荷配置
再次用show options命令检查参数配置正确后,exploit发动攻击,如图23所示。
图23 开始攻击
MS10_046漏洞和MS08_067漏洞的利用方式不同,不是直接主动攻击目标获得远程控制shell,而是在本地生成一个包含漏洞利用代码的恶意网站,期望受害者访问这个恶意网站触发漏洞利用,如图24所示。