modul:m183:learningunits:lu02:05

Action unknown: linkbutton

LU02e - LB2 - Projektauftrag

Ihr Auftrag besteht darin eine vulnerable Applikation zu programmieren und diese anschliessend mit geeigneten pogrammiertechnischen Massnahmen zu schützen.

Programmieren Sie eine Applikation, die mit den nachfolgenden Techniken angreifbar ist (vulnerable). Der Angriffsvektor kann entweder über eine Front-End-Schnittstelle oder über ein Backend-Script/File erfolgen.

Teil 2

Programmieren Sie die gleiche Applikation als sichere Version (secured), in der Sie die definierten Sicherheitsmassnahmen programmiertechnisch umsetzen.

Die Arbeit ist, gmäss Unterrichts-Input, bezüglich der CIA-Triad auszurichten. Idealerweise können Sie gegen alle 3 Meta-Ziele (Verfügbarkeit, Vertraulichkeit, Integrität) angreifen.

Selbstverständlich erstellen Sie die Sicherheitsmassnahmen so aus, dass diese Angriffe im 2. Teilauftrag nicht mehr möglich sind.

  • Es werden zufällig Teams zu je 2 Personen gebildet
  • Die Lehrersperson kommuniziert:
    • den Auftrag und den Umfang (Was ist zu liefern)
    • die Themen
    • die Zuteilung der Team zu den Themen
  • 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.
  • Jedes Mitglied kann Auskunft über alle Codeteile geben, d.h. Wissenstransfer liegt in der Verantwortung der Lernenden
  • 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 Notenpunkte

Die nachfolgenden Themen stehen zur Verfügung:

  1. SQLi
  2. BruteForce
  3. DDoS
  1. Zielsetzung: UseCases
  2. Konzept: ERD oder Ablaufdiagramm
  3. konzept: Architecktur (UML oder ähnliches)
    • 1. Schicht: Frontend oder Simulation
    • 2. Schicht: Server
    • 3. Schicht: Datenbank-Instanz, Wörderbücher, etc
  4. Unsichere Version der Software
  5. Sichere Version mit entsprechend umgesetzten Programmiermassnahmen

Die nachfolgenden Technologien stehen Ihnen zur Verfügung.

  • HTML-CSS
  • Programmiersprachen:
    • JavaScript
    • Python
    • Shell/BASH
  • Node.js Laufzeitumgebung (Analog andere Programmiersprachen)
  • CodeEditor Visual Studio Code, Webstorm oder Pycharm
  • Postman Frontend-Simulation

Volkan Demir

  • modul/m183/learningunits/lu02/05.txt
  • Zuletzt geändert: 2025/09/18 12:43
  • von vdemir