/ _ \_ __ ___ _ __ ___ ___| |_| |__ ___ __ _ _ __ / _ \_ __ _____ ___ _
/ /_)/ '__/ _ \| '_ ` _ \ / _ \ __| '_ \ / _ \/ _` | '_ \ / /_)/ '__/ _ \ \/ / | | |
/ ___/| | | (_) | | | | | | __/ |_| | | | __/ (_| | | | / ___/| | | (_) > <| |_| |
\/ |_| \___/|_| |_| |_|\___|\__|_| |_|\___|\__,_|_| |_\/ |_| \___/_/\_\\__, |
|___/
- Overview
- Features
- Architecture
- Prerequisites
- Installation
- Configuration
- Usage
- Testing
- Contributing
- License
- Future Features
- Disclaimer
PrometheanProxy C2 is a modular, extensible command-and-control framework designed for red team operations, written with a Go-based client and a Python-based server. It enables secure and flexible beaconing, command execution, file transfer, and more. Many features are a work in progress.
- Multi-platform Go client with beacon and HTTP modules
- Python-based server supporting:
- Beacon handling
- Multi-handler command routing
- Web UI for session management
- Packet sniffing and lateral movement
- SQLite-backed server database
- Modular architecture for easy extension
- Secure communications and URL obfuscation
- Implements beaconing, HTTP requests, and URL obfuscation
- Generic command plugins: shell, directory traversal, system info
- Session management and custom protocol support
- HTTP and socket servers for beacon callbacks and interactive sessions
- Multi-handler architecture for different command contexts
- Embedded Web UI for session monitoring
- PacketSniffer module for network capture
- Go 1.18+ (for client)
- Python 3.9+ (for server)
- pip for Python package management
- Clone the repository:
git clone https://github.com/yourorg/PrometheanProxy.git cd PrometheanProxy
- Install Python dependencies:
make venv
- Build the Go client:
make run client
Change the argument to beacon or session depending on what you need. (You will likey need to run the server first to make the HMAC key)
## Configuration
1. Edit the server configuration in `~/PrometheanProxy/config.toml` to set network interfaces, ports, and paths.
2. (Optional) Adjust client settings in Go source under `src/Client/generic/config`.
## Usage
### Start the Server
```bash
python src/Server/server.py
./promethean-client
Open http://<server_ip>:<web_ui_port>
in your browser to view active sessions.
Contributions are welcome! Please open issues and submit pull requests in the GitHub repository.
This project is licensed under the MIT License. See LICENSE for details.
- HMAC support on Beacon mode
- Binary compliation from server
- Remote module loading / staging
- Continued work on web GUI
This tool is only to be used with consent from all parties involved.