Python Programming for Security Analysts & Professionals

4 Tage

Connected Classroom Training 

Jetzt Angebot einholen

Dieser Kurs ist darauf ausgerichtet, Sicherheitsanalysten und Fachleuten aus der IT-Sicherheitsbranche die Programmiersprache Python näherzubringen.

Einige Hauptpunkte:

  • Grundlagen der Python-Programmierung: Der Kurs beginnt mit den grundlegenden Konzepten von Python, einschließlich Syntax, Datentypen, Kontrollstrukturen und Funktionen. Dies legt die Basis für das Verständnis der Sprache.
  • Anwendungen in der Sicherheitsanalyse: Der Fokus liegt darauf, wie Python spezifisch in sicherheitsbezogenen Szenarien eingesetzt werden kann. Das kann das Automatisieren von Aufgaben, die Analyse von Sicherheitsdaten, die Durchführung von Penetrationstests oder die Entwicklung von Sicherheitswerkzeugen umfassen.
  • Arbeiten mit Sicherheits-APIs und Tools: Viele Sicherheitswerkzeuge und APIs bieten Python-Schnittstellen. Der Kurs kann zeigen, wie man diese Schnittstellen nutzt, um Daten zu sammeln, zu analysieren oder automatisierte Aktionen durchzuführen.
  • Skripting für Sicherheitsoperationen: Python ist besonders nützlich für das Erstellen von Skripten, die in Sicherheitsoperationen verwendet werden können, z.B. zur Überwachung von Systemen, zur Erkennung von Angriffen oder zur Durchführung von forensischen Analysen.
  • Fallstudien und praktische Übungen: Durch Fallstudien und praktische Übungen können die Teilnehmer lernen, wie sie reale Sicherheitsprobleme mit Python lösen können. Dies fördert das Verständnis und die Anwendung der erlernten Konzepte.
  • Sicherheitsaspekte der Python-Programmierung: Besonderes Augenmerk wird auf Sicherheitsaspekte gelegt, wie z.B. sicherer Code, Schutz vor Angriffen wie Injection und die Verwendung von Python-Bibliotheken und Frameworks zur Sicherheitsverbesserung.

Zusammengefasst zielt der Kurs darauf ab, Sicherheitsprofis die erforderlichen Fähigkeiten zu vermitteln, um Python effektiv in ihrem täglichen Arbeitsablauf zu nutzen, sei es für Analyse, Automatisierung oder Entwicklung von Sicherheitslösungen.
 

Kursinhalte
  • Was ist Python?
  • Python Zeitleiste
  • Vorteile/Nachteile von Python
  • Hilfe mit pydoc
  • Python starten
  • Verwendung des Interpreters
  • Ausführen eines Python-Skripts
  • Python-Skripte unter Unix/Windows
  • Editoren und IDEs
  • Verwendung von Variablen
  • Eingebaute Funktionen
  • Zeichenketten
  • Zahlen
  • Konvertierung zwischen Typen
  • Schreiben auf den Bildschirm
  • Befehlszeilenparameter
  • Über Datenflusskontrolle
  • Leerzeichen
  • Bedingte Ausdrücke
  • Relationale und boolesche Operatoren
  • While-Schleifen
  • Alternative Schleifenausgänge
  • Über Sequenzen
  • Listen und Listenmethoden
  • Täfelchen
  • Indizierung und Aufteilung
  • Iteration durch eine Sequenz
  • Sequenzfunktionen, Schlüsselwörter und Operatoren
  • Listenauffassungen
  • Generator-Ausdrücke
  • Verschachtelte Sequenzen
  • Datei-Übersicht
  • Öffnen einer Textdatei
  • Lesen einer Textdatei
  • Schreiben in eine Textdatei
  • Lesen und schreiben von Rohdaten (Binärdaten)
  • Konvertierung von Binärdaten mit struct
  • Über Wörterbücher
  • Erstellen von Wörterbüchern
  • Iteration durch ein Wörterbuch
  • Über Sets
  • Erstellen von Sets
  • Arbeiten mit Sets
  • Definieren von Funktionen
  • Parameter
  • Globaler und lokaler Geltungsbereich
  • Verschachtelte Funktionen
  • Rückgabe von Werten
  • Die Sortierfunktion
  • Alternative Schlüssel
  • Lambda-Funktionen
  • Sortieren von Sammlungen
  • Syntax-Fehler
  • Ausnahmen
  • Verwendung von try/catch/else/finally
  • Behandlung mehrerer Ausnahmen
  • Ausnahmen ignorieren
  • Die Importanweisung
  • Modul-Suchpfad
  • Module erstellen und Pakete verwenden
  • Funktions- und Modul-Aliase
  • Über o-o Programmierung
  • Definieren von Klassen
  • Konstruktoren
  • Methoden
  • Instanzdaten
  • Eigenschaften
  • Klassenmethoden und Daten
  • RE-Syntax-Übersicht
  • RE-Objekte
  • Suche und Abgleich
  • Flaggen für die Kompilierung
  • Gruppen und spezielle Gruppen
  • Ersetzen von Text
  • Zeichenketten aufteilen
  • Das sys-Modul
  • Starten externer Programme
  • Das string-Modul
  • CSV-Daten lesen
  • Arbeiten mit Datum und Uhrzeit
  • Zeitstempel übersetzen
  • Parsing von Datumsangaben aus Text
  • Pfade, Verzeichnisse und Dateinamen
  • Prüfen auf Existenz
  • Berechtigungen und andere Dateiattribute
  • Durchlaufen von Verzeichnisbäumen
  • Filter mit Dateieingabe erstellen
  • Sicherheit und Dateizugriff
  • Abgreifen von Webinhalten
  • Erkennung fehlerhafter Eingaben
  • Analyse von Kommandozeilenoptionen
  • Hilfe mit pydoc erhalten
  • Sicherer Umgang mit nicht vertrauenswürdigen Daten
  • Verwaltung von eval-Berechtigungen
  • Potenziell unsichere Pakete
  • Einbettung von Codeschnipseln in Python
  • Einbetten von Authentifizierungsdaten in Python
  • Potenziell gefährliche Operationen
  • Dateizugriff
  • Zugriff auf das Betriebssystem
  • Aufrufe von externen Diensten
  • Aufrufen externer Datenquellen
  • Statische Analysewerkzeuge wie Bandit
  • Manipulation von Rohprotokolldateien
  • Fail2Ban
  • Anpassen von Fail2Ban mit Python
  • SQL-Injection-Erkennung
  • ModSecurity CRS-Filterung
  • Paket-Sniffing in Python
  • Sicherheitsprotokollierung und Analyse
  • Angriffserkennung und Abwehr
  • Python und Spark - Überblick auf höchster Ebene
  • Was ist Flask?
  • Entwicklung eines Flask-Webdienstes
  • Ressourcen über URLs abbilden
  • Abbildung von Ressourcen über HTTP
  • Dateninhalte aushandeln