Millionenförderung der EU für sichere Softwaresysteme
Für seine Forschung zu sicheren Softwaresystemen erhält Prof. Dr. Eric Bodden, Informatiker an der Universität Paderborn und Direktor des Fraunhofer IEM, den „ERC Advanced Grant“ in Höhe von 2,5 Millionen Euro vom Europäischen Forschungsrat (ERC, European Research Council). Die Grants bilden die bedeutendsten Auszeichnungen der europäischen Forschungsförderung und werden in einem kompetitiven Verfahren an Spitzenforscher*innen mit herausragenden wissenschaftlichen Leistungen vergeben.
Die nächste Generation der automatischen Schwachstellenanalyse
„Software durchdringt unser Leben – aber ihre Unsicherheit ist eine ernstzunehmende Bedrohung. Um zu gewährleisten, dass Softwaresysteme zuverlässig sind, muss man ihren Programmcode überprüfen“, sagt Bodden. Der Informatiker ist führender Experte auf dem Gebiet der sicheren Softwareentwicklung mit besonderem Fokus auf Werkzeugen zur automatischen Schwachstellenanalyse. Hier setzt sein ERC-Vorhaben an: Bodden entwickelt eine Technologie, die Werkzeuge zur Schwachstellenanalysen so produziert, dass sie für die jeweilige Software im jeweiligen Unternehmen optimal funktionieren – und das vollständig automatisiert.
Verbindliche Sicherheitsanforderungen gesetzlich vorgeschrieben
Das Thema könnte kaum aktueller sein: Da die Anzahl der erfolgreichen Angriffe stetig steigt, hat die EU 2023 einen erweiterten Entwurf für den sogenannten „Cyber Resilience Act“ (CRA) vorgelegt. Dieser zielt darauf ab, Verbraucher*innen und Unternehmen zu schützen, die Produkte mit digitalen Komponenten kaufen. Durch das Gesetz werden verbindliche Cybersicherheitsanforderungen eingeführt; ein unzureichender Software-Angriffsschutz soll dadurch der Vergangenheit angehören. „Mit dem CRA wird eine sichere Software-Engineering-Methode für jedes in der EU verkaufte softwarefähige Produkt unumgänglich. Für viele Unternehmen, die Software entwickeln, wird das allerdings einen radikalen Wandel bedeuten. Um diesen Wandel bewältigen zu können, benötigen sie möglichst automatisierte Werkzeuge“, so Bodden weiter.
Statische Programmanalysen: Bislang kaum genutztes Potenzial
Die statische Programmanalyse, also die automatisierte Prüfung des Programmcodes, ist die wichtigste Technik, um diese Sicherheit zu garantieren. Denn sie ist in der Lage, ein Programm in Bezug auf alle möglichen Eingaben – auch solche von Hackern – zu analysieren, und zeigt Fehler und Schwachstellen wie etwa Datenlecks auf. Bodden: „Obwohl die statische Programmanalyse ein extrem leistungsfähiges Werkzeug ist, hat sie jahrzehntelang um eine breite Anwendung gekämpft. Aber da die EU es Unternehmen nun vorschreibt, Software sicher zu entwickeln, können wir auf diese Technologie nicht mehr verzichten.“ Aktuelle Systeme seien laut Bodden allerdings unzureichend an Entwicklungskontexte angepasst, sodass sie beispielsweise häufig falsche Warnungen ausgeben und somit die Entwickler*innen von den tatsächlichen Schwachstellen ablenken. Schwierig sei das vor allem für wenig erfahrene Softwareingenieur*innen, die statische Analysen in Folge des CRA nun aber künftig durchführen müssen.
Technologie analysiert sich selbst
Die Technologie, die Bodden in seinem ERC-Projekt „Self-Optimizing Static Program Analysis“ in seiner Fachgruppe erforschen möchte, soll Abhilfe durch Automatisierung leisten. Denn sie versetzt Nutzer*innen in die Lage, Analysen für jeden gegebenen Anwendungskontext durchzuführen. Relevante Warnungen werden binnen kürzester Zeit gemeldet, ohne dass die Anwender*innen manuell eingreifen müssen. Sie erhalten präzise Berichte für die von ihnen bereitgestellten Programme. „Kein vorheriges Projekt hat sich mit der Idee befasst, diese optimalen Analysen vollautomatisch zu produzieren. Um das zu ermöglichen, werden wir erstmalig statische Analysen entwickeln müssen, die nicht nur Programme, sondern auch sich selbst analysieren und optimieren.“
Sicherheit für Millionen von Programmen
Im Ergebnis soll sein Vorhaben dazu führen, dass Software-Ingenieur*innen diese Art der Fehlerdetektion eigenständig nutzen und alle erforderlichen Anpassungen der Analyse automatisch durchgeführt werden können. „Und es soll dazu beitragen, die Millionen von Softwaresystemen zu sichern, auf die wir uns alle zu verlassen gelernt haben“, fasst der Wissenschaftler zusammen.
Eric Bodden ist Professor für Secure Software Engineering und Vorstandvorsitzender am Heinz Nixdorf Institut der Universität Paderborn, Leiter des Instituts für Informatik der Universität und Direktor für Softwaretechnik und IT-Sicherheit am Fraunhofer-Institut für Entwurfstechnik Mechatronik. Zudem ist er Mitglied der „Working Group 2.4 Software Implementation Technology“ der „International Federation for Information Processing“ (IFIP), Teil des DFG-Fachkollegiums „Informatik“ und acatech-Mitglied.