mirror of
https://gitlab.com/harald.mueller/aktuelle.kurse.git
synced 2024-11-27 20:21:56 +01:00
94 lines
7.1 KiB
Markdown
94 lines
7.1 KiB
Markdown
# M183 Applikationssicherheit implementieren
|
||
|
||
Inhaltsverzeichnis
|
||
|
||
[TOC]
|
||
|
||
|
||
[**Modulidentifikation** ICT CH](https://www.modulbaukasten.ch/module/183/3/de-DE?title=Applikationssicherheit-implementieren)
|
||
|
||
[weitere TBZ Unterlagen -> https://gitlab.com/ch-tbz-it/Stud/m183/m183](https://gitlab.com/ch-tbz-it/Stud/m183/m183)
|
||
|
||
## Themenüberblick
|
||
|
||
[Themenüberblick](https://gitlab.com/ch-tbz-it/Stud/m183/m183/-/tree/main/0%20Themen%C3%BCberblick)
|
||
|
||
|
||
|
||
- [Schutzziele "CIA"](https://gitlab.com/ch-tbz-it/Stud/m183/m183/-/blob/main/0%20Themen%C3%BCberblick/Schutzziele.md)
|
||
- [Massnahmen](https://gitlab.com/ch-tbz-it/Stud/m183/m183/-/blob/main/0%20Themen%C3%BCberblick/Massnahmen.md)
|
||
|
||
|
||
## Leistungsbeurteilungen (Prüfungen)
|
||
|
||
- LB1 (40%) Vortrag OWASP (20 min pro Person)
|
||
- LB2 (60%) Auftrag Penetrationstesting als Projektarbeit - [Sicherheitsumsetzung in einer Applikation](https://gitlab.com/ch-tbz-it/Stud/m183/lb2-applikation)
|
||
|
||
|
||
## Ablaufplan 2024-Q2 (Mi morgens)
|
||
|
||
|Tag |WUP23 |Thema, Auftrag, Übung |
|
||
|---- |---- |---- |
|
||
| 1 | Mi 13.11.24 | Themeneinstieg, Schutzziele <br> 'Open Web Applicaiton Security Project' ([OWASP](https://gitlab.com/ch-tbz-it/Stud/m183/m183/-/tree/main/1%20OWASP)), [https://owasp.org](https://owasp.org), [Top 10](https://owasp.org/Top10) <br> ✍ [LB1: Auftrag](https://gitlab.com/harald.mueller/aktuelle.kurse/-/blob/master/m183/README.md#lb1-owasp-top-ten-project-gruppenarbeit) |
|
||
| 2 | Mi 20.11.24 | LB1: OWASP Auftrag (Fortsetzung) |
|
||
| 3 | Mi 27.11.24 | LB1: OWASP Auftrag (Fortsetzung) |
|
||
| 4 | Mi 04.12.24 | LB1: [Vorträge Teil 1](https://tbzedu-my.sharepoint.com/:x:/g/personal/harald_mueller_tbz_ch/Ebdd_3Gn2n1EoizFEAeJGO0BZvvUivdJvN0DXC58GaxxVA?e=h7KgO4) <br>[Theorie Sessionhandling](https://gitlab.com/ch-tbz-it/Stud/m183/m183/-/tree/main/2%20Sessionhandling,%20Authentifizierung%20und%20Autorisierung/Sessionhandling) und individuelle Vertiefung <br> ✍ [Auftrag](https://gitlab.com/ch-tbz-it/Stud/m183/m183/-/blob/main/2%20Sessionhandling,%20Authentifizierung%20und%20Autorisierung/Sessionhandling/Auftrag.md)<br> Was ist Penetrationstesting [IBM](https://www.ibm.com/de-de/topics/penetration-testing), [Wikipedia](https://de.wikipedia.org/wiki/Penetrationstest_(Informatik)) <br> ✍ LB2: Auftrag Penetrationtesting -> Umsetzung in einer Applikation |
|
||
| 5 | Mi 11.12.24 | LB1: [Vorträge Teil 2](https://tbzedu-my.sharepoint.com/:x:/g/personal/harald_mueller_tbz_ch/Ebdd_3Gn2n1EoizFEAeJGO0BZvvUivdJvN0DXC58GaxxVA?e=h7KgO4) <br>Theorie Benutzerauthentifizierung und -autorisierung <br> Weiterarbeit Penetrationtesting |
|
||
| 6 | Mi 18.12.24 | Repetition Kryptographie (Symmetrische und asymmetrische Verschlüsselung, Hash-Methoden und digitale Signaturen) <br> Weiterarbeit Penetrationtesting |
|
||
| - | -- | Weihnachtsferien |
|
||
| 7 | Mi 08.01.25 | Logging & Monitoring <br> Weiterarbeit Penetrationtesting |
|
||
| 8 | Mi 15.01.25 | Weiterarbeit Penetrationtesting |
|
||
| - | -- | WUP-Proj-Woche |
|
||
| - | Mi 29.01.25 | [Abgabe online zusammen mit M323 gemäss Terminliste](https://tbzedu-my.sharepoint.com/:x:/g/personal/harald_mueller_tbz_ch/ERl0LOwka2ZDgk9YQj4oxrgBcrUfujx-A9ZnFx93FdTsqg?e=84CPwV) |
|
||
|
||
<br>
|
||
<br>
|
||
<br>
|
||
|
||
# LB1: OWASP Top Ten Project (Gruppenarbeit)
|
||
|
||
## Rahmenbedingungen
|
||
Das Open Web Applicaiton Security Project (OWASP) ist eine weltweite non-Profit Organisation, die sich zum Ziel setzt, Qualität und Sicherheit von Software zu verbessern. Es ist das Ziel, Entwickler, Designer, Softwarearchitekten für potenzielle Schwachstellen zu sensibilisieren und aufzuzeigen, wie sich diese vermeiden lassen. Die folgenden „[OWASP Top Ten](https://owasp.org/Top10)“ stellen unter Web-Sicherheitsexperten einen aner-kannten Konsens dar, was die derzeit kritischen Lücken in Web-Anwendungen betrifft (stand 2021):
|
||
- A01:2021 – [Broken Access Control](https://owasp.org/Top10/A01_2021-Broken_Access_Control/)
|
||
- A02:2021 – [Cryptographic Failures](https://owasp.org/Top10/A02_2021-Cryptographic_Failures/)
|
||
- A03:2021 – [Injection](https://owasp.org/Top10/A03_2021-Injection/)
|
||
- A04:2021 – [Insecure Design](https://owasp.org/Top10/A04_2021-Insecure_Design/)
|
||
- A05:2021 – [Security Misconfiguration](https://owasp.org/Top10/A05_2021-Security_Misconfiguration/)
|
||
- A06:2021 – [Vulnerable and Outdated Components](https://owasp.org/Top10/A06_2021-Vulnerable_and_Outdated_Components/)
|
||
- A07:2021 – [Identification and Authentication Failures](https://owasp.org/Top10/A07_2021-Identification_and_Authentication_Failures/)
|
||
- A08:2021 – [Software and Data Integrity Failures](https://owasp.org/Top10/A08_2021-Software_and_Data_Integrity_Failures/)
|
||
- A09:2021 – [Security Logging and Monitoring Failures](https://owasp.org/Top10/A09_2021-Security_Logging_and_Monitoring_Failures/)
|
||
- A10:2021 – [Server-Side Request Forgery (SSRF)](https://owasp.org/Top10/A10_2021-Server-Side_Request_Forgery_%28SSRF%29/)
|
||
|
||
## Auftrag
|
||
1. Wählen Sie OWASP Top 10 Themen aus (Anzahl Gruppenmitglieder = Anzahl zu wählender Themen), die Sie in diesem Auftrag bearbeiten möchten (jedes Thema muss von der Klasse **mind. einmal ausgearbeitet werden!**)
|
||
2. Analysieren Sie die ausgewählten Themen mit Hilfe der OWASP-Seite https://owasp.org/Top10/ (und allfälligen weiterführenden Quellen / Internetrecherche)
|
||
3. Erklären Sie in eigenen Worten, was sich hinter der Abkürzung CWE versteckt und wie CWE mit den OWASP Top 10 zusammenhängen.
|
||
4. Beschreiben Sie den Unterschied der OWASP Top 10 Risk und OWASP Proactive Control (https://owasp.org/www-project-proactive-controls/)
|
||
5. Die ausgewählten Themen werden wie folgt ausgearbeitet:
|
||
- Beschreibung der theoretischen Hintergründe und der Bedrohung sowie mögliche Folgen
|
||
- Schwachstelle mit konkretem Codebeispiel vorstellen und erläutern
|
||
- Massnahme wie die Sicherheitslücke geschlossen werden kann, an einem konkreten Codebeispiel
|
||
- Abgabe von **Dokumentation und Code Beispiele** via Teams-Aufgabe
|
||
|
||
## Inhalt der Dokumentation
|
||
- Überblick
|
||
- Erläuterungen zu Aufgabe 3 und 4
|
||
- Theoretische Hintergründe
|
||
- Schwachstelle mit Codebeispiel
|
||
- Massnahme mit Codebeispiel
|
||
- Resultate, Erkenntnisse
|
||
- Hinweise auf weitere Unterlagen, Übungen, Tutorien (inkl. **verwendeter Quellen**)
|
||
|
||
## Zeitrahmen
|
||
Als Vorbereitung stehen 7 Lektionen während der Schule zur Verfügung. Die Vorstellung soll die Problemstellung (Angriffspunkt, Auswirkung, Technologie) und Lösung (Technologie und sinnvolle Gegenmassnahmen) anhand von praktischen Beispielen (Live Demo der Codebeispiele – keine PowerPoint), aufzeigen. Die Live Demo darf pro Thema maximal 7 Min dauern und ist in Standardsprache zu halten.
|
||
|
||
## Resultat
|
||
- Vollständiger schriftlicher Theorie Teil mit praktischen Code-Beispielen.
|
||
- Live Demo anhand von Beispielen von Sicherheitslücken und geeignete OWASP Gegenmassnahmen.
|
||
|
||
## Termine, Abgabe
|
||
Die konkreten Termine und Abgabemodalitäten werden durch die Lehrperson für jede Moduldurchführung individuell festgelegt und entsprechend kommuniziert.
|
||
|
||
## Bewertung
|
||
[x_ressourcen/Bewertungsraster_OWASP.xlsx](https://gitlab.com/harald.mueller/aktuelle.kurse/-/blob/master/m183/x_ressourcen/Bewertungsraster_OWASP.xlsx) |