
Lena Groß arbeitet seit 2016 als IT-Beraterin für die viadee. Bei uns konnte sie sich mit viel Freiraum zu 100 % auf ihre Abschlussarbeit konzentrieren. Du suchst wie Lena ein Unternehmen, dass Dich voll und ganz bei Deinen Zielen unterstützt? Dann komm zu uns.
Wir sind eine IT-Unternehmensberatung mit mehr als 170 Kolleg:innen und zählen zu den besten Arbeitgebern Deutschlands. Wir suchen Dich für unser Team in Münster, Dortmund oder Köln. Bewirb Dich für eine praxisnahe Abschlussarbeit mit dem Thema:
Security-Testing von Fachlogik (Bachelorarbeit / Masterarbeit)
Anwendungen werden in der heutigen Zeit in der Regel über automatisierte Tests (z.B. mit dem RobotFramework) fachlich regressiv getestet. Der Fokus bei diesen Tests liegt dabei häufig auf dem Normalfall (Happy Path) und testet fachlich unzulässige Fälle nur oberflächlich ab. D.h. bei Web-Anwendungen wird z.B. überprüft ob Buttons nicht angezeigt bzw. deaktiviert sind, so dass fachlich unzulässige Funktionen nicht ausgeführt werden können.
Jenseits der UI gibt es aber Möglichkeiten Funktionen, die in einem fachlichen Szenario unzulässig sind, trotzdem über die zur Verfügung gestellte API des Backends aufzurufen. Dies wird in der Regel, wenn überhaupt, von einem Pentester getestet. Solche Pentests erfolgen jedoch nicht immer regressiv und insbesondere nicht automatisiert.
Ziel dieser Arbeit ist es ein Konzept zu entwickeln, das es ermöglicht, unzulässige fachliche Prozesse zu definieren und diese regressiv und automatisiert zu testen. Durch ein Proof of Concept soll das Konzept evaluiert werden.
Lösungsansätze
- Die fachliche Logik, d.h. die Prozessschritte müssen beschrieben werden und die technische Anbindung gekapselt (ausgeklammert) sein
- Es muss definiert werden, welche Prozessschritte in welche Reihenfolge von welchem Benutzer ausgeführt werden dürfen
- Wie können positive / zulässige Ergebnisse eines Prozessschrittes erkannt werden?
- Wie können negative / unzulässige Ausführungen erkannt werden?
- Das ganze auch auf Berechtigungsebene, d.h. welcher Benutzer / welche Rolle darf was aufrufen
- Eingabevalidierungen, Abhängigkeiten zwischen Feldern, wenn Feld x gefüllt ist, muss auch Feld y gefüllt sein, darf nicht Feld a gefüllt sein
- Regelwerk über JSON-Pfade und Rules-Engine abbilden
- Smarter “Fuzzer” als Pentest
Beispiele für fachlich kaputte Prozesse
Beispiele für Prozesse in der Fachlogik die so nicht vorgesehen waren (und unter Umständen in der Testautomatisierung nicht überprüft wurden)
- Freigaben, die eigentlich nach dem Vier-Augen-Prinzip erfolgen sollen, können von dem der die Freigabe beantragt hat, selbst freigegeben werden (techn. bspw. Aufruf des Freigabe Endpoints, obwohl der Button auf der Oberfläche nicht angezeigt wird.)
- Fördermittel werden freigegeben, obwohl noch nicht alle Pflichtfelder ausgefüllt sind und alle Plausibilisierungen eingehalten werden (Button zur Fördermittelbewilligung ausgegraut, technisch wird aber trotzdem der Endpoint aufgerufen und unter Umständen die Freigabe erteilt)
Wir suchen
Idealerweise bist Master-Student:in oder befindest Dich am Ende Deines Bachelor-Studiums in den Fächern Wirtschaftsinformatik, Informatik oder einem ähnlichen naturwissenschaftlich-betriebswirtschaftlichen Studiengang. Du hast Interesse und Spaß an innovativen Themen und fühlst Dich fit im Umgang mit IT. Bestenfalls bringst du Erfahrungen in der Programmiersprache Java, Javascript oder Python mit. Ein Interesse an Themen der IT-Sicherheit ist von Vorteil.
Wir bieten
Bei uns erwartet Dich ein spannendes, hochambitioniertes Umfeld, das Dich optimal beim Erreichen der mit Dir vereinbarten Projekt- und Lernziele unterstützt. Erfahrene Berater:innen stehen Dir mit Rat und Tat zur Seite, geben Dir aber auch Freiräume für eigene Ideen. Eine exzellente Arbeitsplatzausstattung sowie eine leistungsgerechte Vergütung sind für uns selbstverständlich.





