Log-Analyse: SSH-Angriffe in auth.log finden
Die Defender-Seite zur Pentest-Lektion: deine VM hat 200 synthetische SSH-Brute-Force-Eintraege in /var/log/auth.log. Mit grep, awk und sort filterst du heraus, wie viele Failed-Login-Versuche es gab, welche IP der dominante Angreifer ist und wie viele eindeutige Quell-IPs sich versucht haben. Vier Aufgaben, ca. 30 Minuten. Reine Defensive — diese Skills brauchst du jeden Tag wenn ein Server live ist.
auth.log lesen wie ein SOC-Analyst
Log-Analyse: SSH-Angriffe in auth.log finden
Wenn ein Server live ist, protokolliert er jeden Login-Versuch. Diese Logs sind Gold wert: Sie zeigen, wer wann angegriffen hat. Als Defender wertest du sie mit klassischen Kommandozeilen-Werkzeugen aus — das ist eine tägliche Praxis-Fähigkeit, kein Spielzeug.
Wichtige Begriffe & Werkzeuge
/var/log/auth.log: das Authentifizierungs-Log (Logins, sudo, SSH).grep: filtert Zeilen nach einem Muster.awk: zerlegt Zeilen in Felder und gibt gezielt Spalten aus.sort/uniq -c: sortieren und zählen — ideal, um „welche IP am häufigsten?" zu beantworten.
Auf dieser VM enthält /var/log/auth.log 200 synthetische Brute-Force-Einträge. Schreibe deine Ergebnisse jeweils in die angegebene Datei unter /tmp/.
Dein Ziel
Du zählst die Fehlversuche, findest den dominanten Angreifer, zählst die eindeutigen Quell-IPs und baust eine Bann-Liste.
Aufgaben
1. Failed-Logins zählen
Aufgabe: Fehlversuche zählen. Zähle, wie viele „Failed password"-Zeilen es im Log gibt, und schreibe nur die Zahl nach
/tmp/failed-count.txt.grep -c "Failed password" /var/log/auth.log > /tmp/failed-count.txtgrep -czählt die Treffer-Zeilen statt sie auszugeben.Kontrolle:
/tmp/failed-count.txtenthält genau200.2. Top-Attacker-IP finden
Aufgabe: dominante Angreifer-IP finden. Welche IP hat am häufigsten angegriffen? Extrahiere die IPs, zähle sie und nimm die häufigste. Schreibe nur die IP nach
/tmp/top-attacker.txt.grep "Failed password" /var/log/auth.log | grep -oE '([0-9]{1,3}\.){3}[0-9]{1,3}' | sort | uniq -c | sort -rn | head -1 | awk '{print $2}' > /tmp/top-attacker.txtSchrittweise: IPs herausziehen → sortieren → zählen (
uniq -c) → nach Häufigkeit absteigend sortieren → oberste nehmen → nur die IP-Spalte (awk '{print $2}').Kontrolle:
/tmp/top-attacker.txtenthält203.0.113.42.3. Eindeutige Quell-IPs zählen
Aufgabe: eindeutige Angreifer zählen. Wie viele verschiedene IPs haben es versucht? Schreibe nur die Zahl nach
/tmp/unique-attackers.txt.grep "Failed password" /var/log/auth.log | grep -oE '([0-9]{1,3}\.){3}[0-9]{1,3}' | sort -u | wc -l > /tmp/unique-attackers.txtsort -umacht die IPs eindeutig,wc -lzählt die Zeilen.Kontrolle:
/tmp/unique-attackers.txtenthält5.4. Bann-Liste für fail2ban bauen
Aufgabe: Bann-Liste bauen. Erstelle eine Liste aller eindeutigen Angreifer-IPs (eine pro Zeile) — die könntest du an fail2ban oder eine Firewall übergeben. Schreibe sie nach
/tmp/ban-list.txt.grep "Failed password" /var/log/auth.log | grep -oE '([0-9]{1,3}\.){3}[0-9]{1,3}' | sort -u > /tmp/ban-list.txtKontrolle:
/tmp/ban-list.txtenthält u. a.203.0.113.42,203.0.113.17und198.51.100.7.
Jetzt selbst üben
Lesen ist gut – selbst machen ist besser. Starte diesen Kurs an einer echten Linux-VM, direkt im Browser. Ein kostenloses Konto genügt.
Kostenlos startenLab-Inhalte unter CC BY 4.0 – frei nutzbar mit Namensnennung (© TechLogia).
