Navigation und Service

Awareness für IT-Sicherheit schaffen

Nicht nur Thema für eine Diplomarbeit

Während des letzten Praktikums und des letzten Hauptstudienabschnitts steht für alle Studierenden die Diplomarbeit an. Sie besteht aus einer schriftlichen Ausarbeitung, deren mündlichen Präsentation und Disputation. Das Thema kann frei gewählt werden und so entschied ich mich in den spannenden Bereich der IT-Sicherheit von Webanwendungen einzutauchen.

Symbolbild Hacker-Angriff: Junge Frau sitzt vor Computerbildschirmen.
Dual Studierende des ITZBund können ihre Abschlussarbeiten über aktuelle, praxisorientierte IT-Themen wie beispielsweise IT-Sicherheit von Webanwendungen schreiben. Quelle: Adobe Stock / Monkey Business

05.10.2021

Beitrag von Catherine C. / ehemalige VIT-Studentin

Wo beginnt IT-Sicherheit und wo hört sie auf? Auf welches Teilgebiet sollte ich meinen Schwerpunkt in meiner Diplomarbeit legen? Welche Programmiersprache will ich betrachten und welche Konzepte und Gesetze sind einschlägig? Am Beginn der Bearbeitung einer Diplomarbeit stehen viele Fragen. Doch die Recherche führt relativ schnell zu Inhalten und einer thematischen Richtung.

Wer nach IT-Sicherheit von Webanwendungen sucht, findet unweigerlich das Open Web Application Security Project (OWASP) und das Bundesamt für Sicherheit in der Informationstechnik (BSI). Beide beschäftigen sich mit der Minimierung von IT-Sicherheitslücken in Webanwendungen und halten eine davon als besonders gefährlich: Injections. Eine Injection tritt dann ein, wenn Eingaben von Drittsystemen als Befehle von Benutzerinnen und Benutzern der Anwendung behandelt und ausgeführt und nicht als Daten interpretiert werden. So lassen sich damit Namen, Passwörter, Adressen, Kreditkartendetails, Krankheitsdaten, etc. erlangen oder auch ganze Datensätze löschen.

Meine Arbeit sollte sich dabei nicht nur auf das Sammeln von Wissen über Injection-Angriffe beschränken, sondern es sollte auch ein Schulungskonzept entworfen werden, mit dessen Hilfe Entwicklerinnen und Entwickler bereits während der Konzeption von Webanwendungen für IT-Sicherheit sensibilisiert werden. OWASP bietet hierfür eine absichtlich unsichere Testwebanwendung an, den sogenannten Juice Shop (Saftladen), um verschiedene Angriffstechniken auszuprobieren. Denn mir war von Anfang an klar: Ich wollte kein rein theoretisches Thema bearbeiten.

Catherine C., ehemalige Studentin Diplomstudiengang Verwaltungsinformatik beim ITZBund

„Ich wollte lernen, wie solch ein Injection-Angriff funktionieren und wie ich ihn in meiner späteren Entwicklungsarbeit verhindern kann.“

Catherine C., Diplom-Verwaltungsinformatikerin

Beispiel für einen Injection-Angriff

Vier Comic-Zeichnungen zeigen ein Telefonat zwischen Mutter und Schule.
Exploits of a Mom. Karikatur zum Thema SQL-Injections. Quelle: https://xkcd.com/327/

Im Comic erhält Mrs. Roberts einen Anruf von der Schule ihres Sohnes. Der Anrufer fragt sie, ob sie ihren Sohn wirklich „Robert'); DROP TABLE Students;--“ genannt habe. Sie bejaht die Frage und erklärt, dass sie ihn liebevoll „Little Bobby Tables“ nenne. Nachfolgender Code trifft aufgrund einer SQL-Anweisung bei der Datenbank ein:

SQL-Anweisung an die Datenbank zur Erfassung des Schülers.
SQL-Anweisung an die Datenbank

Als der Name von der Schuldatenbank eingelesen wird, erkennt die Datenbank das Semikolon als Ende einer Anweisung. Im Anschluss folgt mit „DROP TABLE Students“ die Anweisung, die Tabelle „Students“ zu löschen. Alles, was danach folgt, wird mit „--“ auskommentiert.

Die hier ausgenutzte Schwachstelle ist, dass Anweisung und Daten vermischt werden, weil die Eingabe des Semikolons nicht abgefangen wird und dieses eine Sonderfunktion ausführt: nämlich die Beendigung einer Anweisung! Die fehlende Validierung von Eingabeparametern ist ein klassisches Sicherheitsrisiko und findet hier in einer sogenannten SQL-Injection seine Auswirkung. Am Ende des Gesprächs iim Comic erinnert Mrs. Roberts die Schule daran, dass sie Eingabefilter benutzen sollte, um zukünftige Injections zu verhindern. Um den seltsamen Namen gefahrlos in die Datenbank einzupflegen, müsste die Anweisung eigentlich lauten:

SQL-Anweisung an die Datenbank.
Richtige SQL-Anweisung an die Datenbank

Das Anführungszeichen nach Robert ist hier maskiert, da es zwei Mal aufgeführt ist, und führt dazu, dass die eingegebenen Daten auch wirklich nur als solche interpretiert werden. Der seltsame Vorname des Little Bobby Tables wird korrekt eingepflegt.

Awareness-Schulung

Nachdem im ersten Teil der Arbeit aktuelle Lageberichte, Konzepte und Standards verglichen wurden, um kritische Sicherheitsrisiken für Webanwendungen herauszufiltern, ist im zweiten Teil der Arbeit ein Konzept entstanden. Dieses kann herangezogen werden, um Mitarbeiterinnen und Mitarbeiter im Rahmen einer IT-Sicherheit-Grundlagenschulung für kritische Sicherheitsrisiken zu sensibilisieren. Dabei soll ein Perspektivenwechsel vorgenommen werden. So können die Teilnehmenden praktisch erleben, was es bedeutet, eine unsichere Webanwendung entwickelt zu haben und mit welchen Konsequenzen im Falle eines Angriffs gerechnet werden muss.

Die Basis für die Herausforderungen, die den Teilnehmenden gestellt werden, ist der OWASP Juice Shop, welcher Open Source zur Verfügung steht. Der Shop enthält eine Vielzahl an realen Herausforderungen und Sicherheitslücken (Injections, Cross-Site-Scripting [ etc.) verschiedener Schwierigkeitsstufen, die Erkenntnisse für die eigene Entwicklungsarbeit bieten. Die Durchführung einer solchen Schulung im ITZBund kann ich mir sehr gut vorstellen, da IT-Sicherheit hier eine zentrale Rolle spielt.

Tipps für Dual Studierende

Die Bearbeitung und anschließende Präsentation und Disputation der Diplomarbeit haben mir persönlich Spaß gemacht, weil ich mich für ein aktuelles, praktisches und sehr vielseitiges Thema entschieden habe. Ich kann allen Studierenden empfehlen, sich bereits während des Praktikum 2 um ein interessantes Thema zu bemühen, da man sich dann über einen längeren Zeitraum damit auseinandersetzt.


Anm. d. Redaktion: Catherine C. wurde nach ihrem Abschluss vom ITZBund in ihrem Wunscharbeitsbereich übernommen. Dort schreibt sie unter anderem Skripte für diverse Schnittstellen und formuliert in diesem Zusammenhang auch viele SQL-Abfragen. Die Erkenntnisse aus ihrer Diplomarbeit hat sie dabei immer im Hinterkopf. In ihren Programmen wird sie bei der Entwicklung zukünftig immer ein gesondertes Augenmerk auf die Bedrohung durch SQL-Injections werfen.

IT-Sicherheit ist ein spannendes und vielfältiges Arbeitsfeld im ITZBund. Einblicke gibt unser Jobprofil IT-Sicherheit.

Sie haben Fragen zu den dualen Studiengängen im ITZBund?

Dann schreiben Sie uns. Gerne beantworten wir Ihre Fragen und informieren Sie über unsere dualen Studiengänge.