Schulung: Sichere Architekturen
- Sicherheitsaspekte beim Systementwurf
- Grundlegende Konzepte der Kryptografie
- Sicherheitsprobleme in Architekturen identifizieren
Architektur ist die Menge der riskanten bzw. schwierigen Entscheidungen. Oftmals müssen viele davon bereits zu Beginn eines Projektes getroffen werden und sind später schwer, wenn nicht sogar aus ökonomischer oder technischer Sicht unmöglich, zu ändern.
Insbesondere die Qualitätsmerkmale eines Systems werden von solchen schwierigen Entscheidungen geprägt. In der Regel ist es deutlich einfacher einen weiteren Anwendungsfall umzusetzen als z.B. die Performance drastisch zu verbessern oder die Bedienbarkeit spürbar zu steigern. Oder ein System abzusichern.
Im Gegensatz zu Sicherheitslücken, welche durch bloße Implementierungsfehler entstehen, sind Sicherheitslücken in der Architektur meist nur mit erheblichem Umstrukturierungsaufwand zu beheben, im schlimmsten Fall werden wesentliche Sicherheitskonzepts überhaupt nicht abgedeckt. Sicherheitslücken in der Implementierung, wie beispielsweise SQL Injection, Cross Site Scripting oder Buffer Overflow, lassen sich in der Regel leicht in einer „Version 1.1“ durch reine Code-Änderungen beheben. Hingegen kann nachlässiges Management von Identitäten und Privilegien beispielsweise nicht „mal eben so“ ausgebessert werden.
In dieser Schulung lernst du, wie du Sicherheitsaspekte beim Systementwurf von Anfang an berücksichtigst, ohne dabei „Big Design Up Front“ zu betreiben. Erfahre, wie Bedrohungen identifiziert und gemanagt werden können, und verstehe grundlegende Konzepte der Kryptographie, damit du für dein System sinnvolle und sichere Architekturentscheidungen treffen kannst.
Du wirst alles, was du theoretisch erlernst direkt in einem praktischen Beispiel anwenden. Im Verlauf der Schulung wirst du eine Architektur entwerfen, diese mittels Bedrohungsanalyse untersuchen und gegebenenfalls iterativ verbessern.
Einführung und Analyse
- Begrifflichkeiten, CVEs, CWEs, CVSS, …
- Schutzziele
- Sicherheit als Qualitätsmerkmal
- Richtlinien und Zertifizierungen
Bedrohungsanalysen
- Assets identifizieren, Angriffsbäume erstellen, STRIDE
Sicherer Design-/Entwicklungsprozess
- Frameworks: OpenSAMM, MS SDL, BSIMM
- Input Validation und Output Escaping
- Zugriffskonzepte
- Security-Analyse: SAST, DAST, IAST, SCA
- Incident Management
Angewandte Kryptographie
- Grundbegriffe
- Symmetrische und asymmetrische Kryptographie, Hashfunktionen
- Schlüsselaustauschverfahren, PKIs, Trust on First Use
- Sichere Zufallszahlen
- Transport Layer Security
Web: Technische Grundlagen
- OAuth, OpenID Connect, SAML2, JWT
Web: Mögliche Angriffsvektoren
- Injection-Angriffe
- DoS / DDoS-Angriffe
- Machine-in-the-Middle-Angriffe
- Social Engineering
Web: Security und Infrastruktur
- Web Application Firewalls
- Intrusion Detection / Intrusion Prevention, Logging und Monitoring
Es sind keine besonderen Vorkenntnisse erforderlich.
Mindestanzahl Teilnehmende: 3 Personen