基于Armitage的MSF自动化集成攻击实践
基于Armitage的MSF自动化集成攻击实践
目录
- 0x01 实践环境
- 0x02 预备知识
- 0x03 Armitage基础配置
- 0x04 Nmap:Armitage下信息搜集与漏洞扫描
- 0x05 Armitage下漏洞自动化攻击实践
- 0x06 Armitage下Auxiliary辅助模块应用
- 0x07 Armitage下网络欺诈综合应用
- 0x08 实践中遇到的问题及解决过程
- 0x09 实践总结与体会
- 0x0a 参考资料
0x01 实践环境
- macOS下Parallels Desktop虚拟机中(网络源均设置为共享网络模式):
- Kali Linux - 64bit(攻击机,IP为
10.211.55.10) - Windows 7 - 64bit(靶机,IP为
10.211.55.14) - Windows XP Professional Version 2002 Service Pack 3(靶机,IP为
10.211.55.16)
- Kali Linux - 64bit(攻击机,IP为
0x02 预备知识
Armitage基本介绍:
- Armitage是一款基于Java的Metasploit图形界面化的攻击软件,可以用它结合 Metasploit中已知的exploit来针对主机存在的漏洞自动化攻击。通过命令行的方式使用Metasploit难度较高,需要记忆的命令过多,而Armitage完美的解决了这一问题,用户只需要简单的点击菜单,就可以实现对目标主机的安全测试和攻击。Armitage良好的图形展示界面,使得攻击过程更加直观,用户体验更好。因其操作的简单性,尤其适合Metasploit初学者对目标系统进行安全测试和攻击。
Armitage攻击目标主机的的一般方法:
- 目标网络扫描:为了确定目标主机所在网络结构的网络拓扑,为后续目标主机信息搜索和攻击奠定基础。
- 目标主机信息搜集:为了收集目标主机的漏洞信息,根据收集到的漏洞信息可以利用Armitage在Metasploit中自动搜索合适的攻击模块。
- 目标主机攻击模块搜索:主要方法是依据发现的漏洞信息寻找可以突破目标系统的现有漏洞利用模块,为具体的攻击方案制定提供尽可能多的可靠支撑。
0x03 Armitage基础配置
- Armitage官网妹子镇楼:

- 打开Kali攻击机,在终端中输入
/etc/init.d/postgresql start命令启动postgresql服务:

- 在msfconsole中输入
armitage命令启动Armitage(在终端中直接输入也可以):

也可以通过菜单栏图标直接打开Armitage! 对就是这个一脸坏笑的科技感十足的妹子233

界面如下:

0x04 Nmap:Armitage下信息搜集与漏洞扫描
- 由于本次实践中靶机的IP已知,这里可以直接导入靶机的IP
10.211.55.16,不过更一般的方法是根据已知信息推导出目标主机所在网段的IP,扫描目标网段完整信息,确认目标网络拓扑结构以实施网络侦查。在Armitage上方工具栏中依次选择Hosts->Nmap Scan->Quick Scan(OS detect):

填写靶机所在网段10.211.55.0/24:

唔...这不就同样给靶机扫出来了吗!

- 选中靶机
10.211.55.16,右键选择Services,查看靶机上开启的服务:

可见靶机的139端口开启了netbios-ssn服务,445端口开启了microsoft-ds服务~ - 选中靶机
10.211.55.16,右键选择Scan,Armitage会调用Metasploit的漏洞扫描模块,定向扫描靶机,寻找存在的漏洞,为下一步确定攻击方法提供参考依据:

可见类似前几次实验在Metasploit中手动配置主机号、端口号等设置现在统统直接自动化了! - 利用上一步中漏洞扫描得到的漏洞信息,自动搜索Metasploit攻击模块库,寻找合适的攻击模块。选中靶机
10.211.55.16,依次选择菜单栏Attacks->Find Attacks,Armitage会开始自动搜索寻找合适的攻击模块:

- 搜索完成,Happy hunting_

0x05 Armitage下漏洞自动化攻击实践
5.1 ms08_067_netapi(CVE-2008-4250):Windows远程溢出漏洞自动化攻击
ms08_067漏洞介绍:
This module exploits a parsing flaw in the path canonicalization code of NetAPI32.dll through the Server Service. This module is capable of bypassing NX on some operating systems and service packs. The correct target must be used to prevent the Server Service (along with a dozen others in the same process) from crashing. Windows XP targets seem to handle multiple successful exploitation events, but 2003 targets will often crash or hang on subsequent attempts. This is just the first version of this module, full support for NX bypass on 2003, along with other platforms, is still in development.
ms08_067_netapi是一款Metasploit中有点老的溢出攻击载荷,攻击可以获得一个相对高的权限。
CVE ID:CVE-2008-4250
原理:攻击者利用受害者主机默认开放的SMB服务端口445,发送特殊RPC(Remote Procedure Call 远程过程调用)请求,通过MSRPC over SMB通道调用Server程序中的
NEtPathCanonicalize()函数时触发,NetPathCanonicalize()函数在远程访问其他主机时,会调用NetpwPathCanonicalize()函数,对远程访问的路径进行规范化,而在NetpwPathCanonicalize()函数中发生了栈缓冲区内存错误,造成可被利用实施远程代码执行。危害:攻击者能远程主动发起对漏洞主机端口的扫描,并且能直接获得漏洞主机的系统权限,属于最高严重级别的漏洞。
在利用Armitage完成对靶机的攻击模块自动化搜索以后,选中
10.211.55.16主机右键可以发现多了Attack菜单。依次选择Attack->smb->ms08_067_netapi菜单,选择smb漏洞下的ms08_067漏洞对XP靶机进行攻击(也可以在Armitage左侧树型目录下依次选择exploit->windows->smb->ms08_067_netapi找到该漏洞):

在弹出的攻击配置对话框中配置LHOST/RHOST、LPORT/RPORT等信息(一般会自动配置好,这里把LPORT改成学号),
Targets处配置靶机的系统(一般默认自动检测靶机系统),勾选Use a reverse connection,点击Launch开始攻击:

Armitage会进行一系列自动化攻击!攻击完成后,可以看到靶机的图标会发生明显变化:

Armitage会自动建立一个驻留在内存的shellcode即Meterpreter。在攻击成功的靶机上右键选择
Meterpreter 1->Interact->Command Shell,输入dir命令查看靶机C:\WINDOWS\system32目录下的系统文件:

攻击完成(⁎⁍̴̛ᴗ⁍̴̛⁎):

在攻击成功的靶机上右键选择
Meterpreter 1->Interact->Meterpreter Shell,输入getuid命令查看靶机当前用户的权限是SYSTEM权限:

攻击完成(⁎⁍̴̛ᴗ⁍̴̛⁎):

5.2 ms14_064_ole_code_execution(CVE-2014-6352):IE远程代码执行漏洞自动化攻击
ms14_064_ole_code_execution漏洞简介:
This module exploits the Windows OLE Automation array vulnerability, CVE-2014-6332. The vulnerability is known to affect Internet Explorer 3.0 until version 11 within Windows 95 up to Windows 10, and no patch for Windows XP. However, this exploit will only target Windows XP and Windows 7 box due to the Powershell limitation. Windows XP by defaults supports VBS, therefore it is used as the attack vector. On other newer Windows systems, the exploit will try using Powershell instead.
CVE ID:CVE-2014-6352
原理及危害:OLE(对象链接与嵌入)是一种允许应用程序共享数据和功能的技术。UAC(User Account Control,用户帐户控制)是微软为提高系统安全而在Windows Vista中引入的新技术。Microsoft Windows在OLE组件的实现上存在安全漏洞,未经身份验证的远程攻击者可利用此漏洞执行远程代码。此漏洞源于没有正确处理含有OLE对象的Office文件。
受影响系统版本:
- Microsoft Windows Vista
- Microsoft Windows Server 2012
- Microsoft Windows Server 2008
- Microsoft Windows RT
- Microsoft Windows 8.1
- Microsoft Windows 8
- Microsoft Windows 7
在Armitage左侧树型目录下依次选择
exploit->windows->browser->ms14\_064\_ole\_code\_execution找到该漏洞并双击打开配置界面开始配置。注意!此处需要把AllowPowershellPrompt置为1!!然后配置好LHOST/RHOST、LPORT/RPORT等信息(把LPORT改成学号,其余均取默认值),Targets处配置靶机的系统Windows XP,点击Launch开始攻击:

Armitage会进行一系列自动化攻击!

靶机打开IE浏览器,输入meterpreter提供的URL
http://10.211.55.10:8080/0KO2YrGZdZ1viW/SrEsdO/并回车,在靶机看来似乎并没有发生什么!然而此时Armitage中靶机的图标已发生明显变化,表明Kali攻击机已攻击成功!!


开始操作一波吧_在攻击成功的靶机上右键选择
Meterpreter 1,发现除了上个攻击实践中查看Command Shell和Meterpreter Shell功能之外,还具有查看浏览器文件、进程、截屏等功能!- 选择
Explore->Browse Files查看浏览器文件:
- 选择
Explore->Show Processes查看靶机进程(这个比较有用啊emmm):

- 选择
Explore->Screenshot进行截屏(听说你是截屏狂魔?):

- 选择
Explore->Webcam shot调一波网络摄像头(颜控必备233):

什么?!竟然没装摄像头!欺骗我感情啊o(︶︿︶)o
- 选择
5.3 ms17_010_eternalblue(CVE-2017-0143):“永恒之蓝”自动化攻击
ms17_010_eternalblue漏洞介绍:
This module is a port of the Equation Group ETERNALBLUE exploit, part of the FuzzBunch toolkit released by Shadow Brokers. There is a buffer overflow memmove operation in Srv!SrvOs2FeaToNt. The size is calculated in Srv!SrvOs2FeaListSizeToNt, with mathematical error where a DWORD is subtracted into a WORD. The kernel pool is groomed so that overflow is well laid-out to overwrite an SMBv1 buffer. Actual RIP hijack is later completed in srvnet!SrvNetWskReceiveComplete. This exploit, like the original may not trigger 100% of the time, and should be run continuously until triggered. It seems like the pool will get hot streaks and need a cool down period before the shells rain in again. The module will attempt to use Anonymous login, by default, to authenticate to perform the exploit. If the user supplies credentials in the SMBUser, SMBPass, and SMBDomain options it will use those instead. On some systems, this module may cause system instability and crashes, such as a BSOD or a reboot. This may be more likely with some payloads.
EternalBlue是2017年席卷全球的WannaCry勒索病毒的罪魁祸首,是微软近些年来最为严重的远程代码执行漏洞,可以直接获得系统权限。百度上EternalBlue一般指去年爆发的WannaCry,实际上是该勒索病毒软件利用了NSA泄露的危险漏洞EternalBlue进行传播。关于WannaCry详见WannaCry - 百度百科以及我去年写的博客应对WannaCry勒索危机之关闭445端口等危险端口——以本人Windows7系统为例~
CVE ID:CVE-2017-0143
原理:
- 利用Metasploit中近期更新的针对ms17-101漏洞的攻击载荷进行攻击获取主机控制权限。
- 利用windows系统的Windows SMB远程执行代码漏洞向Microsoft服务器消息块(SMBv1)服务器发送经特殊设计的消息,能允许远程代码执行。
主要用途:
- Windows的SMBv1、SMBv2远程溢出漏洞,对应MS17_010,主要针对445端口
受影响系统版本:
- 较广,从WindowsXP到Windows server 2012
在Armitage菜单栏依次选择
Hosts->Nmap Scan->Quick Scan(OS detect)并填写靶机所在网段10.211.55.0/24搜索存活的主机:

发现两台可以攻击的靶机,一台XP(IP为10.211.55.16)一台win7(IP为10.211.55.14):

依次选择菜单栏
Attacks->Find Attacks,Armitage会开始自动搜索靶机寻找合适的攻击模块,对于win7右键依次选择Attack->smb,可以发现Armitage提供了5个可供攻击的smb漏洞,选择check exploits检查这些漏洞是否能被攻击:

可以看到除了第一个漏洞ipass_pipe_exec没有检测结果不知道能否进行攻击之外其他4个全部阵亡,要么不可利用(not exploitable)要么检测不出来(not support check):


并没有找到所谓的eternalblue,怎么破?别着急,这里我们还是在Armitage左侧树型目录下依次选择
exploit->windows->smb->ms17_010_eternalblue找到传说中的eternalblue永恒之蓝并双击打开配置界面,相关配置均用默认值即可:

特别注意的是,eternalblue是针对445端口进行攻击的,攻击成功与否关键在于靶机是否开放了这个端口!!!点击
Launch开始攻击win7:


攻击不成功?!再来!重新双击打开eternalblue配置界面,勾选
Use a reverse connection,点击Launch开始攻击:

看看win7靶机的图标,攻击成功!!!

查看session并进入,获取shell:

接下来该干什么,你懂的_Happy hunting_不过另一台靶机就没那么给面子了,可能由于eternalblue只能攻击Windows 7和Windows server 2008,攻击xp时会显示操作系统不匹配攻击不成功(._.)

5.4 office_ms17_11882(CVE-2017-11882):Office远程代码执行漏洞自动化攻击
Microsoft Office CVE-2017-11882漏洞介绍:
Module exploits a flaw in how the Equation Editor that allows an attacker to execute arbitrary code in RTF files without interaction. The vulnerability is caused by the Equation Editor, to which fails to properly handle OLE objects in memory.
这是一个潜伏了17年之久的远程代码执行漏洞。该漏洞为Office内存破坏漏洞,影响目前流行的所有Office版本。原理是利用了Office的一个EQNEDT32.EXE(公式编辑器)组件,攻击者能够以当前登录的用户的身份执行任意命令。详细请参照打开文档变肉鸡:潜伏17年的“噩梦公式”Office漏洞攻击分析。
CVE ID:CVE-2017-11882
受影响系统版本:
- Office 365
- Microsoft Office 2000
- Microsoft Office 2003
- Microsoft Office 2007 Service Pack 3
- Microsoft Office 2010 Service Pack 2
- Microsoft Office 2013 Service Pack 1
- Microsoft Office 2016
在win7靶机上安装Microsoft Office 2016:

在Kali攻击机中依次输入以下命令生成doc测试文件:
- 安装启动nginx:
apt-get install nginx
cd /usr/share/nginx/html/
systemctl start nginx
- 下载生成doc的python脚本:
git clone https://github.com/Ridter/CVE-2017-11882.git
cd CVE-2017-11882/
- 生成测试文件
cve.doc(靶机在打开该测试文件时同时会自动打开计算器程序calc.exe,以验证Office CVE-2017-11882漏洞的存在):python Command43b_CVE-2017-11882.py -c "cmd.exe /c calc.exe" -o cve.doc
- 将
cve.doc放到网站根目录:cp cve.doc /usr/share/nginx/html/
ls /usr/share/nginx/html/

- 安装启动nginx:
用ncat向靶机发送
cve.doc:- win7靶机用命令行进入ncat目录,打开监听:
ncat.exe -lv 5314 > cve.doc
- Kali攻击机建立连接并传输:
ncat -nv 10.211.55.14 5314 < cve.doc

- win7靶机用命令行进入ncat目录,打开监听:
靶机进入ncat目录,打开
cve.doc,成功弹出calc.exe计算器程序,测试成功:


在Armitage左侧树型目录下依次选择
exploit->windows->fileformat->office\_ms17\_11882找到该漏洞并双击打开配置界面开始配置,注意有两处配置需要手动修改:- FILENAME+一栏填写生成doc文件的名字
cve2.doc! - 设置URI路径时要与上面生成doc时配置的路径一致!

- FILENAME+一栏填写生成doc文件的名字
点击
Launch开始自动化攻击流程:

注意这条提示信息!它指明了刚刚MSF生成的
cve2.doc所在路径!

然后我们进入该目录并用ncat把cve2.doc传到靶机上:

win7靶机进入ncat目录,打开
cve2.doc,触发访问10.211.55.10:8080/5314就会得到反弹到5314端口的TCP会话:


于是可怜的靶机又被我攻陷了哈哈哈哈哈!!

来抓个屏笑一个?_
5.5 CVE-2018-4878:Adobe Flash 0day漏洞自动化攻击
Adobe Flash CVE-2018-4878漏洞介绍:
2018年2月1日,Adobe官方发布了Adobe Flash Player系列产品的安全通告(APSA18-01),一个最新的Adobe Flash 0day漏洞被发现针对韩国地区的人员发起攻击,该0day漏洞编号为CVE-2018-4878,目前最新版本28.0.0.137及其以前版本的Adobe Flash Player均受漏洞影响。直到2月5日,Adboe才发布补丁来修复此0day漏洞。
攻击者通过构造特殊的Flash链接,并将恶意Flash链接嵌入Office文档、网页或者桌面应用,当用户用浏览器/邮件/Office访问此Flash链接时,会被“远程代码执行”,并且直接被getshell。
受影响系统版本:
|产品|版本|平台|
|:--基于Armitage的MSF自动化集成攻击实践的更多相关文章
- 基于Kali的一次DDos攻击实践
镜像下载.域名解析.时间同步请点击 阿里云开源镜像站 一.什么是DDos攻击 DDOS(Distributed Denial of Service),即分布式拒绝服务,是一种针对于网络服务的攻击行为. ...
- Apache DolphinScheduler 的持续集成方向实践
今天给大家带来的分享是基于 Apache DolphinScheduler 的持续集成方向实践,分享的内容主要为以下六点: " 研发效能 DolphinScheduler CI/CD 应用案 ...
- MSF基础攻击实践报告
MSF基础攻击实践 MSF的六个模块:exploit,encoder,payload,aux,post,nops exploit——渗透攻击模块 测试者利用它来攻击一个系统,程序,或服务,以获得开发者 ...
- MSF MS11-050/10-087/Adobe攻击实践及内存保护技术
MSF MS11-050/10-087/Adobe攻击实践及内存保护技术 内存攻击指的是攻击者利用软件安全漏洞,构造恶意输入导致软件在处理输入数据时出现非预期错误,将输入数据写入内存中的某些特定敏感位 ...
- 自动化打包资源混淆集成python实践----资源混淆
前面自动化打包资源混淆集成python实践----打包一文讲述了四种打包方案,以及美团打包方案.apk注释添加渠道号方案的实现.这里讲集成资源混淆. 1.资源混淆带来的好处: 1)对资源文件起一定的保 ...
- MSF MS11-050攻击实践及内存保护技术
内存攻击指的是攻击者利用软件安全漏洞,构造恶意输入导致软件在处理输入数据时出现非预期错误,将输入数据写入内存中的某些特定敏感位置,从而劫持软件控制流,转而执行外部输入的指令代码,造成目标系统被获取远程 ...
- 字节跳动流式数据集成基于Flink Checkpoint两阶段提交的实践和优化
背景 字节跳动开发套件数据集成团队(DTS ,Data Transmission Service)在字节跳动内基于 Flink 实现了流批一体的数据集成服务.其中一个典型场景是 Kafka/ByteM ...
- 使用sklearn进行集成学习——实践
系列 <使用sklearn进行集成学习——理论> <使用sklearn进行集成学习——实践> 目录 1 Random Forest和Gradient Tree Boosting ...
- fir.im weekly - 「 持续集成 」实践教程合集
我们常看到许多团队和开发者分享他们的持续集成实践经验,本期 fir.im Weekly 收集了 iOS,Android,PHP ,NodeJS 等项目搭建持续集成的实践,以及一些国内外公司的内部持续集 ...
随机推荐
- LeetCode专题-Python实现之第27题:Remove Element
导航页-LeetCode专题-Python实现 相关代码已经上传到github:https://github.com/exploitht/leetcode-python 文中代码为了不动官网提供的初始 ...
- Hbase王国游记之:Hbase客户端API初体验
§历史回顾 2018年岁末,李大胖朦胧中上了开往Hbase王国的车,伴着一声长鸣,列出缓缓驶出站台,奔向无垠的广袤. (图片来自于网络) 如不熟悉剧情的,可观看文章: 五分钟轻松了解Hbase列式存储 ...
- SLAM入门之视觉里程计(1):特征点的匹配
SLAM 主要分为两个部分:前端和后端,前端也就是视觉里程计(VO),它根据相邻图像的信息粗略的估计出相机的运动,给后端提供较好的初始值.VO的实现方法可以根据是否需要提取特征分为两类:基于特征点的方 ...
- [PHP] PHP多个进程配合redis的有序集合实现大文件去重
1.对一个大文件比如我的文件为 -rw-r--r-- 1 ubuntu ubuntu 9.1G Mar 1 17:53 2018-12-awk-uniq.txt 2.使用split命令切割成10 ...
- Linux文件系统的基本结构
Linux文件系统结构 通过下面两张图片来认识一下Linux文件系统的结构. 当前工作目录 实践: 文件名称 这些规则不仅适用于文件,也适用于文件夹. 实践: ls命令 ls命令表示列出当前工作目录的 ...
- Flask 系列之 部署发布
说明 操作系统:Windows 10 Python 版本:3.7x 虚拟环境管理器:virtualenv 代码编辑器:VS Code 实验目标 通过 Windows 的 WSL,将我们的项目网站部署到 ...
- 20190325-HTML框架、audio标签、vedio标签、source标签、HTML表单
目录 1.HTML框架 frameset:框架标记 frame:框架内文件 iframe:内嵌框架 2.audio标签 src:URL(可以用source标签替代) autoplay:自动播放 pre ...
- js 浏览器兼容css中webkit、Moz、O、ms...写法封装(es6语法)
/** *浏览器兼容写法封装 */ let elementStyle = document.createElement('div').style let vendor = (() => { le ...
- Vue:如何在地图上添加自定义覆盖物(点)
目录 如何在地图上添加自定义覆盖物(点) 首发日期:2019-1-25 如何在地图上添加自定义覆盖物(点) 此文重点是在地图上标点,所以就省去引入百度地图的步骤了. 先给一下最终的效果. 这个效果主要 ...
- 微信小程序 从含有tabbar的页面跳转到不含有tabbar的页面
如何离开含有tabbar的页面 在微信小程序开发过程中,我们会碰到从某页跳转到一个含有tabbar的页面的需求, 用 wx.navigateTo({url: '...',}) 不起作用,需要使用 w ...
- 基于Kali的一次DDos攻击实践
