CodeShield

IT-Sicherheit entlang der gesamten Software-Lieferkette

Projektteam bei einer Besprechung an einem Tisch sitzend.
Das Projektteam in CodeSchield erarbeitet ein Tool zum Auffinden von Schwachstellen während der Softwareentwicklung. © CodeShield / MWIDE

Motivation

Zunehmend begleitet Software nicht nur den Berufsalltag vieler Menschen, sondern auch ihr Privatleben. Wir vertrauen persönliche Daten unseren Smartphones an, sind bei ärztlichen Behandlungen auf intelligente medizinische Geräte angewiesen und lagern unsere Dateien und Fotos in Cloud-Dienste aus. Neben vielen Vorteilen ergeben sich dabei allerdings auch immer neue Möglichkeiten für Cyber-Angriffe, wodurch die Entwicklung sicherer Software heute schwieriger ist als je zuvor. Weltweit werden jedes Jahr etwa 14.000 neue Softwareschwachstellen bekannt, von denen jede einzelne Auswirkungen auf eine Vielzahl von Softwareprodukten haben kann. Um Angriffe über solche Schwachstellen zu vermeiden, müssen höhere Sicherheitsanforderungen an die Softwaresysteme gestellt werden, denen wir täglich vertrauen.

Ziele und Vorgehen

Im Projekt CodeShield (IT-Sicherheit entlang der Software Supply Chain) wird auf neueste Forschungsergebnisse aufgesetzt, die es erlauben, die gesamte Software entlang ihrer Lieferkette nahezu in Echtzeit und mit unerreicht hoher Präzision auf Schwachstellen zu analysieren. Dazu kombiniert das Projektteam eine neuartige Datenflussanalyse mit einem Fingerprinting-Ansatz. Die Datenflussanalyse kann Schwachstellen im Quellcode der selbst entwickelten Software aufdecken. Das Fingerprinting-Verfahren ermöglicht es, Code-Fragmente anderer Hersteller eindeutig zu identifizieren und so Sicherheitslücken auch in älterem Quellcode zu finden. Die innovative Kombination der Datenflussanalyse und des Fingerprintings in CodeShield erlaubt es insbesondere, unternehmensinterne Software effizient und automatisiert auf bekannte und unbekannte Sicherheitslücken zu analysieren. Im Projekt wird ein Werkzeug entwickelt, das in der Lage ist, solche Codeanalysen in vielen verschiedenen Programmiersprachen durchzuführen.

Innovationen und Perspektiven

Durch die im Projekt entstehende Lösung werden erstmalig effiziente und schlanke Sicherheitsanalysen für den Einsatz in leichtgewichtigen und agilen Softwareentwicklungsprozessen möglich. Die Ergebnisse des Vorhabens helfen Herstellern, insbesondere auch kleinen und mittelständischen Unternehmen, externe Software auf Sicherheitsrisiken zu durchleuchten und sicher in die eigene Software einzubinden. Durch eine direkte Integration in die Entwicklungsumgebungen und Arbeitsprozesse von Softwareentwicklerinnen und -entwicklern, kann IT-Sicherheit einfach, verständlich und beherrschbar gestaltet werden. Das innovative Werkzeug kann bereits während der Entwicklung von Software eingesetzt werden und deckt so frühzeitig Sicherheitslücken auf. Damit werden sowohl das Risiko von Cyberangriffen auf die Software als auch die Zeit für aufwendige Sicherheitstests reduziert.