Navigation und Service

Codeanalyse von Open Source Software (Projekt CAOS)

Projekt 486

Das BSI hat die Aufgabe, Informationssicherheit in der Digitalisierung unter anderem durch Prävention für Staat, Wirtschaft und Gesellschaft zu gestalten. Im Zuge dessen hat das BSI 2021 das Projekt „Codeanalyse von Open Source Software“ (kurz CAOS) ins Leben gerufen. Ziel des Projekts ist es, verschiedene Open Source Software einer Codeanalyse zu unterziehen. Dabei wird der Fokus auf Anwendersoftware gelegt, die vermehrt durch Behörden oder die Gesellschaft genutzt werden. Die Codeanalyse soll das Vertrauen in die Sicherheitseigenschaften des Produkts stärken und etwaige Zweifel an der Korrektheit der Funktionsbeschreibungen ausräumen.

Erfolgreiche Angriffe lassen sich häufig auf Fehler im Programmcode betroffener Anwendungen zurückführen. Eine statische Codeanalyse kann unterstützend dazu beitragen, frühzeitig Fehler zu erkennen und zu beheben. Sie kann bereits im Entwicklungsprozess, aber auch vor Installation und Nutzung der Software vorgenommen werden. Die statische Codeanalyse erfolgt als Whitebox Test und bietet einen vollständigen Überblick über die Anwendung.
Innerhalb des Projektes CAOS werden die folgenden Leistungen erbracht:

  • Identifizierung von Schwachstellen im Quellcode
  • Überprüfung eingebundener Funktionen auf deren Konformität und Überprüfung auf Aktualität der verwendeten Bibliotheken
  • Identifizierung nicht dokumentierter Zugangsmöglichkeiten
  • Überprüfung der Anwendung auf sichere Übertragung von Formulardaten
  • Ermittlung möglicher Gefährdungen und deren Auswirkungen auf Grundlage der festgestellten Mängel im Quellcode bei einem Schutzbedarf der Anwendungen von "hoch" und "sehr hoch"
  • Durchführung der Codeanalysen als Kombination aus Static Application Security Testing (SAST), Dynamic Application Security Testing (DAST), Interactive Application Security Testing (IAST) und Software Composition Analysis (SCA), sowie einer Kontrolle in den Bereichen Netzwerkschnittstellen, Protokolle und Standards

Die Ergebnisse der Codeanalyse werden im Anschluss an das Projekt den Software-Entwickelnden zur Behebung der Schwachstellen zugänglich gemacht. Nach einer angemessenen Wartezeit im Rahmen eines „Responsible Disclosure“-Verfahrens veröffentlicht das BSI die Ergebnisse.

Codeanalyse Videokonferenzsysteme

Videokonferenzsysteme sind spätestens seit der Corona Pandemie für die Kommunikation zwischen räumlich verteilten Teilnehmenden unerlässlich geworden. Die verstärkte Nutzung von Home-Office ebenso wie Besprechungen über weit entfernte Standorte hinweg macht sie zu einem wichtigen Medium. Im Rahmen des Projektes CAOS wurden die folgenden Videokonferenzsysteme untersucht:

  • BigBlueButton
  • Jitsi

Für die untersuchten Videokonferenzsysteme wurden mehrere Schwachstellen unterschiedlicher Kritikalität auf der Webseite https://cve.mitre.org veröffentlicht. Außerdem wurden während der Codeanalyse in Absprache mit den Entwicklern zwei kritische CVEs behoben und veröffentlicht. Zum Bericht:

Ergebnisse der Studie zur statischen Codeanalyse ausgewählter Opensource Software: Videokonferenzsysteme

Anhänge zur Codeanalyse "Videokonferenzsysteme" AP3

Codeanalyse eID-Templates

Zur Nutzung der Online-Ausweisfunktion benötigt der Dienstanbieter einen Service für elektronische Identitäten (eID), um seinen Dienstes in die zugrundeliegende eID-Infrastruktur zu integrieren. In diesem Zusammenhang wurden mehrere Templates im Rahmen eines weiteren BSI-Projekts entwickelt und einer Codeanalyse unterzogen. Die Templates sollen einem Nutzenden die Authentifizierung bei Wordpress- oder Nextcloud-Installationen mit hohem Schutzbedarf ermöglichen. Der Einsatz der Templates ist im Zusammenhang mit der „eID-Card“ geplant.

Ergebnisse der Studie zur statischen Codeanalyse ausgewählter Opensource Software: eID-Templates

Anhänge zur Codeanalyse "eID-Login-Plugins" AP4

Zukünftige Codeanalysen

Um die Sicherheit in der Gesellschaft und im Behördenumfeld verbreiteter Open Source Software weiter zu unterstützen, sind weitere Codeanalysen beauftragt. Die dabei gefundenen Ergebnisse werden nach der Fehlerbehebung durch die Entwickelnden auf dieser Seite veröffentlicht.