Ziele und Herangehensweise
Im IntelliSecTest-Projekt sollen die derzeit gängigen Techniken der statischen Analyse und der dynamischen Analyse kombiniert werden, um umfangreicheres Testen zu ermöglichen. Beide Verfahren bringen für sich genommen jeweils Probleme mit sich: Bei der statischen Analyse wird der Quellcode des zu untersuchenden Testsystems auf mögliche Schwachstellen überprüft. Damit geht allerdings auch die Häufung von False Positive Ergebnissen einher, es werden also Fehler und Sicherheitslücken gemeldet, wo tatsächlich keine sind. Dem gegenüber treten beim dynamischen Testen, dem Testen laufender Systeme mithilfe von vorbestimmten Eingaben, häufig False Negative Resultate auf, Fehler werden also übersehen. Im Rahmen des IntelliSecTest-Projekts sollen die beiden Verfahren kombiniert werden: Die Ergebnisse des ersten statischen Tests werden im zweiten Schritt beim dynamischen Testen überprüft und weiterentwickelt. Die daraus resultierenden Testergebnisse werden nun der statischen Analyse zur Verfügung gestellt, um Hinweise auf weitere mögliche Schwachstellen zu erhalten, die dann wiederum geprüft werden. Dieser Kreislauf wird bis zum Eintreten einer definierten Abbruchbedingung wiederholt, etwa, wenn nach einer bestimmten Zahl an Wiederholungen keine neuen Fehler mehr festgestellt werden. Der Prozess soll im Rahmen des Projekts zusätzlich um Methoden der künstlichen Intelligenz erweitert werden, um so vor allem das dynamische Testen weiter zu optimieren.
Das entwickelte Verfahren soll im Rahmen eines anwenderfreundlichen Tools in die Praxis übersetzt werden, so dass auch Fachfremde von diesem Werkzeug durch die verständliche Aufbereitung der Analysen profitieren können. Fraunhofer FOKUS trägt mit seiner Expertise beim dynamischen Teil des Zyklus bei, für das auch das hier entwickelte Fuzzing Tool Fuzzino zum Einsatz kommen und weiterentwickelt wird. Fuzzino erlaubt es durch die Konfrontation des Testsystems mit zufallsbasierten, ungültigen oder unerwarteten Eingaben unbekannte Sicherheitslücken aufzudecken.
Projektpartner und Förderung
IntelliSecTest ist ein Forschungsprojekt, welches durch ein internes Förderprogramm der Fraunhofer-Gesellschaft finanziert wird. Die Projektleitung obliegt dem Fraunhofer-Institut für Entwurfstechnik Mechatronik (IEM). Neben Fraunhofer FOKUS sind das Fraunhofer-Institut für Kommunikation, Informationsverarbeitung und Ergonomie (FKIE) sowie das Fraunhofer-Institut für Angewandte und Integrierte Sicherheit (AISEC) beteiligt. Das Projekt beginnt am 1. Juni 2020 und läuft über drei Jahre.