Die zunehmende Vernetzung im IoT bringt nicht nur neuartige Anwendungen, wie zum Beispiel 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.
Effizienz von Sicherheitstests steigern
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 verbessert, 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.
Schwachstelle aufgedeckt
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.