Seit unserer Gründung pflegen wir enge Kontakte mit Hochschulen/Universitäten und Forschungsinstituten. Von diesem Austausch profitieren beide Seiten. Studierende können ihre theoretischen Kenntnisse in konkreten Anwendungen praktisch umsetzen, comlet kann den aktuellen Technologiestand halten und ausbauen. Bisher haben wir annährend 100 Studienarbeiten, Praxisphasen, Bachelor und Master Abschlussarbeiten, betreut. Der typische comlet-Studierende beginnt bereits in den ersten Semestern als Hiwi bei uns, später realisiert er bei uns auch seine Studienarbeiten. Viele comlet- BA-Absolventen starten im Anschluss ins Berufsleben oder studieren dual weiter und sammeln weiterhin studienbegleitend Praxiserfahrung.
Das Themenspektrum deckt unser gesamtes Portfolio ab. Unsere Studierende arbeiten mal bei der Entwicklung neuer Software-Architekturen mit, müssen sich aber auch mit Detail-Anpassungen in Protokoll-Stacks beschäftigen. Sie schreiben Software für eingebettete Systeme, oder kümmern sich um Security-Aspekte. In der Regel gehören die comlet-Studenten zu den Besten Ihres Jahrgangs. Heute möchte ich ganz besonders die exzellente Abschlussarbeit von Jan Brandstetter vorstellen.
Fuzzy-Testing Abschlussarbeit von Jan Brandstetter
Jan hat sein BA-Studium an der Hochschule Kaiserslautern im FB Informatik im Frühjahr 2023 erfolgreich abgeschlossen. In seiner Abschlussarbeit hat er zwei spannende Technologien zusammengeführt. Zum Nachweis, dass in einem konkreten eingebetteten System keine Sicherheitslücken vorhanden sind, hat Jan Methoden des Fuzz-Testens herangezogen.
Eingebettete Systeme sind immer häufiger Teil kritischer Infrastrukturen und ein wichtiger Bestandteil des alltäglichen Lebens, weshalb ihre Sicherheit von höchster Priorität ist. Übliche Testverfahren wie Unit-Tests oder statische Code-Analysen scheitern daran, sicherheitskritische Programmfehler zu finden, die in unerwarteten Programmzuständen auftreten. Um diese unerwarteten Programmzustände zu entdecken, hat Jan dynamische Testverfahren wie Fuzz Testing angewendet. Das zu testende Programm wird wiederholt mit modifizierten Eingaben ausgeführt, um auf diese Weise möglichst viele Kanten im Kontrollflussgraphen des Programmes zu erreichen. Die Effektivität des Testverfahrens hängt stark von der Beobachtbarkeit des Programmverhaltens ab.
Die Funktionalität zur Verhaltensbeobachtung muss in die getestete Software integriert oder in der Test-Hardware verbaut werden.
„Durch meine Tätigkeit bei comlet konnte ich die gelernte Theorie in die Praxis umsetzen, wodurch ich wichtige Erfahrungen sammeln und meine Interessen vertiefen konnte.“
Jan Brandstetter, Dualer Student bei comlet in Zweibrücken