Detailseite
Projekt Druckansicht

Hybride statisch/dynamische Datenflussanalyse über Prozessgrenzen hinweg

Antragsteller Professor Dr. Reiner Hähnle, seit 2/2016
Fachliche Zuordnung Softwaretechnik und Programmiersprachen
Förderung Förderung von 2014 bis 2017
Projektkennung Deutsche Forschungsgemeinschaft (DFG) - Projektnummer 264112078
 
Mittels von Informationsflussanalysen lässt sich der Fluss von Daten durch Applikationen bestimmen, oder genereller der Fluss von Informationen über diese Daten. Dies ist nützlich, um beispielsweise den ungewollten oder böswillig initiierten Abfluss von privaten Informationen zu entdecken, oder umgekehrt um Softwareschwachstellen zu erkennen, bei denen ein Angreifer Eingabedaten verändern kann, dass die angegriffene Applikation daraufhin Daten fehlerhaft verarbeitet oder preisgibt. SQL-Injection Angriffe fallen in letztere Kategorie. In der Vergangenheit wurden Daten- oder Informationsflussanalysen meist auf der Ebene einzelner Softwarekomponenten oder sogar nur einzelner Programmabläufe (Threads) betrachtet. Dieses Modell erlaubte es Forschern, relativ effektive Algorithmen und Werkzeuge zu entwerfen, ist jedoch vergleichsweise eingeschränkt. Insbesondere in Anbetracht moderner Betriebssystemen für mobile Geräte wie Tablets und Smartphones ist dieses Modell jedoch unzureichend, da nicht praktikabel. In dieses Betriebssystemen kommunizieren vielerlei Applikationen (kurz: Apps) miteinander, um kollaborativ gewisse Nutzeranforderungen und Use Cases zu erfüllen. Hierbei werden zwangsweise Daten über Prozessgrenzen hinweg ausgetauscht. Auf der anderen Seite kann jedoch Schadcode diese Interprozess-Kommunikation ebenfalls ausnutzen. So gibt es beispielsweise bekannte Malware-Apps, die auf andere, schafhafte Apps zugreift, um von diesen Apps private Nutzerdaten zu extrahieren. Um diesem Problem zu begegnen, sollen im Rahmen des Projekts InterFlow Algorithmen, Methoden und Technologien entwickelt werden, mit denen Datenflüsse über Prozessgrenzen hinweg verfolgt werden können, und zwar sowohl durch statische Codeanalyse, also die Prozesse auszuführen, als auch dynamisch zur Ausführungszeit. Wie wir in Vorarbeiten zeigen konnten, ist die hybride Kombination beider Ansätze besonders effektiv in Bezug auf die Präzision und Performanz des Ansatzes. Ein besonderes Merkmal der angestrebten Lösung ist, dass diese ohne Modifkation des mobilen Betriebssystems auskommen soll, so dass die Technologie tatsächlich für Endverbraucher einfach und auf einer breiten Masse von Endgeräten einsetzbar wird. Obwohl aus der Praxis motiviert, stellt dies das Projekt vor besondere Herausforderungen, da sich der gewählte Ansatz nicht auf das Vorhandensein vom Betriebssystem gegebener Vertrauensanker (Trusted Kernels, Trusted Platform Modules) verlassen kann. Die im Projekt InterFlow geschaffenen Analysen werden es Softwareentwicklern erlauben, Schwachstellen zuverlässig zu erkennen, die erst durch das Zusammenspiel von Datenflussproblemen mehrerer Applikationen entstehen, bzw. Schadcode aufzuspüren, der sich genau solche Schwachstellen zunutze macht.
DFG-Verfahren Schwerpunktprogramme
Ehemaliger Antragsteller Professor Dr. Eric Bodden, bis 2/2016
 
 

Zusatzinformationen

Textvergrößerung und Kontrastanpassung