Sicherheitslücken beim Einsatz und bei der Entwicklung von TLS automatisiert erkennen
Das Protokoll Transport Layer Security (TLS) ist heute einer der wichtigsten Sicherheitsstandard auf Computern und Smartphones. Es dient der Absicherung von Kommunikation über das Internet und wird beispielsweise beim Streaming von Videos eingesetzt.
Durch menschliche Fehler in der Implementierung von TLS und anderen Verschlüsselungsprotokollen entstehen jedoch immer wieder Sicherheitslücken. Diese werden zunehmend herausfordernder, da sie sich aus komplexen Kombinationen verschiedener Protokollversionen sowie deren Teilschritten ergeben. Während der Softwareentwicklung ist dieses komplexe Zusammenspiel äußerst schwer zu antizipieren. Abhilfe können vollumfängliche Sicherheitstests schaffen, insofern sie diese Komplexität ausreichend berücksichtigen.
Ziel des Vorhabens „Kombinatorisches Testen von TLS-Bibliotheken auf allen Ebenen (KoTeBi)“ ist es, Schwachstellen und Kompatibilitätsprobleme schon während der Programmierung zu erkennen und zu vermeiden. Um dies zu erreichen, werden die Forschenden ein System entwickeln, das ein durchgängiges Testen von Programmbibliotheken, den Implementierungen eines spezifischen Protokolls, ermöglicht. Dazu erforschen die Projektbeteiligten Methoden zur automatisierten Erkennung von Sicherheitslücken, die sich insbesondere aus der Kombination von Protokollversionen und deren Teilschritten ergeben. Softwareentwicklerinnen und -entwickler sollen befähigt werden, ihre eigene Implementierung mit dem Werkzeug zu testen, sodass die Absicherung bereits im Entwicklungsprozess stattfindet.
Werden Schwachstellen in sicherheitskritischen Softwareanwendungen systematisch und kontinuierlich erfasst, hilft dies erheblich dabei, Dienstleistungen und Produkte besser abzusichern.
Perspektivisch ermöglicht das Vorhaben die selbständige Sicherheitsanalyse von Eigenentwicklungen. Dies ist beispielsweise vielversprechend mit Blick auf neue kryptographische Verfahren, die heute und in Zukunft immer stärker benötigt werden. Denn existierende Verschlüsselungsprotokolle wie TLS wurden zumeist für leistungsstarke Computer entwickelt. Für ressourcenarme Geräte, die zum Beispiel im Internet der Dinge verwendet werden, werden zunehmend neue Verfahren entwickelt.
Neben Beschäftigten in der Softwareentwicklung können auch Prüfinstitute und Aufsichtsbehörden von automatisierten Tests profitieren. Beispielsweise ist die Verwendung der Forschungsergebnisse für Werkzeuge zur Zertifizierung von Software denkbar. Indem die Forschenden die Entwicklung von Kommunikationsprotokollen sicherer machen, leisten sie einen wichtigen Beitrag zur Zukunftsfähigkeit Deutschlands und Europas in einer digitalen Welt.