Kooperation von BSI und mgm: Sicherheit von Open Source Software erhöhen

Im Rahmen des Projekts „Codeanalyse von Open Source Software“ (CAOS) des Bundesamtes für Sicherheit in der Informationstechnik (BSI) wurde der Programmcode gängiger Open-Source-Projekte auf Schwachstellen untersucht. Security-Expert:innen von mgm durften das BSI dabei unterstützen. Ziel der Untersuchungen waren zwei Videokonferenzsysteme und zwei eID-Templates, die mithilfe der Schwachstellenanalyse dazu beitragen sollen, die Sicherheit von Open Source Software zu erhöhen. Die Ergebnisse des CAOS-Projektes sind im Sommer 2023 veröffentlicht worden.

Kurz & knapp

  • BSI und mgm untersuchen im CAOS-Projekt Schwachstellen und Risiken in Open Source Anwendungen.
  • Getestet wurden zwei Videokonferenzsysteme und eID-Templates.
  • Alle gefundenen Sicherheitslücken wurden an die Entwicklerteams gemeldet und von diesen zeitnah behoben.

Die Stärke von Open Source Software (OSS) liegt in einer theoretisch unendlichen Zahl von Software-Entwickler:innen, die Funktionen ergänzen, verbessern und die Sicherheit erhöhen. Gerade im Bereich der Security ist ein abgestimmtes, konzentriertes und dokumentiertes Vorgehen wichtig. Insbesondere Software, die vermehrt in Behörden und in der Gesellschaft genutzt wird, sollte regelmäßig auf Sicherheitslücken überprüft werden. Cyberangriffe lassen sich in den meisten Fällen auf Fehler im Programmcode der betroffenen Anwendungen zurückführen.

Daher hat das Bundesamt für Sicherheit in der Informationstechnik (BSI) 2021 das Projekt „Codeanalyse von Open Source Software“ (CAOS) gestartet. Ziel ist es, häufige Schwachstellen und Risiken in den Anwendungen zu identifizieren und zu beheben. Zudem soll das Projekt Entwickler:innen bei der Erstellung sicherer Softwareanwendungen unterstützen und das Vertrauen in Open Source Software steigern. Als Untersuchungsmethoden werden die statische Codeanalyse mit begleitender dynamischer Analyse verwendet. Zentrales Projektziel ist laut Bundesamt für Sicherheit in der Informationstechnik: „Die Codeanalyse soll das Vertrauen in die Sicherheitseigenschaften des Produkts stärken und etwaige Zweifel an der Korrektheit der Funktionsbeschreibungen ausräumen.“ Untersucht wurden zwei Videokonferenzsysteme und zwei eID-Templates.

Videokonferenz-Tools Jitsi und BigBlueButton im Fokus

Die beiden Open Source Videokonferenztools Jitsi und BigBlueButton wurden einer umfassenden Sicherheitsprüfung unterzogen. Dabei wurden Quellcode-Reviews, dynamische Analysen und Schnittstellenanalysen in den Bereichen Netzwerkschnittstellen, Protokolle und Standards kombiniert. Die Prüfung erfolgte nach dem Whitebox-Verfahren.

Während bei Jitsi keine kritischen Schwachstellen gefunden wurden, wies BigBlueButton zwei als kritisch eingestufte Sicherheitslücken auf. Diese betrafen Stored Cross-Site-Scripting, welche das Einfügen von JavaScript-Payloads über den Benutzernamen ermöglicht. Dabei wurden zwei Common Vulnerability Enumerations (CVE) gefunden: CVE-2022-26497 und CVE-2022-27238. Beide Sicherheitslücken wurden den Entwicklern vor der Veröffentlichung im Rahmen des „Responsible Disclosure“ mitgeteilt und in neueren Versionen der Open Source Tools behoben.

Darüber hinaus verwendet die Anwendung 75 Abhängigkeiten in BigBlueButton von anderem Open Source Code mit hohen oder kritischen Sicherheitslücken. Bei Jitsi waren es 31 Abhängigkeiten. In beiden Projekten gab es Anhaltspunkte auf Code, der auf „schlechte Praxis“ hindeutete, die durch eine softwaregestützte Qualitätsprüfung hätte erkannt werden sollen. Der Bericht kommt daher zu dem Schluss, dass eine solche Prüfung bei beiden Open Source Teams sehr wahrscheinlich nicht stattgefunden hat.

Die Untersuchung wurde bereits zwischen dem 1. Februar und dem 25. April 2022 durchgeführt.

Sicherheitslücken erfolgreich geschlossen

Die gefundenen Sicherheitslücken und Auffälligkeiten wurden direkt vom BSI im Rahmen eines Responsible Disclosure-Verfahrens an die Entwicklerteams gemeldet, alle Schwachstellen konnten (auch in neueren Versionen) direkt behoben werden. Das Verfahren gestattet den Entwickler:innen eine angemessene Frist zur Behebung von Sicherheitslücken vor deren Veröffentlichung. Bei den Ergebnissen, die im Sommer 2023 veröffentlicht wurden, handelt es sich um eine Kombination aus Source Code Review, dynamischer Analyse und Schnittstellenanalyse in den Bereichen Netzwerkschnittstellen, Protokolle und Standards.

Um die Sicherheit von Open Source Software auch zukünftig zu erhöhen, sind weitere Codeanalysen geplant. Das Projekt wird unter dem Namen CAOS 2.0 fortgeführt.

Elektronische Identitäten (eID) auf dem Prüfstand

Damit Bürgerinnen und Bürger die Online-Funktion des Personalausweises nutzen können, müssen Diensteanbieter ihr Angebot in die Infrastruktur elektronischer Identitäten (eID) integrieren. eID-Templates sollen die Authentifizierung bei WordPress- oder Nextcloud-Installationen sicher gestalten und sind Teil der geplanten Einführung der „eID-Card“.

Im Rahmen des CAOS-Projektes wurden hierzu zwei eID-Login-Plugins untersucht: eid-login-wordpress sowie eid-login-nextcloud. Beide Anwendungen wurden einer statischen Quellcode-Analyse mit begleitender dynamischer Analyse unterzogen. Die Untersuchung erfolgte auch hier nach dem Whitebox-Verfahren und ergab, dass beide Plugins keine schwerwiegenden Sicherheitslücken aufweisen.

Allgemein lässt sich feststellen, dass bei den eID-Logins erfahrene Entwickler:innen eingebunden sind, die Wert auf Sicherheit legen. Es zeigt sich, dass bei beiden Plugins bereits in der Vergangenheit mit verschiedenen Security-Werkzeugen gearbeitet wurde.

Die Analysen fanden im Zeitraum vom 04.04.2022 bis zum 25.05.2022 statt.


Weitere Informationen: