diff --git a/1_security/1_theorie/SecurityAutomatisierung.md b/1_security/1_theorie/SecurityAutomatisierung.md index e69de29..6e5ba4f 100644 --- a/1_security/1_theorie/SecurityAutomatisierung.md +++ b/1_security/1_theorie/SecurityAutomatisierung.md @@ -0,0 +1,9 @@ +# Security Automatisierung + +## Security Testing + +![Security Testing Pyramide](../99_assets/images/security_testing_pyramide.png) + +## Security Observability + +![SIEM](../99_assets/images/siem.png) \ No newline at end of file diff --git a/1_security/1_theorie/SecurityKultur.md b/1_security/1_theorie/SecurityKultur.md index e69de29..ad340c3 100644 --- a/1_security/1_theorie/SecurityKultur.md +++ b/1_security/1_theorie/SecurityKultur.md @@ -0,0 +1,6 @@ +# Security Culture + + +## Security Champions + +![Security Champions](../99_assets/images/security_champions.png) \ No newline at end of file diff --git "a/1_security/1_theorie/\303\234bersichtSecInDevOps.md" "b/1_security/1_theorie/\303\234bersichtSecInDevOps.md" index e69de29..f2c616f 100644 --- "a/1_security/1_theorie/\303\234bersichtSecInDevOps.md" +++ "b/1_security/1_theorie/\303\234bersichtSecInDevOps.md" @@ -0,0 +1,38 @@ +# Security (in DevOps) + +![Secure Software Development Lifecycle](../99_assets/images/secure_software_development_lifecycle.png) + +## Anforderungen für Security + + +### Threat Modeling + +Mittels der Bedrohungsmodellierung (Threat Modeling) können frühzeitig potenzielle Bedrohungen, wie Schwachstellen oder die Möglichkeit von Angriffen, gegen ein System oder eine Anwendung systematisch identifiziert und bewertet werden. Ziel ist es, diese Bedrohungen zu verstehen um Maßnahmen zu ergreifen, die das Risiko von Sicherheitsverletzungen verringern. + +Die Bedrohungsmodellierung wird in de nachfolgend beschriebenen Schritten durchgeführt: + +1. __Erstellung eines Abbilds über das System__ (_What are we working on?_): +Mit Hilfe geeigneter Diagramme wie z.B. mit einem Datenflussdiagram wird visualisiert, wie das System aufgebaut ist und wie Daten über diverse Übertragungsprotokolle durch das System fließen. +2. __Identifikation von Bedrohungen und Schwachstellen__ (_What can go wrong?_): +Auf Basis des Systemabbilds werden im zweiten Schritt potenzielle Bedrohungen und Schwachstellen ermittelt. Dies erfolgt mit unterschiedlichen Methoden wie z.B. der [STRIDE]() Methode. +3. __Definition und Umsetzung von Gegenmaßnahmen und Strategien zum Umgang mit den Bedrohungen und Schwachstellen__ (_What are we going to do about it?_): +Für jede der gefundenen Bedrohungen und Schwachstellen müssen dann Sicherheitsmassnahmen definiert und umgesetzt werden um die damit verbundenen Risiken zu mindern. +4. __Retrospektive__ (_Did we do a good enough job?_): +Im letzten Schritt wird geprüft, ob das Threat Model vollständig ist und alle wesentlichen Risiken erkannt und behandelt wurden. Darüber hinaus wird laufend die Effizienz des Threat Modeling Prozesses überprüft. + +### Application Security Verification Standard + +![ASVS](../99_assets/images/asvs.png) + + +## Sichere Architektur und Designprinzipien + +![Secure Software Development Lifecycle](../99_assets/images/architecture_clean_code.png) + +## Secure Coding + +### Referenzen und weiterführende Links + +- [Threat Modeling Manifesto](https://www.threatmodelingmanifesto.org/) +- [OWASP ASVS](https://github.com/OWASP/ASVS) +- [CALMS: The DevOps Culture Model](https://www.atlassian.com/devops) \ No newline at end of file diff --git a/1_security/99_assets/images/architecture_clean_code.png b/1_security/99_assets/images/architecture_clean_code.png new file mode 100644 index 0000000..154d1be Binary files /dev/null and b/1_security/99_assets/images/architecture_clean_code.png differ diff --git a/1_security/99_assets/images/asvs.png b/1_security/99_assets/images/asvs.png new file mode 100644 index 0000000..6aca9ed Binary files /dev/null and b/1_security/99_assets/images/asvs.png differ diff --git a/1_security/99_assets/images/data_flow_diagrams.png b/1_security/99_assets/images/data_flow_diagrams.png new file mode 100644 index 0000000..42a7a40 Binary files /dev/null and b/1_security/99_assets/images/data_flow_diagrams.png differ diff --git a/1_security/99_assets/images/secure_software_development_lifecycle.png b/1_security/99_assets/images/secure_software_development_lifecycle.png new file mode 100644 index 0000000..5b93775 Binary files /dev/null and b/1_security/99_assets/images/secure_software_development_lifecycle.png differ diff --git a/1_security/99_assets/images/security_champions.png b/1_security/99_assets/images/security_champions.png new file mode 100644 index 0000000..89378c8 Binary files /dev/null and b/1_security/99_assets/images/security_champions.png differ diff --git a/1_security/99_assets/images/security_testing_pyramide.png b/1_security/99_assets/images/security_testing_pyramide.png new file mode 100644 index 0000000..0b2a4a0 Binary files /dev/null and b/1_security/99_assets/images/security_testing_pyramide.png differ diff --git a/1_security/99_assets/images/security_topic.png b/1_security/99_assets/images/security_topic.png new file mode 100644 index 0000000..c8c88cd Binary files /dev/null and b/1_security/99_assets/images/security_topic.png differ diff --git a/1_security/99_assets/images/siem.png b/1_security/99_assets/images/siem.png new file mode 100644 index 0000000..1a4371f Binary files /dev/null and b/1_security/99_assets/images/siem.png differ diff --git a/1_security/99_assets/images/threat_model_data_flow_diagram.png b/1_security/99_assets/images/threat_model_data_flow_diagram.png new file mode 100644 index 0000000..683dcc0 Binary files /dev/null and b/1_security/99_assets/images/threat_model_data_flow_diagram.png differ diff --git a/1_security/README.md b/1_security/README.md index e69de29..c01874f 100644 --- a/1_security/README.md +++ b/1_security/README.md @@ -0,0 +1,5 @@ +# Security + +- [Security (in DevOps)](./1_theorie/ÜbersichtSecInDevOps.md) +- [Security Automatisierung](./1_theorie/SecurityAutomatisierung.md) +- [Security Culture](./1_theorie/SecurityKultur.md) \ No newline at end of file diff --git a/README.md b/README.md index fc4ab1c..c2bf6e0 100644 --- a/README.md +++ b/README.md @@ -9,25 +9,28 @@ Dieses Repository enthält alle Übungen und Materialien, die während des Works Der Workshop ist in drei Hauptbereiche unterteilt: //TODO: Agenda vervollständigen + 1. **Grundlagen DevOps** + - Einführung in DevOps-Prinzipien - Continuous Integration (CI) und Continuous Deployment (CD) - - ... + - ... + +2. [**Grundlagen Security**](1_security/README.md) -2. **Grundlagen Security** - Sicherheitsgrundlagen für Entwickler - Bedrohungsmodellierung - - Identifikation von Schwachstellen - - ... + - Sicherheitsanforderungen + - Testautomatisierung für Security + - Security Observabilty 3. **Security in der Supplychain** + - Sicherheitsaspekte in der Lieferkette - Container-Sicherheit - Integration von Sicherheitsprüfungen - ... - - ## Struktur des Repositories Das Repository ist nach den Workshop-Bereichen strukturiert. Jeder Bereich enthält einen separaten Ordner mit den entsprechenden theoretischen Grundlagen und praktischen Teilen. @@ -41,7 +44,6 @@ Das Repository ist nach den Workshop-Bereichen strukturiert. Jeder Bereich enth - [**2_supplychain/**](./2_supplychain/) - Enthält Übungen und Materialien zu Sicherheitsaspekten in der Supplychain. - ## Umfrage zur Erwartungshaltung //TODO: Link zur Umfrage einfügen \ No newline at end of file