Pentesting Tools

Project Apeman : A Comprehensive Guide To Graph-Based AWS Security Analysis

Project Apeman is an advanced tool for security professionals, designed to streamline the analysis of AWS environments using a graph-based approach.

This guide offers detailed instructions on setting up and deploying Project Apeman, including system requirements, installation steps, and data ingestion. Get ready to enhance your security posture with this powerful and efficient tool.

System Requirements

  • Tested On
    • Windows 11
    • Ubuntu 22
  • 12 GB RAM (This can be reduced in the compose.yaml depending on AWS env size)

Dependencies

  • Docker
  • Docker compose
  • Python 3
sudo apt install python
  • Python Virtual Environment
sudo apt install python3-venv

Running Apeman

Starting The Service

git clone git@github.com:hotnops/apeman.git
cd apeman
mkdir import // THIS IS REALLY IMPORTANT
sudo docker compose -f compose.yaml up --build

Creating A Venv

A python virtual environment is recommended to ingest the data

cd utils
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt

Initializing The AWS Schema

The first time that you start apeman, the AWS nodes and relationships need to be added to the graph. This includes all services, actions, resource types, and condition keys.

THIS ONLY NEEDS TO BE RUN ONCE! If AWS updates a service or adds an action, then you will need to re-run this command to honor the new changes. To do this, run the following command:

// From apeman/utils
python -m init.aws_initialize -o ../import

For more information click here.

Varshini

Varshini is a Cyber Security expert in Threat Analysis, Vulnerability Assessment, and Research. Passionate about staying ahead of emerging Threats and Technologies.

Recent Posts

pgrep Command in Linux: Find and Filter Running Processes

The pgrep command in Linux finds the PIDs of running processes based on a name or other…

1 hour ago

unlink Command in Linux: Remove a Single File or Symlink

The unlink command in Linux removes a single file by deleting its directory entry. It is a…

1 hour ago

How to Check Open Ports in Linux: nmap, netcat, and Bash

When troubleshooting a network connection or configuring a firewall, the first question is whether a…

2 hours ago

ifconfig Command in Linux: Configure Network Interfaces

The ifconfig command in Linux displays and configures network interfaces. It can assign IP addresses, bring interfaces…

2 hours ago

groupdel Command in Linux: Remove a Group and Audit Files

The groupdel command in Linux removes a group from the system. It deletes the group's entry from /etc/group and /etc/gshadow,…

1 day ago

wc Command in Linux: Count Lines, Words, Characters, and Bytes

The wc command in Linux counts lines, words, characters, and bytes in files or standard input. It…

1 day ago