Skip to main content
CORDIS - Forschungsergebnisse der EU
CORDIS
Inhalt archiviert am 2024-06-18

A Source code analysis Toolbox for software security AssuraNCE

Article Category

Article available in the following languages:

Neue Sicherheits-Toolbox für Software soll die Zuverlässigkeit bestehender Prozesse stärken

Von der EU geförderte Forscher haben eine Reihe von Tools zur Analyse des Quellcodes von Software entwickelt, die die Sicherheitseigenschaften von Anwendungen, die in C, C++ und Java geschrieben wurden, verifizieren können.

Digitale Wirtschaft icon Digitale Wirtschaft

In einer Gesellschaft, die von Informations- und Kommunikationstechnologien geprägt ist, wird der Softwaresicherheit eine sehr hohe Priorität eingeräumt. Daher wurde das von der EU-finanzierte STANCE-Projekt ins Leben gerufen, an dem sich Forscher verschiedener Disziplinen beteiligten und im Rahmen dessen bereits zahlreiche wissenschaftliche und technologische Durchbrüche im Bereich der Softwaresicherheit erzielt wurden. Über die Laufzeit von 3,5 Jahren hinweg haben die Projektteilnehmer eine Toolbox – ein Reihe von Tools zur Analyse von Quellcode – entwickelt, implementiert und veröffentlicht, die die Sicherheitseigenschaften von Anwendungen, die in C, C++ und Java geschrieben wurden, verifizieren können. Diese Toolbox vereint bereits existierende Analysetools, wie die Frama-C-Plattform, den VeriFast Verifier und ein Fuzzing-Tool. Frama-C ist eine Softwareanalyseplattform für die Entwicklung, Implementierung und Veröffentlichung von Lösungen für die offizielle Verifizierung. VeriFast dagegen dient der Analyse von Quellcode in C oder Java mit Eigenschaften, die in der sogenannten Separation Logic geschrieben wurden. "Die STANCE-Architektur basiert auf den oben genannten Analysetools", so Armand Puccetti, ein am Projekt beteiligter Forscher. "Im Rahmen des Projekts haben wir zahlreiche Plug-ins für diese Tools entwickelt, die spezifische Sicherheitsanalysen, wie modulare Codeanalysen, ermöglichen." Puccetti zufolge sind dies leistungsstarke Tools für die offizielle Verifizierung der Zuverlässigkeit von sicherheitssensiblen Anwendungen. "Darüber hinaus haben die Teilnehmer des STANCE-Projekts die Tools weiter optimiert, indem sie Methodologien entwickelt haben, die es ermöglichen, eine Kombination dieser Tools in Fallstudien und im Kontext der Common Criteria-Zertifizierung einzusetzen ", fügte er hinzu. Funktionsweise Das STANCE-Tool spezifiziert Algorithmen für die Identifizierung von bestimmten Sicherheitsbedrohungen im Quellcode. Dazu setzt es an bereits bestehenden Methoden zur sicherheitsbezogenen Quellcodeanalyse, einschließlich abstrakter Interpretationen, deduktiver Verifikationen und der Modellprüfung, an und baut auf diesen auf. Diese Analysen werden dann mithilfe von Diagnoseoptionen sowie modellbasierten Diagnosen und Gegenbeispielen ergänzt. Die Analysen können auch mithilfe dynamischer Analysen mit Fehlereinstreuung und der Generierung automatischer Testfälle ausgeführt werden. Nach Abschluss dieser Anfangsphase bietet das Tool seinem Benutzer eine theoretische Grundlage, die offiziell gewährleistet, dass eine bestimmte Software keinerlei Sicherheitslücken aufweist. Zuverlässigere Prozesse Mithilfe der von ihnen entwickelten Toolbox und Methodologien ist es dem Team des STANCE-Projekts gelungen, die Zuverlässigkeit und Kosteneffizienz bestehender sicherheitsbezogener Prozesse zu steigern. "Ein Ergebnis des Projekts war die positive Entwicklung im Bereich der Softwaresicherheit und die damit einhergehenden Auswirkungen auf die rechtlichen, gesellschaftlichen und wirtschaftlichen Aspekte", so Puccetti. "Darüber hinaus werden einige der mit den Frama-C- und VeriFast-Plattformen entwickelten Tools als Open Source-Tool veröffentlicht, während andere als Prototypen die Grundlage für weitere Forschungsarbeiten bilden werden." Von einem wirtschaftlichen Standpunkt aus betrachtet lässt sich sagen, dass die Ergebnisse des STANCE-Projekts für Unternehmen, die auf das Tool und die Methodologien setzen, neben einem strategischen Marktvorteil auch langfristige Kosteneinsparungen bei der Entwicklung und Wartung bedeuten. Was die Vorteile für die Gesellschaft insgesamt angeht, so setzten die Projektteilnehmer einen neuen Standard in puncto Zuverlässigkeit – ein dringend erforderlicher Impuls im Bereich der Entwicklung von IT-Technologien. "Das STANCE-Team trug mit seinem Projekt und der Entwicklung einer Methode zur Identifizierung von Sicherheitsschwachstellen in sicherheitssensiblen Softwareanwendungen zudem zur Umsetzung der EU-Richtlinien bei, da die Bürger der EU nun darauf vertrauen können, dass ihre Softwareanwendungen sicher sind", so Puccetti.

Schlüsselbegriffe

STANCE, Toolbox, Quellcode, C++, Java, IT-Sicherheit, Frama-c, Verifast, Code-Analyse, Bedrohungen, Diagnose, Software, Wartung, Schwachstellen

Entdecken Sie Artikel in demselben Anwendungsbereich