Wer drängt da?
Il Forno Veloce verkauft Brot online und sein Webserver steht unter Belagerung: In der Nacht hat sich das Zugriffsprotokoll mit falschen Passwörtern gefüllt. Es reicht nicht zu wissen, dass jemand drängt, du musst wissen, WER am meisten drängt. Zähle die Fehlversuche pro Adresse und dekodiere die Meldung des Angreifers.
Labor 2 von 6 im Lernpfad Blue Team / Verteidigung. Wenn du feststeckst, hast du 3 Hinweise, vom vagesten bis zum genauesten: Sie kosten 0, 50 und 120 XP.
Was du lernst
Die Ziele erfüllen sich von selbst, während du im Terminal arbeitest; jedes bringt Erfahrungspunkte:
- Die Fehlversuche mit grep isolieren (80 XP)
- Die Adressspalte mit cut herausziehen (100 XP)
- Mit sort und uniq -c gruppieren und zählen (120 XP)
- Die Meldung des Angreifers dekodieren (100 XP)
Themen: defense, log, pipe, brute-force.
Die Befehle, die du brauchst
Das Terminal ist simuliert und versteht etwa vierzig Linux-Befehle. In diesem Labor brauchst du vor allem diese:
cat: gibt den Inhalt einer Datei aus: der direkteste Weg, Konfigurationen, Notizen und Logs zu lesen.grep: findet die Zeilen, die ein Wort enthalten, mit -r auch in ganzen Ordnern. Es ist das wichtigste Werkzeug, um Text und Logs zu analysieren.head: zeigt nur die ersten Zeilen einer Datei, praktisch, um das Format eines Logs zu verstehen, ohne alles zu lesen.cut: schneidet aus jeder Zeile eine Spalte mit einem gewählten Trennzeichen heraus, um ein bestimmtes Feld eines Logs zu isolieren.sort: sortiert Zeilen, auch numerisch (-n) oder umgekehrt (-r).uniq: entfernt direkt aufeinanderfolgende doppelte Zeilen und zählt sie mit -c: Zusammen mit sort entstehen Ranglisten, etwa der hartnäckigsten Adressen.base64: kodiert und dekodiert Base64, das Format, das Bytes in Text verwandelt. Es schützt nichts: Es lässt sich ohne Schlüssel rückgängig machen.|: der senkrechte Strich | verkettet Befehle: Die Ausgabe des ersten wird zur Eingabe des nächsten, so werden kleine Werkzeuge zu einer vollständigen Analyse.
Die simulierte Umgebung
Du arbeitest in einer simulierten Linux-Shell, im Home-Verzeichnis des Benutzers runner: erfundene Dateien und Ordner, kein Ziel im Netzwerk.
Neben dem Home-Verzeichnis gibt es ein vollständiges simuliertes System mit Konfigurationsdateien, Logs, Benutzern und Rechten, die du untersuchst.
Die Lektion zur Abwehr
Ist das Labor gelöst, erklärt der Bericht, was schiefging und wie man sich schützt:
Mit grep, cut, sort und uniq -c wird ein Protokoll mit Hunderten Zeilen zu einer Rangliste: Wer am meisten drängt, führt fast immer einen Brute-Force-Angriff durch. Die Zahlen muss man aber sorgfältig lesen: Ein internes Skript mit dem alten Passwort oder ein zerstreuter Nutzer sind keine Angreifer, und ein langsamer, verstreuter Angriff bleibt unter der Schwelle. Verteidigung: Versuche pro Adresse begrenzen (Rate Limiting), wer die Schwelle überschreitet automatisch mit fail2ban sperren und von Passwörtern auf SSH-Schlüssel umsteigen.
Vor und nach diesem Labor
Um es zu öffnen, musst du gelöst haben:
- Ein Zugriffsprotokoll lesen (Blue Team / Verteidigung, leicht)
- Pipes und Filter (Linux-Grundlagen, mittel)
Nach diesem Labor kannst du weitermachen mit:
- Chronologie eines Vorfalls (Blue Team / Verteidigung, mittel)
Der Lernpfad Blue Team / Verteidigung
Blue Team / Verteidigung ist der Lernpfad derer, die schützen. Du liest Zugriffslogs, zählst fehlgeschlagene Versuche, um herauszufinden, wer eine Anmeldung erzwingen will, rekonstruierst den zeitlichen Ablauf eines Vorfalls, vergleichst eine SSH-Konfiguration mit der empfohlenen, schaltest unnötige Dienste ab und führst eine Reaktion auf einen Vorfall in vier Schritten: erkennen, eindämmen, bereinigen, dokumentieren. Die Befehle sind dieselben wie in den anderen Lernpfaden, aber mit den Augen dessen benutzt, der verstehen muss, was passiert ist, und verhindern muss, dass es wieder passiert.