{ "groups": [ { "nameDe": "Den Shop kennenlernen", "nameEn": "Getting to know the shop", "groupNr": 0, "exercises": [ { "nameDe": "Registrieren", "nameEn": "Register", "exerciseNr": 1, "descriptionDe": "Erstelle einen neuen Account im Online Shop", "descriptionEn": "Create a new account in the online shop" }, { "nameDe": "Profil vervollständigen", "nameEn": "Complete profile", "exerciseNr": 2, "descriptionDe": "Suche dir ein Event deiner Wahl und kaufe dafür ein Ticket", "descriptionEn": "Search for an event of choice and buy a ticket for" }, { "nameDe": "Ein Ticket kaufen", "nameEn": "Buy a ticket", "exerciseNr": 3, "descriptionDe": "Suche dir ein Event deiner Wahl und kaufe dafür ein Ticket", "descriptionEn": "Search for an event of choice and buy a ticket for" } ] }, { "nameDe": "Broken Access Control", "nameEn": "Broken Access Control", "groupNr": 1, "descriptionDe": "Eine Webseite beinhaltet oft öffentlich einsehbare und einige Seiten, die nur mit passenden Berechtigungen erreicht werden dürfen, z.B. ein Admin-Panel oder einen Account-Bereich. Jede Seite ist über einen Suffix (z.B. '/concerts') erreichbar. Der Zugriff wird oft über Cookies oder eine Authentifizierung an einem Backend-Server geregelt. Bei Broken Access Control ist dieser Sicherheits-Mechanismus nicht oder fehlerhaft implementiert. Somit lassen sich Seiten unberechtigterweise über die URL erreichen.", "descriptionEn": "todo", "exercises": [ { "nameDe": "Hilfe-Seite aufrufen", "nameEn": "Access Help Page", "exerciseNr": 1, "descriptionDe": "Manipuliere die URL so, dass du die Hilfe-Seite erreichen kannst", "descriptionEn": "Manipulate the URL and access the help page" }, { "nameDe": "Das versteckte Konzert buchen", "nameEn": "Book the hidden concert", "exerciseNr": 2, "descriptionDe": "Manipuliere die URL so, dass du das ausgebuchte Konzert aufrufen kannst und buche ein Ticket dafür", "descriptionEn": "Manipulate the URL and access the sold out concert and buy a ticket" }, { "nameDe": "Das Admin-Panel aufrufen", "nameEn": "Access the Admin-Panel", "exerciseNr": 3, "descriptionDe": "Manipuliere die URL so, dass du das Admin-Panel erreichen kannst", "descriptionEn": "Manipulate the URL and access the admin page" } ] }, { "nameDe": "SQL Injections", "nameEn": "SQL Injections", "groupNr": 2, "descriptionDe": "HTML und CSS sind für die Struktur und die Gestaltung einer Webseite verantwortlich. Um jedoch Programmcode für dynamische Inhalte auszuführen wird die Programmiersprache JavaScript verwendet, welche Programmcode direkt im Browser ausführen kann. Diese Scripts können nun aber auch Schaden anrichten, wenn sie im Rahmen eines Angriffs eingeschmuggelt werden.", "descriptionEn": "todo", "exercises": [ { "nameDe": "Einen fremden Account übernehmen", "nameEn": "Capture an account", "exerciseNr": 1, "descriptionDe": "Führe auf der Login-Seite eine SQL-Injection durch, so dass du Zugriff auf einen Account mit 'Super Admin'-Berechtigungen erlangst", "descriptionEn": "Execute an SQL-Injection on the Login page. Try to capture an account with 'Super Admin' privilege." }, { "nameDe": "Bestellungen abfragen", "nameEn": "Readout password", "exerciseNr": 2, "descriptionDe": "Versuche ein Passwort aus der Datenbank eines Accounts auszulesen", "descriptionEn": "Get the password of an account from the database" }, { "nameDe": "Band-Bewertungen manipulieren", "nameEn": "Change your account role", "exerciseNr": 3, "descriptionDe": "Ändere die Berechtigungen deines Accounts", "descriptionEn": "Change the privileges of your account" } ] }, { "nameDe": "Cross-Site Scripting (XSS)", "nameEn": "Cross-Site Scripting (XSS)", "groupNr": 3, "descriptionDe": "todo", "descriptionEn": "todo", "exercises": [ { "nameDe": "Hallo Welt!", "nameEn": "Hello World!", "exerciseNr": 1, "descriptionDe": "Nimm dir eine URL des Shops und erweitere sie mit JavaScript Code so, dass beim Öffnen des Links eine 'Hallo Welt' Nachricht erscheint", "descriptionEn": "Take an URL of the shop and extend it with JavaScript code so that a 'Hello World' message appears whent the link is opened" }, { "nameDe": "Ein externes Script aufrufen", "nameEn": "Run an external script", "exerciseNr": 2, "descriptionDe": "Bearbeite die URL des Shops so, dass du das Script ausführen kannst", "descriptionEn": "Create an URL of the shop, which calls the script" }, { "nameDe": "Hacken mit eigenem Script", "nameEn": "Hack with your script", "exerciseNr": 3, "descriptionDe": "Schreibe eine JavaScript Datei, lade sie über das Admin Panel hoch und kreiere eine URL, welche es ausführt", "descriptionEn": "Write our own JavaScript file, upload it via Admin Panel and create an URL to execute it" } ] } ] }