283 lines
8.2 KiB
Markdown
283 lines
8.2 KiB
Markdown
# Brute Ratel v1.4.5 - Red Team Command & Control Framework
|
|
|
|
Brute Ratel is a sophisticated red teaming and adversary simulation tool designed for penetration testers and security professionals. This repository contains Brute Ratel v1.4.5 (Blitzkrieg) with both server and GUI client components.
|
|
|
|
## 📋 Table of Contents
|
|
- [Overview](#overview)
|
|
- [Components](#components)
|
|
- [System Requirements](#system-requirements)
|
|
- [Installation](#installation)
|
|
- [Quick Start](#quick-start)
|
|
- [Configuration](#configuration)
|
|
- [Usage Guide](#usage-guide)
|
|
- [Troubleshooting](#troubleshooting)
|
|
- [Legal & Ethical Use](#legal--ethical-use)
|
|
- [Support](#support)
|
|
|
|
## Overview
|
|
|
|
Brute Ratel is a command and control (C2) framework that provides:
|
|
- **C2 Server**: HTTPS listener for agent communication
|
|
- **War Room GUI**: Qt-based graphical interface for operator control
|
|
- **Agent Generation**: Payload creation for Windows targets
|
|
- **Post-Exploitation**: Extensive toolkit for lateral movement, privilege escalation, and data exfiltration
|
|
|
|
**Version**: 1.4.5 (Blitzkrieg)
|
|
**License**: Licensed to Rnd Lab - Delhi (valid till 03-20-2024)
|
|
|
|
## Components
|
|
|
|
### Core Files
|
|
- `brute-ratel-linx64` - Main C2 server executable
|
|
- `Teamserver` - Server startup script (fixed to use correct binary)
|
|
- `commander-runme` - GUI client launcher
|
|
- `lib64/commander` - Qt-based GUI client
|
|
- `Rungui.sh` - Alternative GUI launcher with xmodlib handling
|
|
|
|
### Configuration Files
|
|
- `cert.pem`, `key.pem` - SSL certificates for HTTPS
|
|
- `ratel.conf` - Client configuration for server connections
|
|
- `server_confs/` - Profile configurations and payload templates
|
|
|
|
### Support Tools
|
|
- `krb5decoder` - Kerberos ticket decoder
|
|
- `adaptiveC2/` - Adaptive C2 scripts and connectors
|
|
- `adhoc_scripts/` - Utility scripts and shellcode loaders
|
|
|
|
## System Requirements
|
|
|
|
### Minimum Requirements
|
|
- **OS**: Linux (Ubuntu/Debian/Kali recommended)
|
|
- **Architecture**: x86_64
|
|
- **RAM**: 4GB minimum, 8GB recommended
|
|
- **Storage**: 2GB free space
|
|
|
|
### Dependencies
|
|
```bash
|
|
# Required packages
|
|
sudo apt update
|
|
sudo apt install nasm mingw-w64
|
|
|
|
# Optional for GUI (usually included in lib64/)
|
|
# sudo apt install libqt5webenginewidgets5 libqt5websockets5
|
|
```
|
|
|
|
## Installation
|
|
|
|
### 1. Extract and Prepare
|
|
```bash
|
|
# Navigate to Brute Ratel directory
|
|
cd bruteratel_1.4.5/
|
|
|
|
# Verify permissions (already set, but can re-apply if needed)
|
|
chmod +x brute-ratel-linx64
|
|
chmod +x lib64/commander
|
|
chmod +x commander-runme
|
|
chmod 0444 xmodlib.bin
|
|
```
|
|
|
|
### 2. Install Dependencies
|
|
```bash
|
|
# Update package list and install required tools
|
|
sudo apt update
|
|
sudo apt install nasm mingw-w64
|
|
```
|
|
|
|
## Quick Start
|
|
|
|
### Starting the C2 Server
|
|
```bash
|
|
# Method 1: Using the Teamserver script (recommended)
|
|
./Teamserver -ratel -a admin -p password -h 127.0.0.1:8443 -sc cert.pem -sk key.pem
|
|
|
|
# Method 2: Direct execution
|
|
./brute-ratel-linx64 -ratel -a admin -p password -h 127.0.0.1:8443 -sc cert.pem -sk key.pem
|
|
```
|
|
|
|
**Parameters**:
|
|
- `-a` : Admin username (default: admin)
|
|
- `-p` : Admin password (default: password)
|
|
- `-h` : Listen address and port (default: 127.0.0.1:8443)
|
|
- `-sc` : SSL certificate file (default: cert.pem)
|
|
- `-sk` : SSL private key file (default: key.pem)
|
|
|
|
### Starting the GUI Client (War Room)
|
|
```bash
|
|
# Method 1: Using commander-runme
|
|
./commander-runme
|
|
|
|
# Method 2: Using Rungui.sh (handles xmodlib backup)
|
|
./Rungui.sh
|
|
```
|
|
|
|
### Connecting to Server
|
|
1. Launch the GUI client
|
|
2. Enter connection details:
|
|
- **C2 Host**: `127.0.0.1:8443`
|
|
- **Username**: `admin`
|
|
- **Password**: `password`
|
|
3. Click the Brute Ratel logo to connect
|
|
|
|
## Configuration
|
|
|
|
### Server Configuration
|
|
Edit `ratel.conf` to pre-configure server connections:
|
|
```json
|
|
{
|
|
"ratel_servers": {
|
|
"localhost:8443": {
|
|
"pass": "password",
|
|
"user": "admin"
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
### Profile Configuration
|
|
Pre-built profiles are available in `server_confs/`:
|
|
- `http-profile.conf` - Standard HTTP C2 profile
|
|
- `doh-profile.conf` - DNS-over-HTTPS profile
|
|
- `demo-profile.conf` - Demonstration profile
|
|
- `payloadprofile.conf` - Payload generation settings
|
|
|
|
### SSL Certificate Replacement
|
|
To use your own certificates:
|
|
```bash
|
|
# Generate new certificates
|
|
openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 365 -nodes
|
|
|
|
# Update server command with new certificate paths
|
|
./Teamserver -ratel -a admin -p password -h 0.0.0.0:8443 -sc /path/to/cert.pem -sk /path/to/key.pem
|
|
```
|
|
|
|
## Usage Guide
|
|
|
|
### Basic Workflow
|
|
1. **Start Server**: Launch C2 server on desired interface
|
|
2. **Generate Payload**: Use server interface to create agent executables
|
|
3. **Deploy Agent**: Execute payload on target system
|
|
4. **Manage Sessions**: Use War Room GUI to interact with compromised systems
|
|
5. **Post-Exploitation**: Perform lateral movement, privilege escalation, data collection
|
|
|
|
### Common Server Commands
|
|
While the server is running, you can interact via the terminal:
|
|
- View connected agents
|
|
- Generate payloads with specific profiles
|
|
- Manage listeners and redirectors
|
|
- Configure agent behaviors
|
|
|
|
### GUI Features
|
|
- **Dashboard**: Overview of all connected agents
|
|
- **Agent Management**: Interactive session control
|
|
- **Module Browser**: Built-in post-exploitation tools
|
|
- **Log Viewer**: Real-time operation logging
|
|
- **Profile Editor**: C2 profile customization
|
|
|
|
## Troubleshooting
|
|
|
|
### Common Issues
|
|
|
|
#### 1. Server Won't Start
|
|
```bash
|
|
# Check permissions
|
|
chmod +x brute-ratel-linx64
|
|
|
|
# Check dependencies
|
|
nasm --version
|
|
x86_64-w64-mingw32-gcc --version
|
|
|
|
# Verify certificate files exist
|
|
ls -la cert.pem key.pem
|
|
```
|
|
|
|
#### 2. GUI Client Shows OpenGL Error
|
|
```
|
|
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
|
|
```
|
|
This warning is non-fatal. The GUI should still function. To resolve:
|
|
```bash
|
|
# Install OpenGL/Mesa libraries
|
|
sudo apt install mesa-utils libgl1-mesa-glx
|
|
|
|
# For headless environments, use virtual display
|
|
sudo apt install xvfb
|
|
xvfb-run ./commander-runme
|
|
```
|
|
|
|
#### 3. Connection Refused
|
|
- Verify server is running: `netstat -tlnp | grep 8443`
|
|
- Check firewall settings: `sudo ufw allow 8443`
|
|
- Ensure correct IP/port in connection settings
|
|
|
|
#### 4. License Expired
|
|
The included license is valid until 03-20-2024. For extended use:
|
|
- Contact Brute Ratel for license renewal
|
|
- Visit: https://bruteratel.com
|
|
|
|
### Log Files
|
|
- Server logs output to terminal (redirect with `> server.log`)
|
|
- GUI client logs to system console
|
|
- Agent logs available through GUI interface
|
|
|
|
## Legal & Ethical Use
|
|
|
|
⚠️ **IMPORTANT DISCLAIMER**
|
|
|
|
Brute Ratel is a powerful security tool intended for:
|
|
- Authorized penetration testing
|
|
- Security research and education
|
|
- Red team exercises with proper authorization
|
|
- Defensive security training
|
|
|
|
**Illegal use of this software is strictly prohibited.** Users are responsible for:
|
|
- Obtaining proper authorization before testing
|
|
- Complying with all applicable laws and regulations
|
|
- Using only on systems they own or have explicit permission to test
|
|
- Adhering to responsible disclosure practices
|
|
|
|
The developers and distributors assume no liability for misuse of this software.
|
|
|
|
## Support
|
|
|
|
### Documentation
|
|
- `api-ratel-war-room.pdf` - API and War Room documentation
|
|
- `releases.txt` - Version history and release notes
|
|
- `readme.txt` - Basic installation guide
|
|
|
|
### Community & Resources
|
|
- Official Website: https://bruteratel.com
|
|
- Updates and Downloads: https://bruteratel.com/tabs/download
|
|
- For licensing inquiries: Contact via official channels
|
|
|
|
### Issue Reporting
|
|
For technical issues with this distribution:
|
|
1. Check troubleshooting section above
|
|
2. Verify system requirements and dependencies
|
|
3. Review server logs for error messages
|
|
4. Consult official documentation
|
|
|
|
---
|
|
|
|
## 🚀 Getting Started Checklist
|
|
|
|
- [ ] Install dependencies: `nasm`, `mingw-w64`
|
|
- [ ] Verify file permissions are set
|
|
- [ ] Start C2 server on desired interface
|
|
- [ ] Launch War Room GUI client
|
|
- [ ] Connect to server with credentials
|
|
- [ ] Review profile configurations
|
|
- [ ] Generate test payload (in lab environment)
|
|
- [ ] Familiarize with GUI interface and features
|
|
|
|
## 📝 Notes
|
|
|
|
- Default credentials: `admin`/`password`
|
|
- Default listen address: `127.0.0.1:8443`
|
|
- SSL certificates included for immediate use
|
|
- GUI requires X11 display (or use xvfb for headless)
|
|
- Regular updates recommended from official sources
|
|
|
|
---
|
|
|
|
*Last Updated: April 2026*
|
|
*Based on Brute Ratel v1.4.5 (Blitzkrieg)* |