Python Desktop Application Security

Total time
Location
At location, Online
Starting date and place

Python Desktop Application Security

GFU Cyrus AG
Logo GFU Cyrus AG
Provider rating: starstarstarstarstar_border 8.2 GFU Cyrus AG has an average rating of 8.2 (out of 16 reviews)

Need more information? Get more details on the site of the provider.

Starting dates and places
computer Online: Zoom
19 Oct 2026 until 21 Oct 2026
computer Online: Zoom
7 Dec 2026 until 9 Dec 2026
placeKöln
8 Mar 2027 until 10 Mar 2027
computer Online: Zoom
8 Mar 2027 until 10 Mar 2027
placeKöln
12 May 2027 until 14 May 2027
computer Online: Zoom
12 May 2027 until 14 May 2027
placeKöln
2 Aug 2027 until 4 Aug 2027
computer Online: Zoom
2 Aug 2027 until 4 Aug 2027
placeKöln
4 Oct 2027 until 6 Oct 2027
computer Online: Zoom
4 Oct 2027 until 6 Oct 2027
Description

Schulungen der Extraklasse ✔ Durchführungsgarantie ✔ Trainer aus der Praxis ✔ Kostenfreies Storno ✔ 3=2 Kostenfreie Teilnahme für den Dritten ✔ Persönliche Lernumgebung ✔ Kleine Lerngruppen

Seminarziel

Nach Abschluss des Seminars sind die Teilnehmenden in der Lage, Sicherheitsrisiken in Python-Desktop-Anwendungen strukturiert zu analysieren und wirksame Schutzmaßnahmen umzusetzen. Sie können typische Schwachstellen in Eingabeverarbeitung, Datei- und Prozesszugriff, lokaler Datenspeicherung,Authentifizierung, Kryptographie und Software-Lieferkette erkennen, bewerten und priorisiert beheben.
Darüber hinaus verstehen sie, wie sichere Desktop-Anwendungen nicht nur im Code, sondern auch in Build, Packaging, Deployment, Update-Prozess und Betrieb abgesichert werden. Das Seminar versetzt die Teilnehmenden in die Lage, eigene Python-Clients sicherer zu entwerfen, vorhandene Anwendungen…

Read the complete description

Frequently asked questions

There are no frequently asked questions yet. If you have any more questions or need help, contact our customer service.

Schulungen der Extraklasse ✔ Durchführungsgarantie ✔ Trainer aus der Praxis ✔ Kostenfreies Storno ✔ 3=2 Kostenfreie Teilnahme für den Dritten ✔ Persönliche Lernumgebung ✔ Kleine Lerngruppen

Seminarziel

Nach Abschluss des Seminars sind die Teilnehmenden in der Lage, Sicherheitsrisiken in Python-Desktop-Anwendungen strukturiert zu analysieren und wirksame Schutzmaßnahmen umzusetzen. Sie können typische Schwachstellen in Eingabeverarbeitung, Datei- und Prozesszugriff, lokaler Datenspeicherung,Authentifizierung, Kryptographie und Software-Lieferkette erkennen, bewerten und priorisiert beheben.
Darüber hinaus verstehen sie, wie sichere Desktop-Anwendungen nicht nur im Code, sondern auch in Build, Packaging, Deployment, Update-Prozess und Betrieb abgesichert werden. Das Seminar versetzt die Teilnehmenden in die Lage, eigene Python-Clients sicherer zu entwerfen, vorhandene Anwendungen gezielt zu härten und Sicherheitsanforderungen frühzeitig in Entwicklungsprozesse zu integrieren.

Inhalt

  • Sicherheitsgrundlagen für Python-Desktop-Anwendungen
    • Schutzziele: Vertraulichkeit, Integrität, Verfügbarkeit, Nachvollziehbarkeit
    • Bedrohungsmodell für Desktop-Software
    • Typische Angreifer, Angriffspfade und Missbrauchsszenarien
    • Unterschiede zwischen Desktop-, Web- und Backend-Sicherheit
  • Angriffsfläche einer Desktop-Anwendung systematisch erfassen
    • GUI-Eingaben, Dateiauswahl, Drag-and-drop, Clipboard und Importfunktionen
    • Konfigurationsdateien, temporäre Dateien, Logs, lokale Datenbanken und Caches
    • Betriebssystemnahe Schnittstellen, Umgebungsvariablen und Benutzerrechte
    • Externe Programme, Shell-Aufrufe, URLs, Deep Links und Interprozesskommunikation
  • Sichere Eingabeverarbeitung
    • Validierung, Normalisierung und Canonicalization
    • Positivlisten, strukturelle Validierung und fachliche Validierung
    • Typische Fehler bei Regex, Parsing und Datentransformation
    • Grenzen reiner Validierung und Zusammenspiel mit weiteren Schutzmaßnahmen
  • Praxisübung: Eingaben und Dateipfade absichern
    • Analyse einer absichtlich verwundbaren Python-Anwendung
    • Absicherung von Benutzereingaben und Dateipfaden
    • Nachvollziehbare Gegenüberstellung: unsicheres Muster und robuste Umsetzung
  • Dateisystem- und Ressourcen-Sicherheit
    • Path Traversal, unsichere Dateinamen, Verzeichniswechsel und symbolische Links
    • Temporäre Dateien, Dateirechte, Race Conditions und TOCTTOU-Probleme
    • Risiken bei Archiv- und Dokumentverarbeitung
    • Sichere Ablage und Trennung von Benutzerdaten, Konfiguration und Secrets
  • Prozess- und Betriebssystem-Interaktion
    • Risiken durch subprocess, Shell=True, Kommandoverkettung und Parameterübergabe
    • Sichere Nutzung systemnaher APIs statt Shell-Aufrufen
    • Umgang mit externen Tools und Rückgabewerten
    • Plattformunterschiede zwischen Windows und Linux
  • Unsichere Python-Mechanismen und riskante Sprachmerkmale
    • exec, eval, compile und dynamische Importe
    • pickle, unsafe Deserialisierung und unsichere Objekt-Rekonstruktion
    • Module Hijacking, Suchpfade und unbeabsichtigte Modulüberschattung
    • Gefahren durch Monkey Patching und unkontrollierte Erweiterungspunkte
  • Praxisübung: Unsichere Python-Konstrukte erkennen und ersetzen
    • Entfernung dynamischer Codeausführung
    • Austausch unsicherer Deserialisierung gegen sichere Formate und Parser
    • Absicherung von Import- und Plugin-Mechanismen
  • Authentifizierung und Sitzungsdaten in Desktop-Clients
    • Welche Authentifizierung in den Client gehört und welche nicht
    • Lokale Passwortspeicherung vermeiden
    • Sichere Behandlung von Tokens, API-Schlüsseln und Sitzungsdaten
    • MFA-Einbindung aus Sicht des Desktop-Clients
  • Geheimnisverwaltung und Schutz sensibler Daten
    • Grenzen lokaler Verschlüsselung bei Client-Software
    • Betriebssystemnahe Secret Stores: z. B. DPAPI, Keychain, libsecret
    • Speicherabbilder, Crash Dumps, Paging und Speicherreste
    • Reduktion unnötiger Geheimnisse im Client
  • Kryptographie in Python richtig einsetzen
    • Sichere Zufallszahlen und kryptographisch geeignete Quellen
    • Hashing, Passwort-Hashing und Integritätsschutz
    • Symmetrische Verschlüsselung, AEAD und Nonce-Regeln
    • Asymmetrische Verfahren, Schlüsselaustausch und Signaturen
    • Häufige Fehlanwendungen und Scheinsicherheit im Desktop-Kontext
  • Praxisübung: Sichere Nutzung von Kryptographie
    • Zufallszahlen, Hashing und AEAD korrekt einsetzen
    • Typische Implementierungsfehler identifizieren und korrigieren
    • Bewertung: Was kryptographisch sinnvoll im Client lösbar ist und was nicht
  • Sichere Netzwerkkommunikation
    • TLS-Prüfung, Zertifikatsvalidierung und Fehlkonfigurationen
    • Risiken bei deaktivierter Prüfung und unsicheren Test-Setups
    • Umgang mit Proxies, Unternehmensnetzen und Zertifikatsketten
    • Sichere API-Kommunikation aus Desktop-Anwendungen
  • Sichere Update-Mechanismen
    • Warum Auto-Update ein kritischer Sicherheitsbereich ist
    • Signierung, Vertrauensanker und Integritätsprüfung
    • Schutz gegen manipulierte Update-Quellen und Rollback-Angriffe
    • Trennung von Release-, Test- und internen Kanälen
  • Supply Chain Security und Build-Sicherheit
    • Risiken durch abhängige Pakete und transitive Dependencies
    • Typosquatting, Dependency Confusion und kompromittierte Updates
    • Lockfiles, Hash-Pinning, SBOM und reproduzierbare Builds
    • Sicherheitsprüfungen in CI/CD für Python-Projekte
  • Praxisübung: Abhängigkeiten und Build-Prozess härten
    • Analyse eines Python-Projekts auf riskante Abhängigkeiten
    • Einbau technischer Kontrollpunkte in den Build-Prozess
    • Bewertung von Maßnahmen nach Wirksamkeit und Umsetzbarkeit
  • Native Erweiterungen und unsicherer Fremdcode
    • Sicherheitsfolgen von ctypes, C-Extensions und eingebundenen Bibliotheken
    • Speicherfehler außerhalb des Python-Schutzmodells
    • Vertrauensgrenzen zwischen Python-Code und nativen Komponenten
    • Strategien zur Reduktion und Kontrolle nativer Risiken
  • Logging, Fehlerbehandlung und Information Exposure
    • Vermeidung sensibler Daten in Logs, Tracebacks und Fehlermeldungen
    • Sichere Fehlerbehandlung ohne Informationsabfluss
    • Datenschutzgerechte Telemetrie und Diagnosedaten
    • Trennung zwischen Entwicklerdiagnose und produktivem Verhalten
  • Härtung von Packaging und Auslieferung
    • Sicherheitsaspekte bei PyInstaller, Embedding und Distribution
    • Code Signing und Vertrauenskette bei Releases
    • Schutz gegen manipulierte Artefakte und inoffizielle Builds
    • Sichere Verteilung interner Desktop-Anwendungen
  • Prüfprozess und Sicherheitsqualität im Entwicklungsalltag
    • Security Checklisten für Architektur, Code Review und Release
    • Statische und dynamische Prüfungen für Python-Projekte
    • Sicherheitsrelevante Tests mit vertretbarem Aufwand etablieren
    • Priorisierung von Findings nach Risiko und Ausnutzbarkeit
  • Praxisworkshop: Härtung einer Python-Desktop-Anwendung
    • Gemeinsame Analyse einer Beispielanwendung mit mehreren Schwachstellen
    • Schrittweise Umsetzung technischer Schutzmaßnahmen
    • Ableitung eines praxistauglichen Härtungsplans für eigene Projekte
  • Best Practices und Transfer in die Praxis
    • Sicherheitsprinzipien für robuste Desktop-Software
    • Typische Architekturentscheidungen und ihre Sicherheitsfolgen
    • Leitlinien für neue und bestehende Python-Anwendungen
    • Nächste Schritte für Team, Projekt und Organisation
There are no reviews yet.
    Share your review
    Do you have experience with this course? Submit your review and help other people make the right choice. As a thank you for your effort we will donate $1.- to Stichting Edukans.

    There are no frequently asked questions yet. If you have any more questions or need help, contact our customer service.