Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
modul:m183:learningunits:lu02:05 [2025/09/18 10:30] – [2. Notenrelevante Teile] vdemir | modul:m183:learningunits:lu02:05 [2025/09/18 12:43] (aktuell) – vdemir | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== LU02e - LB2 - Inhalt | + | ====== LU02e - LB2 - Projektauftrag |
- | ===== 1. Ablauf ===== | + | ===== 1. Projektauftrag ===== |
+ | Ihr Auftrag besteht darin eine vulnerable Applikation zu programmieren und diese anschliessend mit geeigneten pogrammiertechnischen Massnahmen zu schützen. | ||
+ | |||
+ | ==== Teil 1==== | ||
+ | |||
+ | Programmieren Sie eine Applikation, | ||
+ | |||
+ | **Teil 2** | ||
+ | |||
+ | Programmieren Sie die gleiche Applikation als sichere Version (secured), in der Sie die definierten Sicherheitsmassnahmen programmiertechnisch umsetzen. | ||
+ | |||
+ | ===== 2. Metaziele ===== | ||
+ | Die Arbeit ist, gmäss Unterrichts-Input, | ||
+ | |||
+ | Selbstverständlich erstellen Sie die Sicherheitsmassnahmen so aus, dass diese Angriffe im 2. Teilauftrag nicht mehr möglich sind. | ||
+ | |||
+ | ===== 3. Ablauf ===== | ||
* Es werden zufällig Teams zu je 2 Personen gebildet | * Es werden zufällig Teams zu je 2 Personen gebildet | ||
* Die Lehrersperson kommuniziert: | * Die Lehrersperson kommuniziert: | ||
- | | + | |
- | | + | |
- | | + | |
* Die Arbeitsaufteilung muss klar ersichtlich sein: Sie arbeiten am gleichen Projekt, jedoch an unterschiedlichen Teilen: Angriff VS. Verteidigung | * Die Arbeitsaufteilung muss klar ersichtlich sein: Sie arbeiten am gleichen Projekt, jedoch an unterschiedlichen Teilen: Angriff VS. Verteidigung | ||
* Die Leistungsüberprüfung geschieht durch ein Video-aufgezeichnetes Fachgespräch. | * Die Leistungsüberprüfung geschieht durch ein Video-aufgezeichnetes Fachgespräch. | ||
* Jedes Mitglied kann Auskunft über alle Codeteile geben, d.h. Wissenstransfer liegt in der Verantwortung der Lernenden | * Jedes Mitglied kann Auskunft über alle Codeteile geben, d.h. Wissenstransfer liegt in der Verantwortung der Lernenden | ||
* Bewertet wird nach einem vorher definierten Bewertungsraster | * Bewertet wird nach einem vorher definierten Bewertungsraster | ||
- | * Je 2 Teams erhalten den gleichen Auftrag, das Team mit der besten Leistung erhält einen Bonus von 0.25 Notenpunkten | + | * Je 2 Teams erhalten den gleichen Auftrag, das Team mit der besten Leistung erhält einen Bonus von 0.25 Notenpunkte |
- | + | ===== 4. Themen ===== | |
- | ===== 3. Themen ===== | + | |
Die nachfolgenden Themen stehen zur Verfügung: | Die nachfolgenden Themen stehen zur Verfügung: | ||
Zeile 22: | Zeile 37: | ||
- DDoS | - DDoS | ||
- | ===== 4. Vorgehensvorschläge ===== | + | ==== 5. Lieferumfang |
- | ==== 3.1 SQLi ===== | + | |
- | **Vorarbeiten** | + | |
- | * Sie wählen ein Themenschwerpunkt passend zur Aufgabenstellung (Adressdatenbank, | + | |
- | * Sie erstellen mindestens 10 UseCases fachlich korrekt und passend zum gewählten Schwerpunkt | + | |
- | * Basierend auf den UseCases erstellen Sie ein ERD in der Krähnenfuss-Notation, | + | |
- | * Sie setzten das ERD in einer Datenbank wie beispielweise MySQL um | + | |
- | * Sie füllen die Tabellen mit einer represantivive Menge an Daten | + | |
- | + | ||
- | + | ||
- | + | ||
- | ==== 3.2 BruteForce ===== | + | |
- | + | ||
- | ==== 3.3 DDoS ===== | + | |
- | + | ||
- | + | ||
- | + | ||
- | ===== | + | |
- | + | ||
- | ===== E. Digitale Zertifikate | + | |
+ | - Zielsetzung: | ||
+ | - Konzept: ERD oder Ablaufdiagramm | ||
+ | - konzept: Architecktur (UML oder ähnliches) | ||
+ | * 1. Schicht: Frontend oder Simulation | ||
+ | * 2. Schicht: Server | ||
+ | * 3. Schicht: Datenbank-Instanz, | ||
+ | - Unsichere Version der Software | ||
+ | - Sichere Version mit entsprechend umgesetzten Programmiermassnahmen | ||
+ | |||
+ | ===== 6. Erlaubte Technologien ===== | ||
+ | Die nachfolgenden Technologien stehen Ihnen zur Verfügung. | ||
+ | * HTML-CSS | ||
+ | * Programmiersprachen: | ||
+ | * JavaScript | ||
+ | * Python | ||
+ | * Shell/BASH | ||
+ | * Node.js Laufzeitumgebung (Analog andere | ||
+ | * CodeEditor Visual Studio Code, Webstorm oder Pycharm | ||
+ | * Postman Frontend-Simulation | ||
---- | ---- | ||
[[https:// | [[https:// | ||