Schulungsübersicht
I. Einführung in das sichere Coding und die Sicherheit von Webanwendungen
1. Die Bedrohungslandschaft moderner Webanwendungen
- Gängige Angriffsvektoren auf 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
- Security by Design (Sicherheit durch Design)
- Abwehr in der Tiefe
- Geringste Berechtigung
- Sicheres Versagen (Fail Securely)
- Sichere Standardwerte
- Grundlagen der Bedrohungsmodellierung
II. Lebenszyklus der sicheren Entwicklung (SDL)
1. Lebenszyklus der sicheren Softwareentwicklung
- Sicherheit über den gesamten Entwicklungslebenszyklus hinweg
- Sicherheitsanforderungen
- Sichere Architektur und Konzeption
- Praktiken des sicheren Codings
- Sicherheitstests und Validierung
- Sichere Bereitstellung und Wartung
2. Risikobewertung und Bedrohungsmodellierung
- Identifizierung von Assets und Bedrohungen
- Analyse der Angriffsfläche
- Überblick über STRIDE
- Priorisierung von Sicherheitsrisiken
III. OWASP Top 10 für ASP.NET-Anwendungen
1. Die OWASP Top 10 verstehen
- Beschädigte Zugriffskontrolle (Broken Access Control)
- Kryptografische Fehler (Cryptographic Failures)
- Injektion
- Unsicheres Design (Insecure Design)
- Falsche Sicherheitskonfiguration (Security Misconfiguration)
- Verwundbare und veraltete Komponenten (Vulnerable and Outdated Components)
- Fehler bei Identifizierung und Authentifizierung (Identification and Authentication Failures)
- Fehler bei Integrität von Software und Daten (Software and Data Integrity Failures)
- Fehler bei Protokollierung und Überwachung (Security Logging and Monitoring Failures)
- 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 bei Authentifizierung und Autorisierung
1. Grundlagen der Authentifizierung
- Authentifizierungsmechanismen in ASP.NET
- Passwortsicherheit
- Mehrfaktor-Authentifizierung
- Sitzungsverwaltung (Session Management)
- Identitätsverwaltung
2. Autorisierung und Zugriffskontrolle
- Rollenbasierte Autorisierung
- Claims-basierte Autorisierung
- Policy-basierte Autorisierung
- Vermeidung von Berechtigungserweiterungen (Privilege Escalation)
- Schutz sensibler Ressourcen
V. Verhinderung von Injektionsangriffen
1. Injektionsverwundbarkeiten
- SQL-Injektion
- Befehlseinbettung (Command Injection)
- LDAP-Injektion
- XML-Injektion
- Überblick über NoSQL-Injektion
2. Techniken des sicheren Codings
- Parameterisierte Abfragen
- Eingabevalidierung
- Ausgabekodierung
- Sicherheitsaspekte bei ORM (Object-Relational Mapping)
- Sichere Praxis bei Datenbankzugriffen
VI. Verhinderung von Cross-Site-Scripting (XSS)
1. XSS verstehen
- Speicherndes XSS (Stored XSS)
- Reflektiertes XSS (Reflected XSS)
- DOM-basiertes XSS
- Angriffsszenarien
2. XSS-Prävention
- Ausgabekodierung
- Eingabevalidierung
- Content Security Policy (CSP)
- Sichere Verarbeitung von HTML und JavaScript
- Sicherheitsfunktionen von ASP.NET zur XSS-Prävention
VII. Verhinderung von Cross-Site-Request-Forgery (CSRF)
1. CSRF verstehen
- Wie CSRF-Angriffe funktionieren
- Gängige Angreifsszenarien
- Geschäftliche Auswirkungen
2. CSRF-Schutz
- Anti-Forgery-Tokens
- SameSite-Cookies
- Sichere Sitzungsverwaltung
- Anti-Forgery-Mechanismen in ASP.NET
VIII. Sichere Konfiguration von ASP.NET-Anwendungen
1. Sicherheitsfunktionen von ASP.NET
- Konfigurationssicherheit
- Sichere HTTP-Header
- Konfiguration von HTTPS und TLS
- Verwaltung von Geheimnissen (Secrets Management)
- Sichere Fehlerbehandlung
2. Schutz sensibler Daten
- APIs für Datensicherheit (Data Protection)
- Sichere Speicherung von Zugangsdaten
- Grundlagen der Verschlüsselung
- Schlüsselverwaltung
IX. Eingabevalidierung und sichere Datenverarbeitung
1. Validierung von Benutzereingaben
- Weisse Liste (Whitelisting) versus Schwarze Liste (Blacklisting)
- Serverseitige Validierung
- Aspekte der Clientseitigen Validierung
- Sicherheit beim Datei-Upload
2. Sichere Datenverarbeitung
- Sicherheit bei der Serialisierung
- Risiken bei der Deserialisierung
- Datenintegrität
- Praktiken der sicheren Protokollierung
X. Penetrationstests und Sicherheitsverifikation
1. Methodik der Penetrationstests
- Planung von Sicherheitsbewertungen
- Identifizierung von Schwachstellen
- Konzepte der Ausnutzung (Exploitation)
- Berichterstattung von Befunden
2. Techniken der Sicherheitstests
- Statische Anwendungssicherheitstests (SAST)
- Dynamische Anwendungssicherheitstests (DAST)
- Interaktive Anwendungssicherheitstests (IAST)
- Analyse von Abhängigkeiten und Komponenten
- Manuelle Code-Prüfung
XI. Absicherung von ASP.NET-Anwendungen
1. Anwendung von Praktiken des sicheren Codings
- Implementierung der sicheren Authentifizierung
- Implementierung der sicheren Autorisierung
- Sitzungssicherheit
- Exception-Handling
- Protokollierung und Überwachung
- Aspekte der sicheren Bereitstellung
2. Best Practices für die Sicherheit
- Standards des sicheren Codings
- Verwaltung von Abhängigkeiten
- Patch-Management
- Kontinuierliche Verbesserung der Sicherheit
XII. Workshop zur praktischen Sicherheitsanwendung
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 Korrekturen für sicheres Coding
- Validierung von Gegenmassnahmen
- Testen der behobenen Anwendungen
- Übung zur Überprüfung des sicheren Codings
XIII. Zusammenfassung und Kursrückblick
1. Wiederholung der wichtigsten Konzepte
- Prinzipien des sicheren Designs
- Milderungsstrategien für die OWASP Top 10
- Sicherheitsfunktionen von ASP.NET
- Lebenszyklus der sicheren Entwicklung
2. Schlussdiskussion
- Best Practices für das sichere Coding
- Sicherheit in Entwicklungsteams integrieren
- Zusätzliche OWASP-Ressourcen und Tools
- Fragen und Antworten sowie nächste Schritte
Voraussetzungen
Erfahrung mit ASP.NET
Erfahrung in der Entwicklung von Webanwendungen
Erfahrungsberichte (5)
Einführungen in die vielen verschiedenen Arten von unsicheren Verhaltensweisen.
Zhongqi
Kurs - Secure Developer .NET (Inc OWASP)
Maschinelle Übersetzung
Eine Einzelstunde mit Raymond war fantastisch. Er war sehr aufmerksam und erfüllte alle meine Trainingsbedürfnisse.
Joshua
Kurs - Secure Developer .NET (Inc OWASP)
Maschinelle Übersetzung
Das hohe Niveau der Kenntnisse des Dozenten bedeutete, dass wir ein sehr gutes Einblick in die behandelten Themen erhielten.
Dafydd - TATA Steel
Kurs - Secure Developer .NET (Inc OWASP)
Maschinelle Übersetzung
die Referenzlinks
Abraham Gonzalez - ATEB Servicios
Kurs - Secure Developer .NET (Inc OWASP)
Maschinelle Übersetzung
Das Fachwissen des Trainers war ausgezeichnet, und die Art und Weise, wie die Sitzungen strukturiert waren, damit das Publikum den Demonstrationen folgen konnte, half wirklich dabei, dieses Wissen zu vertiefen, im Vergleich dazu, einfach nur zuzuhören.
Jack Allan - RSM UK Management Ltd.
Kurs - Secure Developer .NET (Inc OWASP)
Maschinelle Übersetzung