Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
BlackBerryC2 — Verschlüsseltes Command‑and‑Control (C2)‑Forschungsframework für Cybersicherheitsbildung, Red‑Team‑Labore und sichere Client‑Server‑Kommunikationsexperimente. | Kitploit
Tools/GitHubGitHub/dereeqw/blackberryc2
Verschlüsselungs-/EntschlüsselungstoolsPayload-GenerierungIDS/IPS-UmgehungNetzwerksicherheitKryptographiePenetrationstestsCommand and ControlLernen & BildungRed TeamingRemote-Access-Tool
GitHub
31224vor 6 MonatenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
dereeqw/blackberryc2

BlackBerryC2

Verschlüsseltes Command‑and‑Control (C2)‑Forschungsframework für Cybersicherheitsbildung, Red‑Team‑Labore und sichere Client‑Server‑Kommunikationsexperimente.

Repository anzeigen

BlackBerryC2 2.0.0-beta

BlackBerryC2 ist ein verschlüsseltes Fernverwaltungs- und C2-Framework, das ausschließlich für Bildungszwecke, Sicherheitsforschung und kontrollierte Laborumgebungen entwickelt wurde. BlackBerryC2 Demo

Das Projekt zeigt, wie man einen benutzerdefinierten Command-and-Control-Server mit Anwendungsschicht-Kryptographie, Sitzungsverwaltung und sicherer Client-Kommunikation ohne Abhängigkeit von externen TLS-Stacks erstellt.


⚠️ Wichtiger Hinweis

Dieses Projekt ist KEINE Malware und NICHT für unbefugten Zugriff gedacht.

BlackBerryC2:

  • Verbreitet sich nicht selbst
  • Nutzt keine Sicherheitslücken automatisch aus
  • Enthält keine Persistenzmechanismen
  • Versucht nicht, Antivirensoftware zu umgehen

Verwenden Sie es nur auf Systemen und Netzwerken, die Ihnen gehören oder für die Sie eine ausdrückliche Testgenehmigung haben.


Python-Abhängigkeiten:

pip install cryptography prompt_toolkit zstandard

zstandard ist optional, aber für Übertragungen größer als 1 GB empfohlen.


Hauptfunktionen

  • Benutzerdefinierter TCP-basierter verschlüsselter C2-Server (v2.0)
  • ECDHE (secp256r1) Schlüsselaustausch — ephemeral oder persistent
  • AES-256-GCM authentifizierte Verschlüsselung pro Sitzung
  • HMAC-SHA256 Authentifizierung pro Paket + Anti-Replay-Sequenznummern
  • Mehrere gleichzeitige Client-Sitzungen
  • Interaktive Operator-Konsole mit Tab-Vervollständigung (prompt_toolkit)
  • Verschlüsselte Fernausführung von Befehlen
  • Verschlüsselte Dateiübertragungen mit zlib / Zstandard-Kompression
  • Rekursives Hoch-/Herunterladen von Verzeichnissen (get -r, put -r)
  • Hintergrundübertragungen (-b Flag) — nicht blockierend, abbrechbar
  • Unterstützung für Fortsetzung von Übertragungen (.partial + .resume-Dateien)
  • Client-Payload-Generator (generate-payload)
  • IP-Sperrung: dauerhafte Sperrliste + temporäre Auto-Sperren
  • Scan/Flood-Erkennung: Connect-Scan, Banner-Grab, Handshake-Fehler, Heartbeat-Flood
  • Optionale HTTP(S)/TLS-Proxy-Unterstützung (BlackBerryHTTPs_TLSProxyGUI)
  • SPA (Single Packet Authorization) und Port-Knocking Pre-Auth
  • BerryTransfer-Modus — dedizierter Nur-Dateiübertragungs-Server (keine Shell)
  • Verschlüsseltes Sitzungsprotokoll (AES-256-GCM + PBKDF2, 600k Iterationen)
  • Verschlüsseltes Serverprotokoll mit In-Shell-Viewer (log-Befehl)
  • Startkonfiguration gespeichert in logs/last_start.json

Kryptographisches Design

BlackBerryC2 v2.0 stellt eine sichere Kommunikation wie folgt her:

  1. Client verbindet sich über TCP; Server sendet Service-Banner.
  2. Client sendet REQUEST_PUBKEY.
  3. Server sendet seinen ephemeralen ECDHE öffentlichen Schlüssel (secp256r1).
  4. Client sendet seinen ECDHE öffentlichen Schlüssel + HMAC-SHA256 Authentifizierungs-Tag.
  5. Server überprüft den HMAC gegen das vorher geteilte Geheimnis (HMAC_PRE_SHARED_SECRET).
  6. Beide Seiten leiten einen 256-Bit AES-Sitzungsschlüssel über HKDF-SHA256 aus dem gemeinsamen Geheimnis ab.
  7. Die gesamte weitere Kommunikation verwendet AES-256-GCM mit paketweiser HMAC-SHA256 und Anti-Replay-Sequenznummern.

Jede Sitzung verwaltet:

  • Eigenen AES-256-Schlüssel und HMAC-Schlüssel
  • Unabhängige Nonces (12 Byte zufällig pro Nachricht)
  • Isolierter Anti-Replay-Tracker (Sequenzfenster ±100)
  • Flood-Schutz-Ratenbegrenzer (konfigurierbare Befehle/Sekunde)

Alle kryptographischen Schlüssel werden zur Laufzeit generiert und niemals über Neustarts hinweg wiederverwendet (es sei denn, --persistente ist gesetzt).


Server ausführen

python3 BlackBerryC2_server.py

Standardkonfiguration:

  • Host: 0.0.0.0
  • Port: 9949

Befehlszeilenargumente

FlagBeschreibung
-p / --persistentePersistente ECDHE-Schlüssel aus ecdhe-cert/ verwenden (nach Passphrase fragen)
-vDebug-Logging
-vvAusführliches (entspanntes) Logging
-H <host>Lausch-Host (Standard: 0.0.0.0)
-P <port>Lausch-Port (Standard: 9949)
--no-secureJeden ECDHE-Client ohne HMAC-Überprüfung akzeptieren
--hmac <secret>Benutzerdefiniertes HMAC vorher geteiltes Geheimnis (hex oder String)
--log-passphrase <pass>Serverprotokoll mit AES-256-GCM verschlüsseln (PBKDF2 600k Iter.)
--logsInteraktiver Log-Viewer — kein Server gestartet
--spaSPA/Port-Knocking Pre-Authentifizierung aktivieren
--spa-mode <spa|knock>spa = einzelnes UDP-Token, knock = Port-Sequenz
--spa-port <port>UDP-Port für SPA-Listener (Standard: 7331)
--knock-seq <ports>Port-Sequenz für Knock-Modus (Standard: 7001,7002,7003)
--knock-timeout <sec>Sekunden zum Abschließen der Knock-Sequenz (Standard: 10)
--spa-ttl <sec>Sekunden, die eine autorisierte IP gültig bleibt (Standard: 60)
--berrytransferBerryTransfer-Modus: nur Dateiübertragung, keine Shell
--transfer-root <dir>Wurzelverzeichnis für BerryTransfer (Standard: ./berry_transfers)
--auto-confirmAlle GET-Anfragen in BerryTransfer automatisch genehmigen (keine Operator-Aufforderung)

Beispiele:

# Basic startup (prompts for log passphrase)
python3 BlackBerryC2_server.py

# Persistent ECDHE keys + verbose
python3 BlackBerryC2_server.py -p -vv

# Custom port, no HMAC check
python3 BlackBerryC2_server.py -P 8080 --no-secure

# Port-knocking on custom ports
python3 BlackBerryC2_server.py --spa --spa-mode knock --knock-seq 9001,9002,9003

# BerryTransfer mode with auto-confirm
python3 BlackBerryC2_server.py --berrytransfer --auto-confirm

# View/decrypt logs without starting server
python3 BlackBerryC2_server.py --logs

Operator-Konsolen-Befehle

Serververwaltung

BefehlBeschreibung
listAktive Sitzungen mit Statistiken und Hostname auflisten
select <ID>Mit einer Client-Sitzung interagieren
all <cmd>Einen Befehl an alle verbundenen Clients senden
reportVollständiger Serverstatusbericht (Betriebszeit, Sitzungen, Übertragungen)
set host <HOST>Lausch-Host ändern (bindet Server neu)
set port <PORT>Lausch-Port ändern (bindet Server neu)
sVbanner "<text>"Service-Banner ändern
generate-payloadEin Client-Payload generieren
fingerprintECDHE-Server-Schlüsselfingerabdruck anzeigen (SHA-256)
ecdhe-keysAktuelles ECDHE-Schlüsselpaar ausgeben (PEM)
kill <id|ip>Eine Sitzung nach ID oder IP beenden
block <IP>Eine IP dauerhaft sperren
unblock <IP>Eine IP entsperren (dauerhaft + temporär)
blocklistGesperrte IPs anzeigen (dauerhaft und temporär)
logInteraktiver Log-Viewer (unterstützt verschlüsselte Logs)
reportStatuszusammenfassung: Betriebszeit, Sitzungen, Übertragungen
bannerStartbanner erneut anzeigen
cleanServer-Logdateien löschen
vDEBUG-Logging umschalten
vvVERBOSE-Logging umschalten
cd <dir>Lokales Arbeitsverzeichnis des Servers ändern
E <cmd>Befehl über os.system lokal ausführen
<any command>Lokal auf dem Server ausführen
exitServer stoppen und beenden

Proxy

BefehlBeschreibung
proxyTLS/HTTP-Proxy-Daemon starten (Auto-Modus)
proxy --mode <mode>Modi: auto, tls, http, https, both, all
proxy --statsProxy-Statistiken anzeigen
proxy guiProxy-GUI starten (separater Prozess)
stop-proxyProxy-Daemon stoppen
stop-proxy-guiProxy-GUI stoppen
proxy-helpVollständige Proxy-Hilfe

Sitzungsbefehle (innerhalb von select <ID>)

Allgemein

Tool herunterladen