Kontakt aufnehmen

Schulungsübersicht

I. Einführung in das sichere Coding und die Sicherheit von Webanwendungen

1. Das Bedrohungsprofil moderner Webanwendungen

  • Gängige Angriffsvektoren für Webanwendungen
  • Sicherheitsrisiken in modernen ASP.NET-Anwendungen
  • Die Rolle des sicheren Codings in der Softwareentwicklung
  • Einführung in die OWASP Foundation und ihre Ressourcen

2. Prinzipien der sicheren Softwareentwicklung

  • Sicherheit durch Design (Security by Design)
  • Schutz durch mehrere Ebenen (Defense in Depth)
  • Least-Privilege-Prinzip
  • Sicheres Versagen (Fail Securely)
  • Sichere Standardkonfigurationen
  • Grundlagen des Threat Modelings

II. Sichere Entwicklungslebenszyklen (SDL)

1. Sichere Softwareentwicklungslebenszyklen

  • Sicherheit über den gesamten Entwicklungslebenszyklus hinweg
  • Sicherheitsanforderungen
  • Sichere Architektur und Design
  • Praktiken des sicheren Codings
  • Sicherheitstests und Validierung
  • Sichere Bereitstellung und Wartung

2. Risikobewertung und Threat Modeling

  • Identifizierung von Vermögenswerten und Bedrohungen
  • Analyse der Angriffsfläche (Attack Surface)
  • Überblick über STRIDE
  • Priorisierung von Sicherheitsrisiken

III. OWASP Top 10 für ASP.NET-Anwendungen

1. Das OWASP Top 10 verstehen

  • Gestörter Zugriffskontrolle (Broken Access Control)
  • Kryptografische Mängel (Cryptographic Failures)
  • Injektionen (Injection)
  • Unsicheres Design (Insecure Design)
  • Fehlkonfigurationen der Sicherheit (Security Misconfiguration)
  • Verwundbare und veraltete Komponenten
  • Mängel in Identifizierung und Authentifizierung
  • Mängel in Software- und Datenintegrität
  • Mängel in der Protokollierung und Überwachung der Sicherheit
  • Server-Seitige Anfragefälschung (SSRF)

2. Anwendung der OWASP-Empfehlungen

  • Techniken des sicheren Codings
  • Präventive Kontrollen
  • Praktiken der sicheren Konfiguration
  • Praxisbeispiele und Demonstrationen

IV. Sicherheit von Authentifizierung und Autorisierung

1. Grundlagen der Authentifizierung

  • Authentifizierungsmechanismen in ASP.NET
  • Passwortsicherheit
  • Mehrstufige Authentifizierung (MFA)
  • Sitzungsverwaltung (Session Management)
  • Identitätsverwaltung

2. Autorisierung und Zugriffskontrolle

  • Rollenbasierte Autorisierung
  • Anspruchsbasierte Autorisierung (Claims-based)
  • richtlinienbasierte Autorisierung
  • Verhinderung von Privilegienaufstieg
  • Schutz sensibler Ressourcen

V. Verhinderung von Injektionsangriffen

1. Verwundbarkeiten bei Injektionen

  • SQL-Injection
  • Befehls-Injection (Command Injection)
  • LDAP-Injection
  • XML-Injection
  • Überblick über NoSQL-Injection

2. Techniken des sicheren Codings

  • Parametrisierte Abfragen
  • Eingabvalidierung (Input Validation)
  • Ausgabe-Kodierung (Output Encoding)
  • Sicherheitsaspekte bei ORMs
  • Sichere Praktiken für den Datenbankzugriff

VI. Verhinderung von Cross-Site Scripting (XSS)

1. XSS verstehen

  • Gespeichertes XSS (Stored XSS)
  • Reflektiertes XSS (Reflected XSS)
  • DOM-basiertes XSS
  • Angriffsszenarien

2. XSS-Verhinderung

  • Ausgabe-Kodierung (Output Encoding)
  • Eingabvalidierung
  • Content Security Policy (CSP)
  • Sichere Behandlung von HTML und JavaScript
  • ASP.NET-Sicherheitsfunktionen zur XSS-Verhinderung

VII. Verhinderung von Cross-Site Request Forgery (CSRF)

1. CSRF verstehen

  • Funktionweise von CSRF-Angriffen
  • Gängige Angriffsszenarien
  • Geschäftliche Auswirkungen

2. CSRF-Schutz

  • Anti-Forgery-Tokens
  • SameSite-Cookies
  • Sichere Sitzungsverwaltung
  • Anti-Forgery-Mechanismen von ASP.NET

VIII. Sichere Konfiguration von ASP.NET-Anwendungen

1. ASP.NET-Sicherheitsfunktionen

  • Sicherheit der Konfiguration
  • Sichere HTTP-Header
  • Konfiguration von HTTPS und TLS
  • Verwaltung von Geheimnissen (Secrets Management)
  • Sichere Fehlerbehandlung

2. Schutz sensibler Daten

  • APIs für den Datenschutz (Data Protection)
  • Sichere Speicherung von Anmeldeinformationen
  • Grundlagen der Verschlüsselung
  • Schlüsselverwaltung

IX. Eingabvalidierung und sichere Datenverarbeitung

1. Validierung der Benutzereingaben

  • Weißlisten vs. Schwarze Listen (Whitelisting vs. Blacklisting)
  • Serverseitige Validierung
  • Erwägungen zur Client-seitigen Validierung
  • Sicherheit beim Dateiupload

2. Sichere Datenverarbeitung

  • Sicherheit bei der Serialisierung
  • Risiken bei der Deserialisierung
  • Datenintegrität
  • Sichere Protokollierpraktiken

X. Penetrationstesting und Sicherheitsverifizierung

1. Methodik des Penetrationstestings

  • Planung von Sicherheitsprüfungen
  • Identifizierung von Schwachstellen
  • Begriffe zur Ausnutzung von Schwachstellen
  • Berichterstattung von Befunden

2. Techniken der Sicherheitstests

  • Statische Anwendungssicherheitstests (SAST)
  • Dynamische Anwendungssicherheitstests (DAST)
  • Interaktive Anwendungssicherheitstests (IAST)
  • Abhängigkeits- und Komponentenanalyse
  • Manuelle Code-Überprüfung

XI. Absicherung von ASP.NET-Anwendungen

1. Anwendung von Praktiken des sicheren Codings

  • Implementierung der sicheren Authentifizierung
  • Implementierung der sicheren Autorisierung
  • Sitzungssicherheit
  • Ausnahmetypenbehandlung (Exception Handling)
  • Protokollierung und Überwachung
  • Erwägungen für die sichere Bereitstellung

2. Best Practices für die Sicherheit

  • Standards für sicheres Coding
  • Verwaltung von Abhängigkeiten
  • Verwaltung von Patches
  • Fortlaufende Verbesserung der Sicherheit

XII. Praxisworkshop zur Sicherheit

1. Identifizierung und Ausnutzung gängiger Schwachstellen

  • Analyse unsicheren ASP.NET-Codes
  • Identifizierung von OWASP Top 10-Schwachstellen
  • Verständnis von Angriffstechniken
  • Bewertung der Anwendungssicherheit

2. Behebung von Sicherheitsproblemen

  • Anwendung von sicheren Coding-Fixes
  • Validierung der Gegenmaßnahmen
  • Testen behebter Anwendungen
  • Übung zur Überprüfung sicheren Codings

XIII. Zusammenfassung und Kurswiederholung

1. Wiederholung der Kernkonzepte

  • Prinzipien des sicheren Designs
  • Minderungsstrategien für das OWASP Top 10
  • ASP.NET-Sicherheitsfunktionen
  • Sicherer Entwicklungslebenszyklus

2. Abschließende Diskussion

  • Best Practices für sicheres Coding
  • Integration der Sicherheit in Entwicklungsteams
  • Zusätzliche OWASP-Ressourcen und -Werkzeuge
  • Fragen & Antworten und nächste Schritte

Voraussetzungen

Kenntnisse mit ASP.NET
Erfahrung in der Erstellung von Webanwendungen

 21 Stunden

Teilnehmerzahl


Preis je Teilnehmer (exkl. USt)

Erfahrungsberichte (5)

Kommende Kurse

Verwandte Kategorien