Installing Caldera on ParrotOS: A Smoother Experience Compared to Ubuntu and Kali Linux

This entry is part 9 of 14 in the series Red Team Engagements

Views: 8

MITRE Caldera is a powerful adversary emulation platform used for cybersecurity testing and red teaming. However, recent attempts to install Caldera on Ubuntu and Kali Linux have been met with issues—primarily due to the newer Python 3.13 versions. In contrast, installing Caldera on ParrotOS 6.3 (Lorikeet) has been a flawless experience.

This blog post provides a step-by-step guide to installing Caldera on ParrotOS and explains why it works better than Ubuntu or Kali.


Before proceeding with the installation, let’s check the OS details and Python version:

lsb_release -a

Output:

No LSB modules are available.
Distributor ID: Debian
Description:    Parrot Security 6.3 (lorikeet)
Release:        6.3
Codename:       lory

Check Python version:

python3 --version

Output:

Python 3.11.2

Observation: Parrot Security 6.3 (lorikeet) ships with Python 3.11.2, whereas Ubuntu and Kali Linux have Python 3.13+, which could be the root cause of the installation issues.


These requirements are for the computer running the core framework:

  • Any Linux or MacOS
  • Python 3.9+ (with Pip3)
  • Recommended hardware to run on is 8GB+ RAM and 2+ CPUs
  • Recommended: GoLang 1.17+ to dynamically compile GoLang-based agents.
  • NodeJS (v16+ recommended for v5 VueJS UI)

Follow these steps to install Caldera on ParrotOS.

1. Verify Go and Pip Installation

Ensure that Go and Pip are installed and accessible:

go --version
pip --version

If Go and Pip are not installed, install them using:

sudo apt update && sudo apt install golang python3-pip -y

2. Create a Virtual Environment

python3 -m venv CalderaVENV

Navigate into the newly created virtual environment:

cd CalderaVENV

Activate the virtual environment:

source bin/activate

3. Install Nodeenv

pip install nodeenv

Initialize Node.js environment:

nodeenv -p

4. Clone the Caldera Repository

git clone https://github.com/mitre/caldera.git --recursive

Navigate into the cloned repository:

cd caldera

5. Install Dependencies

pip3 install -r requirements.txt

6. Start the Caldera Server

python3 server.py --insecure --build

You will receive the below output once Caldera is fully UP and running. Ignore the Docker related errrors as they are irrelavant.

Login to the Caldera URL using http://ipaddess:8888.

Caldera Default Credentials
username:  admin
password:  admin

1. Python Compatibility

  • ParrotOS runs Python 3.11.2 by default, which seems to be better suited for Caldera’s dependencies.
  • Ubuntu and Kali Linux, with Python 3.13+, may introduce compatibility issues with some packages in requirements.txt.

2. Debian Stability

  • ParrotOS is based on Debian and maintains a balance between up-to-date security tools and system stability.
  • Ubuntu and Kali, being more cutting-edge, may have newer packages that break compatibility.

3. Flawless Virtual Environment Handling

  • The virtual environment setup in ParrotOS works without issues, ensuring dependencies are correctly isolated.

If you are facing installation issues with Caldera on Ubuntu or Kali Linux, consider using ParrotOS. The process is smoother, and all dependencies install without issues. The key takeaway here is the importance of Python version compatibility—using a stable Python 3.11 release on ParrotOS eliminates many of the struggles encountered on other distributions.


References

Series Navigation<< Atomic Red Team – A Framework for Threat Emulation: PART IICaldera: Simulating a Complete Attack Chain >>
nl NL en EN fr FR