This project aims to better my understanding of Command and Control (C2) servers and expand my defensive skills against such threats. The project includes a C2 server and client written in Python, demonstrating basic interactions between a server and multiple clients.
- Python 3.x
- Python packages:
- cryptography
- requests
- AWS account for deployment (Free Tier)
- Create an EC2 instance on AWS. (Free tier eligible) (Ubuntu Server 22.04 LTS)
- Configure security groups to allow traffic on the desired port (9999).
- Add a custom inbound TCP rule to allow traffic on port 9999.
- Optionally-SortOfNotOptionally, allow traffic on port 80 for HTTP.
- Clone the repository:
git clone https://github.com/cwsecur1ty/C2-Server.git cd C2-Server-Project
- Install required Python packages:
pip install cryptography requests
- Configure the server:
- Update Config/config.json with any needed changes (usually none).
C2-Server/
│
├── c2_server.py
├── Stagers/
│ ├── python_stager.py
│ └── c2_client.py
└── Config/
└── config.json