Dieses anspruchsvolle Abschlussprojekt besteht ausschließlich aus Challenges und verlangt die Vervollständigung dreier kleiner Python-Sicherheitswerkzeuge: eines Reconnaissance-Sammlers, eines Log-Hunting-Tools und eines einheitlichen Dienst- und Pfad-Enumerators. Sie wandeln lokale Socket-, HTTP- und Log-Eingaben in konsistente JSON-, Text- und Alarm-Artefakte um.
Die Startdateien definieren Funktionen und Ausgabeverträge, doch die funktionierende Logik implementieren Sie selbst. Der gesamte Netzwerkverkehr bleibt auf simulierten Loopback-Diensten, sodass zuverlässige Automatisierung statt externem Scanning oder Exploitation im Mittelpunkt steht.
Was du lernen wirst
- Ein SSH-ähnliches Banner über einen rohen TCP-Socket von einem per JSON konfigurierten Ziel erfassen
- Einen lokalen HTTP-Endpunkt mit Requests abfragen und Status- sowie Body-Daten sichern
- Unterschiedliche Reconnaissance-Ergebnisse in ein konsistentes JSON-Schema normalisieren
- Access-Log-Zeilen für reproduzierbare Folgeanalysen einlesen und bereinigen
- SQL-Injection-ähnliche Anfragen mit einem vorgegebenen regulären Ausdruck extrahieren
- Treffer nach Quell-IP zählen und Alarme nur beim Überschreiten eines Schwellenwerts erzeugen
- Konfigurierte TCP-Ports scannen und erreichbare HTTP-Dienste von anderen Sockets unterscheiden
- Kandidatenpfade aufzählen,
200- und403-Ergebnisse behalten und die Workflow-Ausgabe zusammenführen
Für wen dieser Kurs geeignet ist
Dieser Kurs richtet sich an erfahrene Python-Lernende, die Funktionen, Dateien, JSON, reguläre Ausdrücke, Sockets und HTTP-Anfragen bereits geübt haben und ein eigenständiges Abschlussprojekt zur Sicherheitsautomatisierung suchen. Er eignet sich für angehende Security Engineers, Penetrationstester und Detection-Analysten, die manuelle Prüfungen in wiederholbare Werkzeuge überführen möchten.
Voraussetzungen: Sehr gute Python-3- und Linux-Shell-Kenntnisse; Vertrautheit mit Funktionen, Ausnahmen, Datei-E/A, JSON-Serialisierung, regulären Ausdrücken, Zählern, TCP-Sockets, HTTP-Statuscodes und der Requests-Bibliothek.
Lernumgebung: Eine LabEx-VM mit Ubuntu 22.04, Python-Startskripten, einem synthetischen Access-Log mit sechs Zeilen, JSON- und Wortlisteneingaben sowie lokal simulierten TCP- und HTTP-Diensten auf 127.0.0.1. Python 3 und Requests sind vorhanden.
Häufig gestellte Fragen
Ist dies ein geführter Python-Kurs?
Nein. Es ist ein anspruchsvolles Abschlussprojekt mit drei Challenge-basierten Bewertungen. Anforderungen und beispielhafte Ausgabeformen sind vorgegeben, aber jede Funktion muss von Ihnen implementiert und debuggt werden.
Schreibe ich jedes Programm ausgehend von einer leeren Datei?
Nein. Jede Challenge stellt ein Startskript mit Konstanten, Funktionsgerüsten und Code zum Schreiben der Ausgaben bereit. Sie ergänzen die fehlende Sammel-, Analyse-, Alarm-, Scan- und Enumerationslogik.
Scannen die Werkzeuge externe Systeme?
Nein. Socket-Verbindungen und HTTP-Anfragen richten sich ausschließlich an simulierte Dienste auf 127.0.0.1; das Log ist eine lokale synthetische Datei. Internetziele oder Cloud-Konten sind nicht beteiligt.
Nutzt das einheitliche Toolkit Schwachstellen aus?
Nein. Es prüft eine kurze konfigurierte Portliste, erkennt den HTTP-ähnlichen Dienst und speichert interessante Pfade mit Status 200 oder 403. Es exploitiert keine Endpunkte, ändert keine Firewall-Regeln und öffnet keine Shells.


