初识
CALDERA是一个网络安全平台,旨在轻松自动化模拟攻击,协助红队,自动化事件响应
Github仓库:GitHub - mitre/caldera: Automated Adversary Emulation Platform
环境
-
Linux or MacOS
-
Python 3.7+ (with pip3)、GoLang 1.13+
安装环境
Linux
1.我们到GitHub上的MITER官方CALDERA主页,在Kali上使用GitHub的克隆命令去下载
git clone https://github.com/mitre/caldera.git --recursive --branch
2.源码下载好后进入目录,安装框架所需模块
cd caldera pip3 install -r requirements.txt
3.启动CALDERA攻击模块
python3 server.py --insecure
Mac
对于mac,还需要安装upx
brew install upx
4.当出现了如图的All systems ready
说明可以访问了
4.1.然后用chrome访问ip:8888
即可看到登录页面,默认账号为admin/admin
、red/admin
、blue/admin
4.2.如果不想用8888端口,可以修改conf/default.yml
或者登录进去之后,在CONFIGURATION
->configuration
下修改
攻击演示
攻击介绍
本次攻击演示会涉及到agents、abilities、adversaries、operations模块的利用
·agents连接到caldera的简单的客户端程序,用以接收指令,执行指令并将结果回传给服务端。目前默认的agent是使用go语言进行编写的,方便跨平台。
·abilities是描述ATT&CK矩阵内特定的某一项具体攻击技术(过程),用yml格式保存。
·adversaries配置文件是ATT&CK TTP
的集合,旨在主机或网络上创建特定效果。配置文件可用于攻击性或防御性用例,还允许上传自定义payload来作为战术的一部分进行使用
·operations可以使用许多可选配置启动操作,启动操作后,用户可以通过单击操作GUI模式中的"下载报告"按钮,以JSON格式导出操作报告。
·具体详情参考 '概念'
输出结果
初级教程:靶机桌面会先弹出记事本,等记事本消失后再弹出计算器,其次弹出powershell,后台会执行whoami、ipconfig、创建注册表删除注册表、创建a.txt,a写入a.txt,删除a.txt和删除powershell操作
攻击流程
1.选择agents模块,打开模块后,先点击” deploy an agent”(建立一个代理)
2.然后根据我们的需求选择payload类型和靶机的操作系统,我选择的54ndc47(sandcat)
3.在这里我选择windows系统的payload
4.app.contact.http这一栏输入CALDERA服务端的IP和端口号(默认8888)。
5.复制其中任意一个payload,在靶机上(win+x)打开powershell,去执行生成的payload
6.回到caldera的agents界面,可以看到靶机已上线
·以上为靶机上线caldera操作
这里初级用法我是自己内置的手法去攻击,方便内部演示。大家可直接学习中级用法,和高级用法
7.初级用法
7.1用内置好的手法去攻击,这个方式更有利于初学者,上手方便
·选择adversaries,选择攻击