1.实验内容
1.1 掌握metasploit的基本应用方式,重点常用的三种攻击方式的思路。
-
一个主动攻击实践,尽量使用最新的类似漏洞;
-
一个针对浏览器的攻击,尽量使用最新的类似漏洞;
-
一个针对客户端的攻击,如Adobe或office,尽量使用最新的类似漏洞;
-
成功应用任何一个辅助模块。
1.2 知识准备
- Metasploit是一个广泛使用的开源渗透测试工具集,它提供了各种渗透测试工具和技术,帮助安全专业人员测试,验证,探究和利用已知或新发现的漏洞,从而提高安全性和保护网络安全。
- MS17-010漏洞模块(永恒之蓝漏洞)是一个针对Windows SMB服务器的远程代码执行漏洞利用模块。攻击者可以利用该模块在没有凭据下远程执行代码,获取对目标Windows系统的完全访问权限,进行恶意活动(如安装后门程序,窃取敏感信息,加密受害者的数据等)。
- MS10-002是一个由Microsoft Windows内核中的图形设备接口(GDI)处理错误信息不当导致的漏洞。该漏洞使得攻击者可以构造特殊的图像文件,在构造的图像文件中嵌入了恶意代码,当用户用 Windows 图片和扫描仪精细图像处理器(GDI+)查看或者预览该图像文件时,就会导致恶意代码得到执行,并获得对计算机的完全控制。
- MS14-064漏洞存在于 Microsoft Windows OLE(Object Linking and Embedding)组件中,攻击者可以利用多种方式(如通过邮件、网页、Office 文档等)构造恶意数据并发送给受害者,在受害者电脑上执行任意代码,控制受害者电脑,获取敏感信息等。
2.实验过程
2.1使用MS17-010漏洞模块(永恒之蓝漏洞)实现远程攻击
- 攻击机:kali虚拟机
192.168.193.134
;靶机:win7192.168.193.137
- 启动msf
msfconsole
- 找到永恒之蓝漏洞相关的模块
search ms17_010
- 可以由搜索结果看出对于此漏洞可以进行四种metasploit攻击,其中auxiliary模块主要用于信息搜集,exploit模块主要用于进行攻击。
2.1.1 使用use auxiliary/scanner/smb/smb_ms17_010模块
- 使用
show options
查看配置
- 查看靶机开放的端口
netstat -an
- 更改攻击配置并运行
set RHOST 192.168.193.137 //目标IP地址
set RPORT 445 //目标主机的开放且未被占用的端口
run //运行
- 但是好像没有成功
2.2.2 使用exploit/windows/smb/ms17_010_psexec模块
- 设置参数并运行,好像还是失败
2.2.3 使用exploit/windows/smb/ms17_010_eternalblue 模块
- 设置参数并运行,还是失败,我的win7防护等级可能太高了
- 把防火墙关了试试,成功啦
- 尝试执行一些指令
2.2 使用MS10-002以及MS14-064漏洞模块实现对浏览器的攻击
-
进入控制台
-
查询MS10-002可用的模块
-
查询并设置参数
- 可以看到默认的攻击机ip和端口就是kali虚拟机的,可以保持不变
-
启动攻击后生成了一个钓鱼网站
-
在靶机浏览器中访问此网站,一直未能建立会话
-
尝试另一种模块,还是无法实现会话(原因见问题1)
-
将靶机更换为winxp(英文原版)后利用同样的漏洞,但是由于靶机和攻击机版本差异太大,靶机无法识别攻击机使用的字符,会话建立失败
-
更改为使用ms14_064进行攻击
- 查看模块信息
- 设置参数
- 运行
- 建立会话成功,输入
sessions -i 1
获取靶机shell,尝试输入一些指令
- 为什么ms14_064不会产生字符识别问题?
-
MS10-002 漏洞利用中产生字符识别问题的原因是由于该漏洞是发生在 Internet Explorer 的标签页处理中,攻击者可以通过向浏览器中插入特定的标签来触发漏洞。因此,攻击者需要对浏览器的 User-Agent 和其他一些详细特征进行精确的识别,以便诱骗用户访问特定的恶意网站和页面,从而使漏洞生效。
-
而 MS14-064 漏洞则是发生在 Windows OLE(对象链接与嵌入)中,攻击者可以通过向用户发送包含特定代码的 Office 文档或者网页,让用户打开并启用 Windows OLE,从而利用漏洞进行攻击。因此,攻击者无需识别用户的浏览器特征。
2.3 一个针对office的攻击
- 查看模块相关信息
search office
- 一共有52个,我愿称之为漏洞矿山
- 选择第二个进行攻击尝试
use 1
exploit/windows/http/avaya_ccr_imageupload_exec
是 Metasploit 框架中一种可以利用 Avaya Contact Center的漏洞。攻击者可以利用该漏洞通过上传恶意图片文件触发服务器文件执行漏洞进而获取系统权限。
show options
查看参数
- 设置相关参数并运行
- 失败了
- 换一个模块进行攻击
29 exploit/windows/fileformat/office_ms17_11882
- 利用 Microsoft Office Equation Editor 缺陷,通过生成和利用 RTF 格式文档,来执行远程代码的漏洞利用模块。
- 将生成的rtf文件20212416xxn.rtf拷贝到靶机上并打开,等了很长时间会话也没有建立,也就是又失败了。
- 没关系,我们再换一个模块
33 exploit/windows/fileformat/office_word_hta
-
攻击者可以利用此模块创建一个包含恶意代码的文档,并将其发送给目标用户。如果用户使用漏洞版本的 Microsoft Word 打开该文档,并且启用了宏和 ActiveX 控件,则攻击者就可以在受害者计算机上执行任意命令。
-
查看参数
-
设置参数
-
在靶机上打开这个hta文件
-
会话成功建立
-
输入
sessions -i 1
,成功获取shell
2.4 成功应用任何一个辅助模块
search portscan
搜索与端口扫描相关的模块
- 选择其中一个试试
use 1
,查看模块信息
- 设置相关参数
- 进行端口扫描
3.问题及解决方案
- 问题1:任务2中win7的IE8无法攻破,把所有安全保护降到最低都没有办法。
- 问题1解决方案:将靶机更换为winxp(英文原版),winxp的IE浏览器为IE6
- 问题2:任务2中使用MS10-002 漏洞时靶机和攻击机间字符串版本不一致,攻击不成功
- 问题2解决方案:更换不需要字符串识别的漏洞MS14-064
4.学习感悟与思考
- 这次实践任务说难也难,说简单其实也简单,如果按照别人攻击成功的例子,使用一样的漏洞,不需要费太多劲就能做出来。但如果尝试使用不同的漏洞,就需要关注其实现攻击的原理,攻击成功需要靶机和攻击机的操作等等。但是这些获成功或失败的尝试并不是浪费,本次实践让我初步掌握了metasploit这一强大的漏洞渗透工具的使用,对于实践中尝试过的漏洞也有了一定的了解,受益匪浅。
参考资料
利用Kali Linux自带的MSF进行msf17-010漏洞模块(永恒之蓝漏洞)实现远程攻击
kali-msfconsole:演示-浏览器缓冲区溢出攻击
解决:windows虚拟机在VMware上只能访问百度,却不能访问其他网页的问题