FAQ

Was genau ist das Lühack?

Um das Bewusstsein von Schülerinnen und Schülern für IT-Sicherheit zu stärken und einen sicheren Umgang mit Computern zu trainieren, veranstalten wir vom Institut für IT-Sicherheit der Universität zu Lübeck eine Art “Lange Nacht der IT-Sicherheit”. Dabei werden Aufgaben aus den verschiedenen Bereichen der IT-Sicherheit gestellt. Anders als bei der Langen Nacht der Mathematik ist das Lühack als CTF angelegt, bei dem die Schülerinnen und Schüler die Aufgaben in Teams bearbeiten und sich mit den anderen Teams in einem direkten Wettbewerb befinden. Zielgruppe sind Schülerinnen und Schüler der Sekundarstufe II. Das heißt allerdings nur, dass bei der Bearbeitung der Aufgaben mindestens das Wissen aus der Sekundarstufe I (vor allem aus dem Bereich Mathematik) vorausgesetzt wird. Nichts desto trotz können auch gerne talentierte Schülerinnen und Schüler der Sekundarstufe I den Teams beitreten und am CTF teilnehmen. Auch Schulen außerhalb Lübecks sind eingeladen, eigene Teams für Lühack aufzustellen und teilzunehmen.

Was ist ein CTF?

Ursprünglich ist Capture-the-Flag ein Spiel, das im Wald oder auf einer Wiese gespielt wird. Es treten Teams gegeneinander an und versuchen, die Flagge der gegnerischen Teams in die eigene Zone zu holen, während die eigene Flagge beschützt wird. Dieses Spielformat lässt sich sehr gut auf die IT-Sicherheit übertragen. Hier ist das Ziel, Schwachstellen in gegnerischen Computern zu finden und auszunutzen und gleichzeitig den eigenen Computer abzusichern. Für die Lehre wandelt man dieses Format leicht ab, indem die verwundbaren Systeme, Webseiten oder Dateien zentral durch die Organisatoren und Organisatorinnen gestellt werden. Dadurch müssen die Teilnehmenden keine Angriffe auf die eigenen Systeme befürchten. Dieses abgewandelte Format heißt Jeopardy und wird auch für das Lühack genutzt.

Warum sollten Schülerinnen und Schüler am Lühack teilnehmen?

Salopp gesagt: Weil hier gehackt werden darf. Wo ist das sonst erlaubt?

Während des Lühacks lernen Schülerinnen und Schüler spielerisch verschiedene Aspekte der IT-Sicherheit kennen. So müssen beispielsweise Verfahren des Secret Sharings angewandt, Verschlüsselungen gebrochen oder Schwachstellen in Webseiten ausgenutzt werden, um an die begehrten Flaggen zu kommen. Gespielt wird - wie im späteren Leben - in Teams. So können Schülerinnen und Schüler, die z.B. stark in Mathe sind, und Schülerinnen und Schüler, die evtl. schon erste Programmiererfahrung haben, ihre Stärken vereinen und sich gegen die anderen Teams behaupten. Es sind alle Hilfsmittel erlaubt, sodass Wissenslücken während des CTFs mit Hilfe des Internets gestopft werden können.

Warum sollten Schulen am Lühack teilnehmen?

Gamification ist eine moderne und erfolgreiche Möglichkeit, um spielerisch Lehrinhalte zu vermitteln. Während sich die Methoden der Gamification für die meisten Unterrichtsfächer oft noch im Entwicklungsstadium befinden, da sie von spezieller Software abhängen, ist die Gamification in der IT-Sicherheit schon lange Präsent und es existieren diverse Frameworks, die eine einfache Realisierung ermöglichen. Mit der Einführung der Informatik als Pflichtfach ab dem Schuljahr 2022/2023 werden alle Schülerinnen und Schüler in Schleswig-Holstein mit diesem Themenfeld konfrontiert. Die Motivation der Schülerinnen und Schüler für dieses neue Fach kann durch einen spielerischen Anteil gesteigert werden. Das Lühack bietet den Lehrkräften einen Einblick in mögliche Aufgabenstellungen und auch ein Blick auf die technische Umsetzung unserer CTF Plattform ist möglich, falls Sie das Format für Ihren Unterricht adaptieren möchten. Sie brauchen nur einen handelsüblichen Computer!

Warum bietet das ITS das Lühack an?

Der Bedarf an Fachkräften im Bereich IT-Sicherheit steigt seit Jahren. Das spüren auch wir am Institut für IT-Sicherheit, denn unsere Studierenden werden immer häufiger bereits während des Studiums von Firmen an- und abgeworben. Gleichzeitig sehen wir, dass die Zahl der Erstsemester im gesamten MINT Bereich stagnieren. Wir glauben, dass Lühack eine tolle Möglichkeit ist, um das Interesse an dem spannenden Feld der IT-Sicherheit bei den Schülerinnen und Schülern zu wecken. Somit stellt Lühack unseren Beitrag dar, um dem Fachkräftemangel entgegenzuwirken.

Q: Wo soll ich anfangen?

A: Wir organisieren Aufgaben in Kategorien. Zum Einstig empfehlen wir die Kategorie “Sanity Check”. Diese Kategorie enthält einfachste Aufgaben, die prüfen sollen, ob euer Computer grundsätzlich einsatzbereit für das Lühack ist. Außerdem schalten sich einige Aufgaben erst frei, wenn ihr die Sanity Check Aufgaben gelöst habt. Anschließend macht ihr in den Kategorien weiter, auf die ihr Lust habt. Falls ihr bei einer Aufgabe nicht weiter kommt, sprecht mit eurem Team über die Aufgabe. Eventuell hat ja jemand anderes bereits ein ähnliches Problem gelöst. Haltet außerdem Ausschau nach Aufgaben, die bereits von vielen Teams gelöst wurden. Diese Aufgaben sind vermutlich leichter als die, die noch niemand gelöst hat.

Q: Was sind die technischen Voraussetzungen für eine Teilnahme?

A: Es sind ein Computer oder Laptop sowie ein Internetzugang erforderlich. Zwar sind vermutlich alle Aufgaben auch mit einem Smartphone oder Tablet lösbar, dies wurde jedoch nicht getestet und der Lösungsaufwand auf diesen Geräten ist vermutlich deutlich höher. Auf dem Computer oder Laptop sollte ein Windows, MacOS oder Linux laufen (siehe nächste Frage). In jedem Fall sollte die Möglichkeit bestehen, Software zu installieren oder eigene zu programmieren.

Q: Welches Betriebssystem sollte ich verwenden?

A: Die drei verbreitetsten Betriebssystemfamilien sind Windows, MacOS und Linux. Die Linux-Familie enthält verschiedene Distributionen wie z.B. Ubuntu, Debian, ArchLinux oder OpenSUSE. Alle Aufgaben sind mit allen Betriebssystemen lösbar. Allerdings kann nicht garantiert werden, dass die Lösungen unter allen Betriebssystemen gleich schwer sind. Generell sollten alle Teams das Betriebssystem nutzen, mit dem sie sich am besten auskennen. Die Mehrheit der mit dem Internet verbundenen Geräte nutzt ein Linux-Betriebssystem (die meisten Server, alle Android-Smartphones, Smart-TVs, Autos und fast alles, was “Smart” ist). Auch die CTF-Aufgaben, die eine Verbindung zu einem Server beinhalten, laufen auf Linux-Servern. Daher sind Linux-Kenntnisse in manchen Fällen hilfreich. Wer selbst ein Linux ausprobieren möchten, der/die ist vermutlich mit einem aktuellen Ubuntu gut beraten. Erfahrenere Linux-Nutzer*innen präferieren eventuell andere Distributionen. Mit einer virtuellen Maschine (VM) kann man auch ein Betriebssystem in einem Betriebssystem laufen lassen, um es auszuprobieren, ohne, dass das eigentliche Betriebssystem verändert wird. Wir werden für das Lühack25 wieder eine Ubuntu-VM aufgesetzt, die für das CTF genutzt werden kann. Die VM ist keinesfalls vollständig im Hinblick auf benötigte Programme. Jedoch können beliebige Programme nachinstalliert werden, falls sie benötigt werden. Wer die VM nutzen möchte, installiert VirtualBox und importiert die heruntergeladene VM.

Q: Wie baue ich eine TCP-Verbindung zu einem Server auf?

A: Generell ist es immer möglich, einen simplen TCP-Server selber zu schreiben. Wer sich die Mühe sparen möchte, kann Tools wie ncat, PuTTY ‘Raw’ oder telnet nutzen, um eine TCP-Verbindung zu einem Server aufzubauen. Challenges, die eine TCP-Verbindung zu einem Server beinhalten, geben die Verbindungsinformationen als Netcat-Befehl an im Format nc <Host> <Port> an. Beispiel:

nc challenges.sshuzl.de 12321

Wer die Nmap-Implementierung von Netcat (ncat) nutzt, kann einfach ein selbstgeschriebenes Computerprogramm mit dem Server verbinden, indem der Kommandozeilenparameter -c "<Befehl>" genutzt wird. Beispiel:

ncat -c "python my_solution_script.py" challenges.sshuzl.de 12321

Q: Wie gehe ich mit den großen Zahlen in der Kryptografie am besten um?

A: Der Computer ist ein großer Taschenrechner. Warum also nicht den Computer nutzen? Das beliebteste Tool von CTF-Spieler*innen für die Kategorie Crypto ist Sagemath. Es ist in Python geschrieben und und kann auch Python-Code direkt ausführen. Allerdings ist die Dokumentation nicht sehr gut, da sie vor allem auf Beispielen basiert. Wer Erfahrung in Python hat, kann die Aufgaben auch direkt in Python lösen, da Python keine Maximalgröße für Zahlen kennt. Installiert man das Python-Pakte PyCryptodomex, ist man für alle Challenges gut gewappnet. Es können natürlich auch Tools wie Mathematica, WolframAlpha oder Matlab genutzt werden. Diese kosten jedoch (in der Vollversion) Geld. Oder wie wäre es mit GeoGebra? Am besten nutzt ihr die Tools, die ihr bereits kennt.

Q: Wie hacke ich eine Webseite?

A: Das kommt natürlich auf die Aufgabe an. Sehr gute Tools für den Einstieg sind tatsächlich die gängigen Browser Chromium, Firefox oder Google Chrome. Sie haben sehr gute Entwicklertools, mit denen Webseiten untersucht werden können. Drück doch mal F12. Darüber hinaus sind Kenntnisse über das HTTP-Protokoll und die Programmierung in JavaScript sowie das Lesen des HTML-Quelltextes sehr hilfreich.

Lühack

Ein CTF für die Oberstufe