Description
Description
I have deployed OpenBAS alongside Caldera using Docker Desktop for Windows. The setup appears to be functional, and I have confirmed that OpenBAS and Caldera can communicate correctly. Below are the steps I followed:
✅ Deployed OpenBAS and Caldera using Docker Compose
✅ Deployed a Sandcat (Linux) agent in Caldera
✅ Caldera successfully detects the agent
✅ The OpenBAS container can successfully ping the Sandcat agent's IP
However, when I attempt to execute an inject using Caldera within OpenBAS, the execution fails with the following error:
Environment
- Operating System: Windows 11
- Platform: Docker Desktop
- OpenBAS Version: openbas 1.14.0
- JAVA Virtual Machine: 21.0.6+7-LTS
- PostgreSQL: 17.4
- RabbitMQ: 4.0.7
- Telemetry manager: Enable
docker-compose.yml Configuration: docker-compose.txt
caldera.yml Configuration: caldera.txt
docker-compose.caldera.yml Configuration: docker-compose.caldera.txt
docker-compose.caldera-executor.yml Configuration: docker-compose.caldera-executor.txt
docker-compose.caldera-injector.yml Configuration: docker-compose.caldera-injector.txt
.env Configuration: .env.txt
Agent Details
Status: alive, trusted
Paw: zusddx
Host: 190321efbac9 (172.18.0.8)
Display Name: 190321efbac9$root
Username: root
Privilege: Elevated
Last Seen: 3/24/2025, 9:00:25 PM
Created: 3/24/2025, 8:31:30 PM
Architecture: amd64
Platform: 798
PID: 798
PPID: 671
Executable Name: splunkd
Location: /usr/src/app/splunkd
Executors: proc, sh
Host IP Addresses: 172.18.0.8
Peer-to-Peer Proxy Receivers: No local P2P proxy receivers active.
Peer-toPeer Proxy Chains: Not using P2P agents to reach C2.
Reproducible Steps
- Deployed OpenBAS and Caldera on Docker Desktop for Windows.
Command: docker compose -p openbas -f docker-compose.yml -f docker-compose.caldera.yml -f docker-compose.caldera-executor.yml -f docker-compose.caldera-injector.yml up -d - Deployed a Sandcat (Linux) agent in Caldera, and it was detected by both OpenBAS and Caldera.
- Verified that the OpenBAS container can ping the Sandcat agent.
- Created a simulation in OpenBAS and added a Caldera inject, e.g., "Access /etc/master.passwd (Local)".
- The execution fails with the error "ERROR Caldera failed to execute the ability on agent root (temporary injector not spawned correctly)".
- If I run the same OpenBAS agent inject type, it stays in "Pending" indefinitely.
Expected Output
The simulation should execute successfully on the Sandcat agent via Caldera and return the execution results.
Actual Output
ERROR Caldera failed to execute the ability on agent root (temporary injector not spawned correctly)
This issue might be related to:
Failure to start the temporary injector in OpenBAS for communication with Caldera.
Incorrect OpenBAS configuration for communicating with Caldera (e.g., API key or environment variable issue).
Permission issues in Caldera preventing the execution of abilities via API.
If anyone can confirm if any adjustments are needed to allow OpenBAS to execute injects via Caldera, that would be greatly appreciated!