Bug Resilience Programm

In 2023 hat der Sovereign Tech Fund begonnen, das Bug Resilience Programm umzusetzen, um die Widerstandsfähigkeit der Open-Source-Software-Infrastruktur gegen unentdeckte Schwachstellen proaktiv zu erhöhen.

Das Bug Resilience Programm (BRP) besteht derzeit aus drei Komponenten:

  1. Direkte Mitwirkung bei FOSS-Projekten
  2. Eine Bug- und Fix-Bounty-Plattform
  3. Die Überprüfung von Codesicherheit

Unentdeckte Sicherheitslücken in FOSS-Infrastrukturprojekten wie Heartbleed (2014), Apache Struts Remote Code Execution (Equifax Breach, 2017) und Log4Shell (2022) haben Millionen von Menschen betroffen. Bug Bountys und Code Audits sind beliebte Ansätze, um Anreize für das Auffinden von Schwachstellen in Software zu schaffen und um Sicherheitsforschende anzuerkennen und zu belohnen.

Für kleinere Open-Source-Projekte können die Anreize von klassischen Bug-Bounty-Modellen mit einigen Problemen einhergehen. Viele Open-Source-Projekte haben nur begrenzt Zeit und Ressourcen und sind auf ihre ehrenamtlichen Communitys angewiesen, um die auf diese Weise entdeckten Schwachstellen zu beheben. Häufig gibt es sogar einen Rückstau an bekannten Problemen, der die Kapazität der Projekte beeinträchtigt, den Quellcode effektiv zu pflegen (Ellis, R et al., 2022). Darüber hinaus gibt es bereits mehrere Bug-Bounty-Programme, die dieselbe Spanne von Projekten abdecken, in die der STF investiert. Forschende haben gezeigt, dass sich überschneidende Bug-Bounty-Programme immer weniger lohnen und sogar negative Auswirkungen auf bestehende Programme haben können.

Auf dieser Seite:


Bug-Bounty-Programme und Code Audits

Bug-Bounty-Programme und Code Audits sind beides wichtige Ansätze, um die Sicherheit von Software zu verbessern und sie widerstandsfähiger gegenüber Schwachstellen zu machen. Mit ihnen können potenzielle Sicherheitsrisiken in Software-Codebasen überwacht und aufdeckt werden. Bei Bug-Bounty-Programmen werden externe Sicherheitsforscher*innen eingeladen, Software zu analysieren und Sicherheitslücken zu identifizieren und zu melden, wofür sie finanzielle Belohnungen (sogenannte Bounties) erhalten.

Ein Code Audit beinhaltet eine gründliche Untersuchung des Quellcodes durch Sicherheitsexpert*innen, entweder manuell oder mit automatisierten Tools, um Sicherheitsschwachstellen zu identifizieren und zu beheben. Diese Audits variieren in ihrem Umfang und ihrer Breite, können z. B. die Analyse der Logik, des Designs und/oder der Implementierung des Codes beinhalten, um eine robuste und sichere Softwarekomponente zu gewährleisten.

Bug-Bounty-Programme motivieren und belohnen vielfältige externe Sicherheitsfachleute, um Schwachstellen in realen Szenarien über einen längeren Zeitraum hinweg zu erforschen. Code Audits bieten eine systematische, gründliche Untersuchung, um potenzielle Sicherheitsprobleme innerhalb der Software zu einem bestimmten Zeitpunkt zu identifizieren und zu beheben. Sowohl Bug-Bounty-Programme als auch Code-Audits spielen, wenn sie strategisch eingesetzt werden, eine wichtige Rolle bei der proaktiven Verwaltung und Verbesserung der Sicherheitslage von Software.


Der STF-Ansatz: Resilient, reaktionsfähig und verantwortungsbewusst

Basierend auf dem Feedback von Expert*innen und FOSS-Infrastrukturprojekten sowie aktuelle Forschungsergebnissen hat der STF einen holistischen und präventiven Ansatz entwickelt, um die Widerstandsfähigkeit von FOSS-Projekten gegenüber potenziellen Sicherheitslücken zu erhöhen. Durch die Reduzierung der technischen Schulden - zum Beispiel durch die Umstrukturierung des Codes, damit er leichter gewartet werden kann - trägt BRP dazu bei, dass die Maintainer*innen besser auf Bugs reagieren können. Die Verbesserung der Reaktions- und Lösungsfähigkeit der Maintainer*innen führt wiederum dazu, dass einfachere Bugs behoben bzw. zur Kenntnis genommen werden. So können Sicherheitsforscher*innen sich auf Schwachstellen konzentrieren können, die bisher durch Bounties und Audits schwieriger zu finden waren.

Hier ist ein Überblick über die aktuellen Bestandteile des Bug Resilience Programms.

Direkte Mitwirkung

Unsere Umsetzungspartnerin Neighbourhoodie Software GmbH unterstützt die teilnehmenden Projekte direkt mit verschiedenen Beiträgen, um bekannte Fehler zu beheben, die Dokumentation zu verbessern und technische Schulden zu reduzieren. Sehr oft wissen Maintainer*innen von FOSS-Projekten, dass bestimmte Teile der kritischen Technologien, an denen sie arbeiten, Schwachstellen oder Sicherheitsmängel enthalten. Die Maintainer*innen haben einfach noch nicht die Kapazität, sich damit zu befassen, oder können sie nur mit provisorischen Lösungen beheben. Außerdem häufen sich bei Softwareprojekten mit der Zeit technische Schulden an, was die Wartung der Software erschwert und mehr Möglichkeiten für Schwachstellen schafft. Nicht zuletzt können eine konsistente und fachgerechte Dokumentation und entsprechende Anleitungen dazu beitragen, die Qualität externer Beiträge zu verbessern und die Einstiegshürde für Mitwirkende zu senken, die Sicherheitsverbesserungen für FOSS-Projekte vorschlagen können.

Bug- und Fix-Bounty-Plattform

Wir arbeiten mit der YesWeHack-Plattform zusammen, um ausgewählten FOSS-Projekten Bounty-Programme zur Verfügung zu stellen, die Anreize für das Aufdecken von Sicherheitslücken im Code bieten und die Projekte für die Zeit entschädigen, die sie für die Behebung dieser Probleme aufwenden. YesWeHack unterstützt die Projekte dabei, den Kontakt zu Sicherheitsforscher*innen herzustellen. YesWeHack hilft auch bei der Erstpriorisierung und Überprüfung der von Forschenden eingereichten Schwachstellenberichte. Für jede korrekt gemeldete und behobene Schwachstelle bietet der STF den teilnehmenden Projekten eine „Fix“-Prämie.

Code Audits zur Reduzierung hochriskanter Schwachstellen

Durch eine Partnerschaft mit dem Open Source Technology Improvement Fund bietet der STF Sicherheitsüberprüfungen für häufig genutzte Softwarekomponenten an. Diese Softwarekomponenten benötigen einen hohen Sicherheitsstandard, um die Wahrscheinlichkeit unentdeckter Schwachstellen mit großer Wirkung und hohem Risiko in kritischen Infrastrukturen zu verringern. Sorgfältig durchgeführte Code Audits für kritische Open-Source-Software können den Maintainer*innen wertvolle Erkenntnisse liefern und ihnen helfen, die Sicherheitslage ihres Codes und ihrer Infrastruktur proaktiv zu evaluieren. Die Verbesserung von Tests und Codeabdeckung stärkt die Nachhaltigkeit und das Weiterbestehen von Projekten und versetzt Maintainer*innen in die Lage, Mängel zu beheben, bevor sie ausgenutzt werden.

Teilnehmende Projekte: cURL; Jackson; LLVM


Bug-Bounty-Studie

Zusätzlich zu diesen Aktivitäten hat der STF eine Studie in Auftrag gegeben, um die Chancen und Risiken zu untersuchen, die mit der Integration von Bug-Bounty-Programmen in Open-Source-Projekten mit kleinen Communitys verbunden sind. Dies wird dazu beitragen, einige der Annahmen in unserem Ansatz zu evaluieren und an eine bisher unerforschte Frage heranzugehen, da sich die meisten verfügbaren Studien über Bug-Bounty-Programme auf die Seite der Sicherheitsforscher:innen konzentrieren.

Zu diesem Zweck hat der STF Dr. Ryan Ellis, Associate Professor of Communication Studies an der Northeastern University, beauftragt, einen Bericht über die Wirksamkeit von Bug-Bounty-Programmen zu schreiben. Dr. Ellis ist spezialisiert auf Kommunikationsrecht, Infrastrukturpolitik und Cybersicherheit. Zu seinen Veröffentlichungen gehört "Letters, Power Lines, and Other Dangerous Things" (MIT Press, 2020), und er ist Mitherausgeber von "Rewired: Cybersecurity Governance" (Wiley, 2019).


Fragen

Die Antworten zu häufig gestellten Fragen haben wir auf die unten verlinkte Seite gesammelt, z.B.

  • „Welche Dienstleistungen werden im Rahmen des Bug Resilience Programm angeboten?“ und
  • „Wer kann sich für das Bug Resilience Program bewerben?“

Bug Resilience Programm FAQ