Einkaufswagen
Loading
Nur noch -1 verfügbar

Sicherheitspraktiken in der Python-Entwicklung

Aktionspreis
€12.99 (25 % Rabatt)
€9.74
Zum Einkaufswagen hinzugefügt

Sicherheitspraktiken in der Python-Entwicklung


Ein praxisorientierter Leitfaden zum Schreiben sicherer, robuster und vertrauenswürdiger Python-Anwendungen


Inhaltsverzeichnis


Kapitel 1: Einführung in sichere Softwareentwicklung

  • Was bedeutet „sichere Programmierung“?
  • Sicherheitsziele: Vertraulichkeit, Integrität, Verfügbarkeit
  • Bedrohungsmodelle für Python-Anwendungen
  • OWASP Top 10 und relevante Sicherheitsrisiken

Kapitel 2: Sichere Handhabung von Benutzereingaben


  • Input-Validierung und -Sanitierung
  • Umgang mit eval(), exec() und input()
  • Regex-Fallen und DoS durch fehlerhafte Prüfungen
  • Mini-Projekt: Validierter Konfigurationsparser

Kapitel 3: Umgang mit sensiblen Daten


  • Speicherung und Maskierung von Passwörtern
  • Einsatz von Hashing (bcrypt, argon2, pbkdf2)
  • Zugriff auf Secrets (z. B. API-Keys, Tokens)
  • Mini-Projekt: Passwortspeicher mit sicherer Speicherung

Kapitel 4: Sichere Datei- und Pfadoperationen


  • Verzeichnis-Traversal verhindern
  • os.path, pathlib, tempfile korrekt verwenden
  • Uploads, Downloads und Dateinamen absichern
  • Mini-Projekt: Sicherer Datei-Uploader

Kapitel 5: Umgang mit Abhängigkeiten und Drittbibliotheken


  • Sicherheitsrisiken durch Packages aus PyPI
  • pip-audit, safety, bandit zur Überprüfung verwenden
  • Abhängigkeiten einschränken (requirements.txt, constraints.txt)
  • Mini-Projekt: Sicherheits-Scan für Python-Projekt einrichten

Kapitel 6: Sichere Kommunikation und Netzwerkzugriffe


  • TLS/SSL mit requests und http.client
  • Zertifikatsprüfung erzwingen
  • Keine sensiblen Daten im Klartext übertragen
  • Mini-Projekt: Sicherer API-Client mit Zertifikatsprüfung

Kapitel 7: Schutz vor Code-Injection und unsicheren Deserialisierungen


  • Risiken von pickle, marshal und dynamischen Imports
  • Sichere Alternativen wie json, yaml.safe_load
  • Mini-Projekt: Sichere Konfigurationsladefunktion

Kapitel 8: Zugriffskontrolle und Berechtigungen


  • Rollen, Rechte und Zugriffsebenen
  • Zugriff auf Betriebssystem-Ressourcen beschränken
  • Mini-Projekt: Rollenbasiertes CLI-Tool

Kapitel 9: Logging, Fehlerbehandlung und Informationssicherheit


  • Logging ohne sensible Daten
  • Custom Error Pages / Exceptions für Webanwendungen
  • Stacktraces vermeiden, die interne Struktur verraten
  • Mini-Projekt: Sichere Fehlerausgabe für REST-API

Kapitel 10: Sicherheitsbewusste Entwicklungsprozesse


  • Sicherheits-Reviews und Code-Scans
  • Integration in CI/CD-Pipelines
  • Automatisierte Tests für sicherheitsrelevante Funktionen
  • Tipps für Teams und Open-Source-Projekte

Anhang A: Sicherheits-Checkliste für Python-Projekte


  • Validierung, Hashing, Secrets, Logging, TLS, Abhängigkeiten etc.

Anhang B: Nützliche Tools und Bibliotheken


  • bandit, safety, pip-audit, pycryptodome, passlib, secure, pydantic
  • Links zu Ressourcen und offiziellen Empfehlungen

Anhang C: Übungsaufgaben mit Lösungen


  • Injektionsrisiken erkennen und verhindern
  • Hashing und sichere Speicherung implementieren
  • Fehlerhafte Pfadoperationen absichern
  • Lösungen mit Kommentaren und Schritt-für-Schritt-Erklärung


Sie erhalten die folgenden Dateien:
  • EPUB (117KB)
  • PDF (6MB)