vollautomatisierte e-learning plattform am beispiel eines ... · vollautomatisierte e-learning...
TRANSCRIPT
![Page 1: Vollautomatisierte e-Learning Plattform am Beispiel eines ... · Vollautomatisierte e-Learning Plattform Problemstellung Im Gegensatz zu Programmieraufgaben kein AST o.Ä. für Systemzustand](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f0322497e708231d407b4b4/html5/thumbnails/1.jpg)
• Jan Schmidt, Nils gentschen Felde• MNM-Team • Ludwig-Maximilians-Universität München
10. DFN-Forum Kommunikationstechnologien Berlin
Vollautomatisierte e-Learning Plattform am Beispiel eines Universitätspraktikums
![Page 2: Vollautomatisierte e-Learning Plattform am Beispiel eines ... · Vollautomatisierte e-Learning Plattform Problemstellung Im Gegensatz zu Programmieraufgaben kein AST o.Ä. für Systemzustand](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f0322497e708231d407b4b4/html5/thumbnails/2.jpg)
Vollautomatisierte e-Learning Plattform
Themenverwandte Arbeiten
● Automated Grading– Automatische Korrektur von Programmieraufgaben
– Input-Output überprüfuen
– Code-Analyse
– Abstract Syntax Tree (AST)
– Unit-Testing
● Hacking Labs– Bereitstellung einer Infrastruktur
– Challenges: Finden und Beheben von Sicherheitslücken
– Zur Überprüfung der Lösungen aber Humaninteraktion notwendig
● Keine Automatismen zur automatisierten Überprüfung systemnaher Aufgaben
2
![Page 3: Vollautomatisierte e-Learning Plattform am Beispiel eines ... · Vollautomatisierte e-Learning Plattform Problemstellung Im Gegensatz zu Programmieraufgaben kein AST o.Ä. für Systemzustand](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f0322497e708231d407b4b4/html5/thumbnails/3.jpg)
Vollautomatisierte e-Learning Plattform
Problemstellung
● Im Gegensatz zu Programmieraufgaben kein AST o.Ä. für Systemzustand
● Überprüfung von Config-Files: nur syntaktische Korrektheit
● Praktikumsaufgabe als Zustandsautomat
● Überprüfung des Endzustands, nicht des Lösungswegs
● Endzustand muss zur Laufzeit überprüft werden
3
UrsprungszustandDefinierter Endzustand
Bearbeitung derAufgabe
Praktikumsinfrastruktur
![Page 4: Vollautomatisierte e-Learning Plattform am Beispiel eines ... · Vollautomatisierte e-Learning Plattform Problemstellung Im Gegensatz zu Programmieraufgaben kein AST o.Ä. für Systemzustand](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f0322497e708231d407b4b4/html5/thumbnails/4.jpg)
Vollautomatisierte e-Learning Plattform
Praktikum IT-Sicherheit
4
![Page 5: Vollautomatisierte e-Learning Plattform am Beispiel eines ... · Vollautomatisierte e-Learning Plattform Problemstellung Im Gegensatz zu Programmieraufgaben kein AST o.Ä. für Systemzustand](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f0322497e708231d407b4b4/html5/thumbnails/5.jpg)
Vollautomatisierte e-Learning Plattform
Beispielaufgabe
● Konfiguration einer statischen Firewall
● Whitelist
● Genaue Spezifikation der zu öffnenden Ports
● Mögliche Lösungswege:– Ferm
– Iptables
5
![Page 6: Vollautomatisierte e-Learning Plattform am Beispiel eines ... · Vollautomatisierte e-Learning Plattform Problemstellung Im Gegensatz zu Programmieraufgaben kein AST o.Ä. für Systemzustand](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f0322497e708231d407b4b4/html5/thumbnails/6.jpg)
Vollautomatisierte e-Learning Plattform
Testroutine
6
10.0.0.1 10.0.0.2
Ist UDP-Port 123 erreichbar?
-A INPUT -p udp -m udp --sport 123 -j ACCEPT -A INPUT -p udp -m udp --dport 123 -j ACCEPT -A OUTPUT -p udp -m udp --dport 123 -j ACCEPT -A OUTPUT -p udp -m udp --sport 123 -j ACCEPT
![Page 7: Vollautomatisierte e-Learning Plattform am Beispiel eines ... · Vollautomatisierte e-Learning Plattform Problemstellung Im Gegensatz zu Programmieraufgaben kein AST o.Ä. für Systemzustand](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f0322497e708231d407b4b4/html5/thumbnails/7.jpg)
Vollautomatisierte e-Learning Plattform
Testroutine
7
10.0.0.1 10.0.0.2
Ist UDP-Port 123 erreichbar?
$ nc -lu -p 123
![Page 8: Vollautomatisierte e-Learning Plattform am Beispiel eines ... · Vollautomatisierte e-Learning Plattform Problemstellung Im Gegensatz zu Programmieraufgaben kein AST o.Ä. für Systemzustand](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f0322497e708231d407b4b4/html5/thumbnails/8.jpg)
Vollautomatisierte e-Learning Plattform
Testroutine
8
10.0.0.1 10.0.0.2
Ist UDP-Port 123 erreichbar?
$ nc -u 10.0.0.1 -p 123>> Hello World!
$ nc -lu -p 123
![Page 9: Vollautomatisierte e-Learning Plattform am Beispiel eines ... · Vollautomatisierte e-Learning Plattform Problemstellung Im Gegensatz zu Programmieraufgaben kein AST o.Ä. für Systemzustand](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f0322497e708231d407b4b4/html5/thumbnails/9.jpg)
Vollautomatisierte e-Learning Plattform
Testroutine
9
10.0.0.1 10.0.0.2
Ist UDP-Port 123 erreichbar?
$ nc -u 10.0.0.1 -p 123>> Hello World!
$ nc -lu -p 123<< Hello World!
![Page 10: Vollautomatisierte e-Learning Plattform am Beispiel eines ... · Vollautomatisierte e-Learning Plattform Problemstellung Im Gegensatz zu Programmieraufgaben kein AST o.Ä. für Systemzustand](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f0322497e708231d407b4b4/html5/thumbnails/10.jpg)
Vollautomatisierte e-Learning Plattform
Beispielaufgabe
● Anlegen eines Nutzers
● Erstellen des entsprechenden Home-Verzeichnisses
10
/home/secpgast
secpgast
![Page 11: Vollautomatisierte e-Learning Plattform am Beispiel eines ... · Vollautomatisierte e-Learning Plattform Problemstellung Im Gegensatz zu Programmieraufgaben kein AST o.Ä. für Systemzustand](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f0322497e708231d407b4b4/html5/thumbnails/11.jpg)
Vollautomatisierte e-Learning Plattform
Testroutine
11
10.0.0.1
Existiert der Nutzer?
$ cat /etc/passwd | grep secpgast
![Page 12: Vollautomatisierte e-Learning Plattform am Beispiel eines ... · Vollautomatisierte e-Learning Plattform Problemstellung Im Gegensatz zu Programmieraufgaben kein AST o.Ä. für Systemzustand](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f0322497e708231d407b4b4/html5/thumbnails/12.jpg)
Vollautomatisierte e-Learning Plattform
Testroutine
12
10.0.0.1
Existiert der Nutzer?
$ cat /etc/passwd | grep secpgastsecpgast:x:1000:1000:secpgast:/home/secpgast:/bin/bash
secpgast
![Page 13: Vollautomatisierte e-Learning Plattform am Beispiel eines ... · Vollautomatisierte e-Learning Plattform Problemstellung Im Gegensatz zu Programmieraufgaben kein AST o.Ä. für Systemzustand](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f0322497e708231d407b4b4/html5/thumbnails/13.jpg)
Vollautomatisierte e-Learning Plattform
Aufgabenkategorisierung
● Komplexität der Testroutine abhängig vom Aufgabentyp
● Resultat– Interne Konfiguration
➔ Direkter Zugriff auf das zu testende System
– Konfiguration eines externen Diensts
➔ Erreichbarkeit des zu testenden Systems
– Programmieraufgaben
➔ Sichere Ausführungsumgebung, Spezifikation
– Standardisierte Abgaben
– Freie Abgabe
13
![Page 14: Vollautomatisierte e-Learning Plattform am Beispiel eines ... · Vollautomatisierte e-Learning Plattform Problemstellung Im Gegensatz zu Programmieraufgaben kein AST o.Ä. für Systemzustand](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f0322497e708231d407b4b4/html5/thumbnails/14.jpg)
Vollautomatisierte e-Learning Plattform
Erster Systementwurf
14
![Page 15: Vollautomatisierte e-Learning Plattform am Beispiel eines ... · Vollautomatisierte e-Learning Plattform Problemstellung Im Gegensatz zu Programmieraufgaben kein AST o.Ä. für Systemzustand](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f0322497e708231d407b4b4/html5/thumbnails/15.jpg)
Vollautomatisierte e-Learning Plattform
Praktikumslebenszyklus
15
![Page 16: Vollautomatisierte e-Learning Plattform am Beispiel eines ... · Vollautomatisierte e-Learning Plattform Problemstellung Im Gegensatz zu Programmieraufgaben kein AST o.Ä. für Systemzustand](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f0322497e708231d407b4b4/html5/thumbnails/16.jpg)
Vollautomatisierte e-Learning Plattform
Ausführung eines Tests durch einen Studenten
16
![Page 17: Vollautomatisierte e-Learning Plattform am Beispiel eines ... · Vollautomatisierte e-Learning Plattform Problemstellung Im Gegensatz zu Programmieraufgaben kein AST o.Ä. für Systemzustand](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f0322497e708231d407b4b4/html5/thumbnails/17.jpg)
Vollautomatisierte e-Learning Plattform
Vorbereitung und Wiederherstellung der VMs
17
![Page 18: Vollautomatisierte e-Learning Plattform am Beispiel eines ... · Vollautomatisierte e-Learning Plattform Problemstellung Im Gegensatz zu Programmieraufgaben kein AST o.Ä. für Systemzustand](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f0322497e708231d407b4b4/html5/thumbnails/18.jpg)
Vollautomatisierte e-Learning Plattform
Implementierung
● Implementierung in Python
● Web-Anwendung mit Task-Management
● Verwendete Frameworks– Flask zur Entwicklung der Web-Anwendung
– Objektorientierte Umsetzung des Datenmodells in SQLAlchemy (Object Relational Mapper)
– Celery Task-Queue für Task-Management
18
![Page 19: Vollautomatisierte e-Learning Plattform am Beispiel eines ... · Vollautomatisierte e-Learning Plattform Problemstellung Im Gegensatz zu Programmieraufgaben kein AST o.Ä. für Systemzustand](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f0322497e708231d407b4b4/html5/thumbnails/19.jpg)
Vollautomatisierte e-Learning Plattform
Übersicht über die Implementierung
19
![Page 20: Vollautomatisierte e-Learning Plattform am Beispiel eines ... · Vollautomatisierte e-Learning Plattform Problemstellung Im Gegensatz zu Programmieraufgaben kein AST o.Ä. für Systemzustand](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f0322497e708231d407b4b4/html5/thumbnails/20.jpg)
Vollautomatisierte e-Learning Plattform
Status der Testausführung
20
![Page 21: Vollautomatisierte e-Learning Plattform am Beispiel eines ... · Vollautomatisierte e-Learning Plattform Problemstellung Im Gegensatz zu Programmieraufgaben kein AST o.Ä. für Systemzustand](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f0322497e708231d407b4b4/html5/thumbnails/21.jpg)
Vollautomatisierte e-Learning Plattform
Ergebnisse der Testausführung
21
![Page 22: Vollautomatisierte e-Learning Plattform am Beispiel eines ... · Vollautomatisierte e-Learning Plattform Problemstellung Im Gegensatz zu Programmieraufgaben kein AST o.Ä. für Systemzustand](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f0322497e708231d407b4b4/html5/thumbnails/22.jpg)
Vollautomatisierte e-Learning Plattform
Ergebnisse der Testausführung
22
![Page 23: Vollautomatisierte e-Learning Plattform am Beispiel eines ... · Vollautomatisierte e-Learning Plattform Problemstellung Im Gegensatz zu Programmieraufgaben kein AST o.Ä. für Systemzustand](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f0322497e708231d407b4b4/html5/thumbnails/23.jpg)
Vollautomatisierte e-Learning Plattform
Bewertung
● Herausforderung: hinreichende Fehlermeldungen
● Positives Feedback durch Studenten
● Verringerter Korrekturaufwand
● Automatisierung von 80% der Aufgaben im Praktikum IT-Sicherheit
23
![Page 24: Vollautomatisierte e-Learning Plattform am Beispiel eines ... · Vollautomatisierte e-Learning Plattform Problemstellung Im Gegensatz zu Programmieraufgaben kein AST o.Ä. für Systemzustand](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f0322497e708231d407b4b4/html5/thumbnails/24.jpg)
Vollautomatisierte e-Learning Plattform
Ausblick
● „Praktikum as a Service“
● Zeitraum frei wählbar
● Mehr Praktikumsplätze
24
Quelle: http://thoughtblender.blogspot.de/2011/02/thinking-as-service.html
Jan SchmidtMNM-Team
Ludwig-Maximilians-Universität Münchenhttp://www.mnm-team.org/~schmidtja