Mit Genetik und Fuzz-Testing zu mehr Sicherheit im Internet der Dinge

07.11.2024
Martin Schneider & Roman Kraus

Über das Internet der Dinge (Internet of Things – IoT) sind ein Großteil unserer Geräte und Systeme, wie z. B. Telefone, Computer oder Server, miteinander vernetzt. Sie tauschen über sogenannte »Broker« und deren Kommunikationsprotokolle, bspw. MQTT, Nachrichten untereinander aus. Fraunhofer FOKUS hat ein neues Verfahren für Sicherheitstests im IoT entwickelt. Es besteht aus innovativen Methoden und Werkzeugen, mit denen Schwachstellen in Kommunikationsprotokollen effizient identifiziert und behoben werden können.

Die zunehmende Vernetzung im IoT bringt nicht nur innovative Anwendungen, wie z. B. Predictive Maintenance, also die vorausschauende Wartung von Anlagen und Maschinen, oder Asset Tracking, die Überwachung von Standort und Status in Echtzeit, hervor, sondern führt auch zu erhöhten Sicherheitsrisiken durch Hackerangriffe.

Bei dem von Fraunhofer FOKUS entwickelten Verfahren werden genetische Algorithmen und Fuzzing kombiniert, um die Effizienz von Sicherheitstests im IoT zu steigern. Dafür wird in einem ersten Schritt eine Spezifikation des Kommunikationsprotokolls eines Brokers erstellt. Ein genetischer Algorithmus erzeugt aus dieser Spezifikation Testfälle. In einem zweiten Schritt wird das zu testende System mithilfe des Fuzzings mit einer Vielzahl solcher Testfälle konfrontiert. Der genetische Algorithmus wertet die Ergebnisse dieser Tests aus und erzeugt, ähnlich wie in der Biologie, optimierte Testfälle für weitere Fuzzing-Angriffe. Dieses Verfahren wird so lange wiederholt, bis das zu testende System zum Beispiel nicht mehr reagiert.

Die Besonderheit dabei: Die Generierung von Testfällen wurde optimiert, indem der genetische Algorithmus direkt auf der Spezifikation operiert, wodurch effizienter die Grenzen des Kommunikationsprotokolls getestet werden können. Dazu haben die Wissenschaftlerinnen und Wissenschaftler die von Fraunhofer FOKUS entwickelte Fuzzing-Bibliothek Fuzzino weiterentwickelt, um eine effiziente Erzeugung von Testdaten mit Hilfe von genetischen Algorithmen zu ermöglichen. Sie entwickelten darüber hinaus ein Framework zur Bewertung der Fitness von Testfällen, die Indikatoren wie Antwortzeit, Nachrichtengröße und Codeabdeckung auswerten.

Um die Wirksamkeit des neuen Verfahrens zu zeigen, wurde der Eclipse-Mosquitto- Broker, ein weit verbreitetes und von vielen Entwicklerinnen und Entwicklern eingesetztes Tool, getestet. Der Mosquitto-Broker wird bisher mit Hilfe von Google OSS-Fuzz, einem Open-Source-Fuzzing-Tool, kontinuierlich getestet. Dabei wurde die Schwachstelle, die die Methode von Fraunhofer FOKUS innerhalb weniger Minuten offengelegt hat, nicht aufgedeckt. Die Eclipse Foundation hat die Schwachstelle mittlerweile behoben (CVE-2024-8376).

Die Methode kann für jedes Kommunikationsprotokoll, auch jenseits des Internets der Dinge, eingesetzt werden und so die Sicherheitsprüfung und Entwicklung von Sicherheits-Patches verbessern.

Autoren:

Martin Schneider ist Leiter der Testgruppe im Geschäftsbereich Quality Engineering (SQC) am Fraunhofer-Institut für Offene Kommunikationssysteme FOKUS. Seine Forschungsschwerpunkte sind Sicherheitstests von Softwaresystemen und KI-basierten Systemen. Er leitet verschiedene Forschungsprojekte in diesen Bereichen bei Fraunhofer FOKUS und ist in Standardisierungsgremien wie DIN und ETSI aktiv. Er ist Autor eines vom Bundesamt für Sicherheit in der Informationstechnik (BSI) herausgegebenen Leitfadens für die Anwendung von Fuzzing im Rahmen der Sicherheitszertifizierung nach Common Criteria, Penetrationstester, Dozent an der Fraunhofer Akademie für Security Testing und Co-Autor eines Buches zu diesem Thema.
Roman Kraus ist wissenschaftlicher Mitarbeiter im Geschäftsbereich Quality Engineering (SQC) am Fraunhofer-Institut für Offene Kommunikationssysteme FOKUS. In seiner Arbeit beschäftigt er sich primär mit Sicherheitstests von Softwaresystemen, wobei ein besonderer Schwerpunkt auf der Entwicklung von Fuzzing-Techniken liegt.

0 Kommentare

Einen Kommentar abschicken

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

ASQF e.V.