如何安装Mitre CALDERA并配置SSL证书
克隆仓库
|
|
进入CALDERA目录
|
|
安装PIP及依赖
|
|
安装Go
安装Go在技术上是可选的,但它能动态编译代理可执行文件,并更好地规避AV检测。
- 从https://golang.org/doc/install下载Go
- 解压下载的文件(文件名可能不同)
1
sudo tar -C /usr/local -xzf go1.15.2.linux-amd64.tar.gz
- 更新PATH:在
$HOME/.bashrc
文件中添加以下行1
export PATH=$PATH:/usr/local/go/bin
- 关闭终端重新打开使PATH更改生效,或使用
source ~/.bashrc
命令 - 检查版本确认Go安装成功
1
go --version
启动服务器
- 创建CALDERA配置文件副本
local.yml
,并编辑设置自己的用户和安全密码1
cp ~/caldera/conf/default.yml ~/caldera/conf/local.yml
- 编辑
local.yml
文件,更改用户名和密码为更安全的设置 - 启动CALDERA服务器
1
python3 server.py
为CALDERA Web界面设置SSL通信
如果CALDERA Web界面可通过不受信任的网络访问,应按照以下说明启用加密通信。加密通信由HAProxy工具处理。
安装HAProxy
|
|
配置SSL
- 登录到
localhost:8888
的CALDERA Web界面,转到Advanced–>Configuration菜单 - 从配置菜单启用SSL插件。现在可以通过
https://<your ip>:8443
访问CALDERA Web界面 - 还需要从CALDERA Web界面(advanced–>configuration)更新
app.contact.http
设置,包含https(使用服务器的IP或域名更新)
注意:确保URL末尾不包含斜杠(/)。 不要忘记单击绿色“update”按钮,并在配置更改后重启服务器。
配置app.contact.http
设置后,将看到使用http联系方法部署代理的更新命令(例如54ndc47)。
默认使用自签名证书进行SSL加密。如果需要,可以用自己的证书替换~/caldera/plugins/ssl/conf/insecure_certificate.pem
处的自签名证书。
创建自己的签名/信任证书
尝试使用Let’s Encrypt。需要拥有域名并配置DNS权威记录指向CALDERA服务器的IP地址。
使用以下命令创建组合pem文件:
|
|
更改后重启CALDERA服务器。
处理自签名证书信任问题
如果使用自签名证书,任何获取远程代理的PowerShell命令都会抱怨无法建立信任关系。需要在执行代理命令之前运行以下PowerShell命令绕过信任检查(仅适用于使用默认自签名证书的情况):
|
|
现在您的CALDERA服务器已完全设置好并准备投入使用。查看“Attack Emulation: Atomic Red Team, CALDERA, and More”课程,了解更多关于使用Mitre CALDERA的信息,包括超过25个动手实验室。https://wildwesthackinfest.com/online-training/attack-emulation-atomic-red-team-caldera-and-more/