viadee IT Unternehmensberatung AG

Entwicklung einer Gefahrenmetrik und eines Fixbots für Sub-Dependencies

Abschlussarbeit

Nächstmöglicher Zeitpunkt

Münster, Köln, Dortmund


Gesuchte Fachrichtungen:

Informatik, Informationstechnik
Wirtschaftsinformatik
Mathematik

Arbeitssprache(n):

Deutsch
Englisch

MOTIVATION UND ZIELSETZUNG:

Standardaufgaben in der Softwareentwicklung werden heute in der Regel mit Hilfe von Paketen, Bibliotheken oder Modulen anderer Entwickler umgesetzt. Erst diese zusätzliche Software ermöglicht eine höhere Entwicklungsgeschwindigkeit im Vergleich zu früheren Zeiten bei gleichzeitig deutlich besserer Qualität im Sinne von Nutzbarkeit und Komplexität des fertigen Produkts. Offensichtlich birgt diese Nutzung fremder Software aber auch einen hohen Grad an Abhängigkeit, da man nicht mehr alle Teile der Software kontrolliert oder die verwendeten Funktionen bei Wegfall nachprogrammieren müsste. Man spricht daher auch von Abhängigkeiten bzw. Dependencies, die in die Projekte hereingeholt werden. Eingebundene Bibliotheken nutzen ihrerseits häufig weitere Bibliotheken, um ihre Funktionalität anbieten zu können. Aus Sicht eines Softwareprojekts sind das dann Folge- oder Unter-Abhängigkeiten bzw. Sub-Dependencies.

Software ist einer ständigen Flut von Angriffen ausgesetzt, die auf Fehlern in der Implementierung beruht. Aus Sicht von Angreifern besonders begehrt sind Fehler in häufig eingesetzter Software bzw. in verbreiteten Bibliotheken. Diese öffnen den Angreifern nicht den Zugang zu einer einzelnen Software, sondern ggf. zu einer ganzen Reihe von Anwendungen. Eine sichere Softwareentwicklung sollte möglichst lange vor solchen Fehlern schützen! Dies ist nur möglich, wenn die selbstgenutzten Abhängigkeiten regelmäßig aktualisiert werden.

Während Entwickler:innen auf die direkten Abhängigkeiten einwirken können, gestaltet sich dies bei Sub-Dependencies wesentlich schwieriger. Selbst bekannte Projekte wie zB. Create-React-App (Basis für React-Anwendungen) hat Sub-Dependencies im Bauch, die bereits Jahre alt sind. Ein einfaches Update einer Bibliothek ist zwar möglich, kann aber durch API-Brüche zu Inkompatibilitäten führen. Updates müssen getestet und einzeln bewertet werden, sonst ist ein Softwareprojekt diesen Abhängigkeiten „ausgeliefert“. Die bekannten Mechanismen, wie zum Beispiel npm audit und dependabot (auch mit der Funktionalität sich mit transitiven Abhängigkeiten zu befassen) weisen sehr wohl auf Gefahren hin, können sie aber bei sub-dependencies nicht lösen.

Das übergeordnete Ziel dieser Arbeit ist, den Grad dieses „Ausgeliefertseins“ zu messen, um Entwicklern und Entscheidern zu helfen, auf eventuell kommende Sicherheitslücken schneller und besser antworten zu können. Statt „einfach abzuwarten“ haben beide Gruppen so ein Werkzeug in der Hand, welches eigenes Handeln erlaubt. Gesucht wird eine Maßzahl, die aus der Masse an (Sub-)Dependencies und deren durchschnittlichem Alter eine Risikowahrscheinlichkeit für einen kommenden schweren Fehler aufzeigt. Aufbauend auf der Kennzahl soll eine Software entwickelt werden, die veraltete Sub-Dependencies aufspürt und aktualisiert (zB mit Hilfe des schon vorhandenen Update-Mechanismus npm / package.json / „Overrides“).

Beide Aspekte dieser Arbeit zusammen befassen sich mit einem der prägendsten Probleme in der heutigen Softwareentwicklung. Eine Lösung ist aus unserer Sicht dringend erforderlich! Das Vorantreiben einer Lösungsfindung wäre dienlich für die gesamte Branche.

REQUIREMENTS:

Erfahrung: Du bist Student:in der Fächer Wirtschaftsinformatik, Informatik, Mathematik oder einem anderen naturwissenschaftlichen oder betriebswirtschaftlichen Studiengang.

Technologie: Du hast Freude an innovativen Technologien und bringst etwas Programmiererfahrung, idealerweise in npm, Maven, Gradle oder vergleichbaren Werkzeugen mit.

Motivation: Du bringst die Antrieb mit, dich fundiert mit sowohl technischen als auch fachlichen Aspekten deiner Fragestellung auseinanderzusetzen.

Wachstum: Du möchtest nicht nur fachlich, sondern auch persönlich über dich hinauswachsen.

Security: Du kannst dich für Security Themen begeistern.

WIR BIETEN DIR:

Einen wissenschaftlich wie fachlich qualifizierten Begleiter, der dich optimal bei deiner Abschlussarbeit unterstützt und und menschliche Werte mit exzellenter Beratung verbindet.

Erfahrene Berater:innen, die dir mit Rat und Tat zur Seite stehen und die genauso Freiräume für eigene Ideen geben.

Eine Kultur, die Wertschätzung, Verantwortung und Menschlichkeit, in den Mittelpunkt stellt.

Remote oder im Büro: Du entscheidest, wie und wo du arbeitest, solange es mit deinem Team abgestimmt ist.

Ob Spikeball, Mario Kart spielen oder gemeinsam Wraps essen – wir gestalten unsere Pausen gerne gemeinsam, weil wir großen Wert auf ein lockeres und angenehmes Arbeitsumfeld legen.

Auch als Student:in voll integriert: Ob Sommerfest, Weihnachtsfest oder ShipIt-Day – unsere Studierenden sind von Anfang an Teil des viadee-Teams.

viadee Campus-Community: über 40 Studierende arbeiten an unseren drei Standorten stark vernetzt, um Forschung und Praxis zu verbinden – und profitieren vom Austausch unter Gleichgesinnten.

Für uns selbstverständlich: Eine moderne Arbeitsplatzausstattung, leistungsgerechte Vergütung sowie die Garantie, dich voll auf deine Thesis konzentrieren zu können.



Bitte erwähne bei deiner Bewerbung, dass du diese Stelle auf max-talent.de gefunden hast

Interesse?

Dokumente:

.pdf

Ähnliche Jobs: