
Penetrationstests auf SSH-Servern mittels Brute-Force- oder Wörterbuchangriffen. Geschrieben in C.
Penetrationstests auf SSH-Servern mittels Wörterbuchangriffen. Geschrieben in C.
brute krag bedeutet „Brute Force“ auf Afrikaans
Dieses Tool ist nur für ethische Testzwecke bestimmt. cbrutekrag und seine Besitzer können nicht für Missbrauch durch Benutzer verantwortlich gemacht werden. Benutzer müssen im Rahmen der lokalen Gesetze handeln.
$ cbrutekrag -h
_ _ _
| | | | | |
___ | |__ _ __ _ _| |_ ___| | ___ __ __ _ __ _
/ __|| '_ \| '__| | | | __/ _ \ |/ / '__/ _` |/ _` |
| (__ | |_) | | | |_| | || __/ <| | | (_| | (_| |
\___||_.__/|_| \__,_|\__\___|_|\_\_| \__,_|\__, |
OpenSSH Brute-Force-Tool 0.6.0 __/ |
(c) Copyright 2014-2024 Jorge Matricali |___/
https://github.com/matricali/cbrutekrag
Verwendung: ./cbrutekrag [-h] [-v] [-aA] [-D] [-P] [-T ZIELLISTE.lst] [-C CREDENTIALS.lst]
[-t THREADS] [-f AUSGABEFORMAT] [-o AUSGABE.txt] [-F SCAN-AUSGABEFORMAT] [-O SCAN_AUSGABE.txt] [ZIELE...]
-h, --help Diese Hilfe
-v, --verbose Ausführlicher Modus
-V, --verbose-sshlib Ausführlicher Modus (sshlib)
-s, --scan Scan-Modus
-D, --dry-run Probelauf
-P, --progress Fortschrittsbalken
-T, --targets <datei> Zieldatei
-C, --credentials <datei> Datei mit Benutzernamen und Passwörtern
-t, --threads <threads> Maximale Threads
-o, --output <datei> Ausgabeprotokolldatei
-F, --format <muster> Ausgabeformat des Protokolls
Verfügbare Platzhalter:
%DATETIME%, %HOSTNAME%
%PORT%, %USERNAME%, %PASSWORD%
-O, --scan-output <datei> Ausgabeprotokolldatei für den Scanner
-F, --scan-format <muster> Ausgabeformat des Protokolls für den Scanner
Verfügbare Platzhalter:
%DATETIME%, %HOSTNAME%
%PORT%, %BANNER%.
Standard:
"%HOSTNAME%:%PORT%\t%BANNER%\n"
-a, --allow-non-openssh Akzeptiert Nicht-OpenSSH-Server
-A, --allow-honeypots Erlaubt Server, die als Honeypots erkannt wurden
--timeout <sekunden> Legt das Verbindungs-Timeout fest (Standard: 3)
--check-http <host> Versucht nach erfolgreichem Login einen TCP-Tunnel zu öffnen
cbrutekrag -T targets.txt -C combinations.txt -o result.log
cbrutekrag -s -t 8 -C combinations.txt -o result.log 192.168.1.0/24
root root
root password
root $BLANKPASS
$TARGET root
root $TARGET
| Platzhalter | Zweck | Als Passwort | Als Benutzername |
|---|---|---|---|
| $BLANKPASS | Leeres Passwort | ✔️ | - |
| $TARGET | Hostname oder IP als Passwort | ✔️ | ✔️ |
Das Ausgabeformat kann einfach über die Befehlszeilenoption -f angepasst werden.
Beispiel: ./cbrutekrag -f "%HOSTNAME%:%PORT%|%USERNAME%|%PASSWORD%\n", was
eine Ausgabe wie diese erzeugt:
192.168.0.100:22|root|toor
192.168.0.105:22|ubnt|ubnt
%DATETIME%\t%HOSTNAME%:%PORT%\t%USERNAME%\t%PASSWORD%\n
2024/04/01 13:05:13 192.168.0.100:22 root admin
| Platzhalter | Beschreibung | Beispiel |
|---|---|---|
| %DATETIME% | Ersetzt durch Datum Y/m/d HH:ii:ss | 2024/04/01 12:46:27 |
| %HOSTNAME% | Ersetzt durch Hostname oder IPv4 | 192.168.0.100 |
| %PORT% | Ersetzt durch Verbindungsport | 22 |
| %USERNAME% | Ersetzt durch verwendeten Benutzernamen | root |
| %PASSWORD% | Ersetzt durch verwendetes Passwort | admin |
| \n | Ersetzt durch LF | |
| \t | Ersetzt durch TAB |
Das Ausgabeformat kann einfach über die Befehlszeilenoption -F angepasst werden.
Beispiel: ./cbrutekrag -F "%HOSTNAME%\t%PORT%\t%BANNER%\n", was
eine Ausgabe wie diese erzeugt:
192.168.0.100 22 SSH-2.0-OpenSSH_6.0p1 Debian-4+deb7u2
192.168.0.105 22 SSH-2.0-OpenSSH_9.2p1 Debian-2+deb12u2
%HOSTNAME%:%PORT%\t%BANNER%\n
192.168.0.100:22 SSH-2.0-OpenSSH_9.2p1 Debian-2+deb12u2
| Platzhalter | Beschreibung | Beispiel |
|---|---|---|
| %DATETIME% | Ersetzt durch Datum Y/m/d HH:ii:ss | 2024/04/01 12:46:27 |
| %HOSTNAME% | Ersetzt durch Hostname oder IPv4 | 192.168.0.100 |
| %PORT% | Ersetzt durch Verbindungsport | 22 |
| %BANNER% | Ersetzt durch Serverbanner | SSH-2.0-OpenSSH_9.2p1 Debian-2+deb12u2 |
| \n | Ersetzt durch LF | |
| \t | Ersetzt durch TAB |
cbrutekrag verwendet libssh – Die SSH-Bibliothek (http://www.libssh.org/)
Anforderungen:
makegcc Compilerlibssh-devgit clone --depth=1 https://github.com/matricali/cbrutekrag.git
cd cbrutekrag
make
make install
## Statische Erstellung
Anforderungen:
* `cmake`
* `gcc` Compiler
* `make`
* `libssl-dev`
* `libz-dev`
```bash
git clone --depth=1 https://github.com/matricali/cbrutekrag.git
cd cbrutekrag
bash static-build.sh
make install