Home

Awesome

Cloud Container Attack Tool (CCAT :cloud::cat2:)

Rhino PyPI GitHub license PRs Welcome

Cloud Container Attack Tool (CCAT) is a tool for testing security of container environments.

<img src="https://raw.githubusercontent.com/RhinoSecurityLabs/ccat/master/docs/images/ccat_new_main_menu.png" width="1000"/>

Quick reference

Requirements

Installation

We recommend using the provided Docker image to run CCAT, so that you will not face any difficulty with the required dependencies on your own system.

Install CCAT from source

  $ git clone https://github.com/RhinoSecurityLabs/ccat.git
  $ cd ccat
  $ python3 setup.py install
  $ python3 ccat.py

Use CCAT's Docker Image

Warning: Running this command will mount your local AWS configuration files into the Docker container when it is launched. This means that any user with access to the container will have access to your host computer's AWS credentials.

Warning: Running this command will mount your local Unix socket that Docker daemon listens on by default into the Docker container when it is launched. This means that users with access to the container will have access to your Docker daemon, meaning they could escape to your host computer with ease.

  $ docker run -it -v ~/.aws:/root/.aws/ -v /var/run/docker.sock:/var/run/docker.sock -v ${PWD}:/app/ rhinosecuritylabs/ccat:latest

Getting Started

Example Usage

Below is an example scenario to demonstrate the usage of CCAT.

Starting with compromised AWS credentials, the attacker enumerates and explores ECR repositories. Then, the attacker found that they use NGINX Docker image and pulled that Docker image from ECR. Furthermore, the attacker creates a reverse shell backdoor into the target Docker image. Finally, the attacker pushes the backdoored Docker image to ECR.

Exploitation Route:

<img src="https://raw.githubusercontent.com/RhinoSecurityLabs/ccat/master/docs/images/ccat_scenario_diagram.png" width="1000"/>

Roadmap

Disclaimer