Schulungsübersicht
I. Einführung in sicheres Coding und Webanwendungssicherheit
1. Aktuelle Bedrohungslandschaft für Webanwendungen
- Häufige Angriffsvektoren für Webanwendungen
- Sicherheitsrisiken in modernen ASP.NET-Anwendungen
- Die Rolle von sicherem Coding in der Softwareentwicklung
- Einführung in die OWASP-Stiftung und deren Ressourcen
2. Grundprinzipien der sicheren Softwareentwicklung
- Security by Design
- Defense in Depth
- Least Privilege (geringste Rechte)
- Sicheres Versagen (Fail Securely)
- Sichere Standardwerte
- Grundlagen des Threat Modelling
II. Lebenszyklus der sicheren Entwicklung (SDL)
1. Sicherer Softwareentwicklungslebenszyklus
- Sicherheit während des gesamten Entwicklungslebenszyklus
- Sicherheitsanforderungen
- Sichere Architektur und Design
- Sichere Coding-Praktiken
- Sicherheitstests und Validierung
- Sichere Bereitstellung und Wartung
2. Risikobewertung und Threat Modelling
- Identifizierung von Assets und Bedrohungen
- Analyse der Angriffsfläche
- Übersicht über STRIDE
- Priorisierung von Sicherheitsrisiken
III. OWASP Top 10 für ASP.NET-Anwendungen
1. Verständnis der OWASP Top 10
- Gebrochene Zugriffskontrolle
- Kryptographische Fehler
- Injections
- Unsicheres Design
- Sicherheitsfehler bei der Konfiguration
- Schwache und veraltete Komponenten
- Fehler bei der Identifizierung und Authentifizierung
- Fehler bei der Integrität von Software und Daten
- Fehler bei sicherem Logging und Monitoring
- Server-Side Request Forgery (SSRF)
2. Anwendung der OWASP-Empfehlungen
- Sichere Coding-Techniken
- Präventive Kontrollmechanismen
- Sichere Konfigurationspraktiken
- Echtweltbeispiele und Demonstrationen
IV. Authentifizierungs- und Autorisierungssicherheit
1. Grundlagen der Authentifizierung
- Authentifizierungsmechanismen in ASP.NET
- Passwortsicherheit
- Multi-Faktor-Authentifizierung
- Sitzungsverwaltung
- Identitätsverwaltung
2. Autorisierung und Zugriffskontrolle
- Rollenbasierte Autorisierung
- Anspruchs-basierte (Claims-based) Autorisierung
- Richtlinien-basierte Autorisierung
- Verhinderung von Berechtigungsanstieg
- Schutz sensibler Ressourcen
V. Vermeidung von Injektionsangriffen
1. Injektions-Anfälligkeiten
- SQL-Injection
- Befehls-Injection
- LDAP-Injection
- XML-Injection
- Übersicht über NoSQL-Injection
2. Sichere Coding-Techniken
- Parametrisierte Abfragen
- Eingabevalidierung
- Ausgabe-Codierung
- Sicherheitsaspekte bei ORMs
- Sichere Praktiken für den Datenbankzugriff
VI. Vermeidung von Cross-Site Scripting (XSS)
1. Verständnis von XSS
- Gespeichertes XSS
- Reflektiertes XSS
- DOM-basiertes XSS
- Angriffsszenarien
2. Prävention von XSS
- Ausgabe-Codierung
- Eingabevalidierung
- Content Security Policy (CSP)
- Sicherer Umgang mit HTML und JavaScript
- ASP.NET-Sicherheitsfeatures zur XSS-Prävention
VII. Vermeidung von Cross-Site Request Forgery (CSRF)
1. Verständnis von CSRF
- Funktionsweise von CSRF-Angriffen
- Häufige Angriffsszenarien
- Geschäftliche Auswirkungen
2. CSRF-Schutz
- Anti-Forgery-Tokens
- SameSite-Cookies
- Sichere Sitzungsverwaltung
- ASP.NET-Anti-Forgery-Mechanismen
VIII. Sichere Konfiguration von ASP.NET-Anwendungen
1. ASP.NET-Sicherheitsfeatures
- Konfigurationssicherheit
- Sichere HTTP-Header
- HTTPS- und TLS-Konfiguration
- Umgang mit Geheimnissen (Secrets Management)
- Sichere Fehlerbehandlung
2. Schutz sensibler Daten
- Data Protection APIs
- Sichere Speicherung von Anmeldeinformationen
- Grundlagen der Verschlüsselung
- Schlüsselverwaltung
IX. Eingabevalidierung und sicherer Datenumsatz
1. Validierung von Benutzereingaben
- Whitelisting versus Blacklisting
- Serverseitige Validierung
- Überlegungen zur clientseitigen Validierung
- Sicherheit bei Dateiladen
2. Sichere Datenverarbeitung
- Serialization-Sicherheit
- Gefahren durch Deserialization
- Datenintegrität
- Sichere Logging-Praktiken
X. Penetrationstests und Sicherheitsüberprüfung
1. Methodik für Penetrationstests
- Planung von Sicherheitsbewertungen
- Identifizierung von Schwachstellen
- Konzepte der Ausnutzung
- Berichterstattung der Ergebnisse
2. Techniken für Sicherheitstests
- Static Application Security Testing (SAST)
- Dynamic Application Security Testing (DAST)
- Interactive Application Security Testing (IAST)
- Analyse von Abhängigkeiten und Komponenten
- Manuelle Codeüberprüfung
XI. Sicherung von ASP.NET-Anwendungen
1. Anwendung sicherer Coding-Praktiken
- Sichere Implementierung der Authentifizierung
- Sichere Implementierung der Autorisierung
- Sitzungssicherheit
- Ausnahmehandhabung
- Logging und Monitoring
- Überlegungen zur sicheren Bereitstellung
2. Best Practices für Sicherheit
- Sicherheitsstandards für das Coding
- Verwaltung von Abhängigkeiten
- Patch-Management
- Kontinuierliche Verbesserung der Sicherheit
XII. Praktischer Workshop zur Sicherheit
1. Identifizierung und Ausnutzung häufiger Schwachstellen
- Analyse unsicherer ASP.NET-Codes
- Identifizierung von OWASP-Top-10-Schwachstellen
- Verständnis von Angriffstechniken
- Bewertung der Anwendungssicherheit
2. Behebung von Sicherheitsproblemen
- Anwendung sicherer Coding-Fixes
- Validierung der Gegenmaßnahmen
- Testen der behobenen Anwendungen
- Übung zur Überprüfung des sicheren Codings
XIII. Zusammenfassung und Kursüberprüfung
1. Wiederholung der wichtigsten Konzepte
- Prinzipien sicheren Designs
- Minderungsstrategien für die OWASP Top 10
- ASP.NET-Sicherheitsfeatures
- Sicherer Entwicklungslebenszyklus
2. Abschliessende Diskussion
- Best Practices für sicheres Coding
- Einfügen von Sicherheit in Entwicklungsteams
- Zusätzliche OWASP-Ressourcen und Tools
- FAQ und nächste Schritte
Voraussetzungen
Erfahrung mit ASP.NET
Erfahrung im Erstellen 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