Freie Software ist heute für die gesamte Informatikbranche lebenswichtig. Das heißt, im Prinzip sogar für alle Bereiche. Die Frage, wie sie erhalten werden kann, entwickelte sich allmählich zu einem Anlass zur Sorge, so dass der US-Kongress im Jahr 2023 einen Gesetzesentwurf vorlegte: den „Securing Open Source Software Act“. Der Weg von Open-Source-Software von einem Drucker zum US-Kongress: ein Rückblick auf eine faszinierende Geschichte.
Der „Securing Open Source Software Act“ des US-Kongresses schlägt gleich in den ersten Zeilen einen klaren Ton an: „Freie Software fördert die technologische Entwicklung und ist ein integraler Bestandteil der globalen Cybersicherheit“. „Ein sicheres, gesundes, dynamisches und resilientes Ökosystem für freie Software ist entscheidend für die Gewährleistung der nationalen Sicherheit und der wirtschaftlichen Vitalität der Vereinigten Staaten.“. „Freie Software gehört zu den Grundlagen der digitalen Infrastruktur, die ein freies und offenes Internet fördert.“ „Ohne eine solche freie Software würde das Internet, wie wir es heute kennen, nicht existieren und hätte auch nie existieren können…“, fasst Yvan Vanhullebus, Technical Leader bei Stormshield, zusammen. Aber die Begriffe „Freie Software“ und „Open Source“ zu vermischen, kann für viele verwirrend sein.
Ohne eine solche freie Software würde das Internet, wie wir es heute kennen, nicht existieren und hätte auch nie existieren können…
Yvan Vanhullebus, Technical Leader Stormshield
Ursprünge von Open Source
Ursprünglich verwendete man den Begriff free software, also „Freie Software“. Das zugrunde liegende Konzept entstand in den 1980er Jahren in den USA unter der Führung von Richard Stallman. Obwohl er ursprünglich nur ein Dokument ausdrucken wollte, ging dieser leidenschaftliche Verfechter der Hacker-Kultur als derjenige in die Geschichte ein, der sich damals der Privatisierung von Software und der Entstehung immer restriktiverer Gesetze für Benutzer widersetzte – beispielsweise wurde im Jahr 1980 der Computer Software Copyright Act verabschiedet.
Vor diesem Hintergrund gründete Richard Stallman 1985 die Free Software Foundation, eine gemeinnützige Organisation, welche die vier Grundpfeiler für freie Software aufstellte: die Freiheit, das Programm zu jedem Zweck auszuführen, die Freiheit, die Funktionsweise eines Programms zu analysieren und es an die eigenen Bedürfnisse anzupassen, die Freiheit, Kopien weiterzuverbreiten, und die Freiheit, das Programm zu verbessern und diese Verbesserungen zu veröffentlichen, damit alle Benutzer davon profitieren können. Im Hinblick auf die möglichen Interpretationen des Begriffs „free“ (frei) schrieb Richard Stallman in seiner autorisierten Biografie: „Don't think free as in free beer; think free as in free speech.“ (Denken Sie beim Begriff „frei“ nicht an Freibier, sondern an Meinungsfreiheit.) Es stehen also nicht die Kosten, sondern die Anwendungsfreiheit im Vordergrund. Doch dieser ethische Ansatz des Konzepts ist alles andere als unumstritten: Um die Frage der sprachlichen Mehrdeutigkeit endgültig zu klären, prägte die amerikanische Wissenschaftlerin Christine Peterson, die damalige leitende Direktorin des Foresight Institute, im Jahr 1998 den Begriff „Open Source“. Dies war eine notwendige lexikalische Weiterentwicklung, die sie in einer langen, spannenden Geschichte ausführlich beschrieb. Zusammen mit Persönlichkeiten wie Eric Raymond und Bruce Perens beteiligte sie sich noch im gleichen Jahr an der Gründung der Open Source Initiative (OSI). Seitdem ersetzt der neue Begriff Open-Source-Software die ursprüngliche Bezeichnung free software.
Denken Sie beim Begriff „frei“ nicht an Freibier, sondern an Meinungsfreiheit.
Richard Stallman, Programmierer und Aktivist für freie Software
Worin unterscheiden sich „freier Software“ und „Open-Source-Software“? Dies ist eine Frage der Definition: „Freie Software“ bezieht sich auf die Möglichkeit, Software zu nutzen, zu analysieren, zu modifizieren oder sogar zu vervielfältigen, während der Begriff „Open-Source-Software“ einen Entwicklungsansatz beschreibt, bei dem der Quellcode vollständig oder teilweise wiederverwendet wird. Open-Source-Projekte werden in der Regel von einem oder mehreren sogenannten „Maintainern“ beaufsichtigt. Es werden jedoch auch externe Beiträge wie das Hinzufügen neuer Funktionen, das Melden von Fehlern (und deren Behebung) oder die Verbesserung der Sicherheit gefördert. Anders ausgedrückt: Open Source ist eine Bewegung für kollaborative Softwareentwicklung.
Open Source: Entwicklung hin zur gemeinschaftlichen Zusammenarbeit
Um sicherzustellen, dass die Software offen und frei bleibt, war es wichtig, einen rechtlichen Rahmen zu definieren: Aus diesem Grund sind verschiedene Nutzungslizenzen entstanden. Die bekannteste ist die GNU GPL (General Public License), deren erste Version 1989 auf der Basis der von Richard Stallman erdachten vier Grundpfeiler entstand, mit denen die rechtlichen Bedingungen für die Verbreitung freier Software im Rahmen des GNU-Projekts festgelegt werden sollten. Es folgten weitere Lizenzen wie Apache 2.0, MIT, BSD oder Creative Common, die jeweils eigene Stufen der Freigabe und Wiederverwendung von Code beinhalten.
Die Entwicklung dieser Lizenzen ermöglichte die Entstehung zahlreicher Projekte, wie zum Beispiel die Einführung des Linux-Kernels im Jahr 1991 oder die Open-Source-Lizenzierung des Netscape Navigators im Jahr 1998 (der als Grundlage für die spätere Entwicklung der Mozilla-Suite diente). Im Jahr 2001 wurde Wikipedia zu einem der bekanntesten Projekte der Open-Source-Bewegung, mit dem Ziel, das kollektive Wissen zu nutzen, um die größte Wissensbibliothek des Internets zu schaffen. In der Folge zeugten die Einführung von Android durch Google im Jahr 2008 sowie die Gründung von GitHub im selben Jahr von der zunehmenden Integration von Open Source in die Technologien für Verbraucher und die Infrastruktur für die Softwareentwicklung. Der Höhepunkt dieser zumindest vordergründigen Integration wurde 2014 durch die Rede von Satya Nadella, CEO von Microsoft erreicht, der erklärte: „Microsoft liebt Linux“. In der Open-Source-Gemeinschaft erinnern sich jedoch viele noch an die Worte seines Vorgängers Steve Ballmer, der Open Source als „Krebs, der im Hinblick auf geistiges Eigentum alles befällt, was er berührt“ kategorisierte.
Aus wirtschaftlicher Sicht ist Open Source ein besonderes Geschäftsmodell, denn wenn ein Projekt Open Source ist, können Varianten davon erstellt werden, die sich der Kontrolle des ursprünglichen Entwicklungsunternehmens entziehen. Das Geschäftsmodell dreht sich hauptsächlich um Dienstleistungen oder auch um die Wartung (alles bis auf Lizenzen). Das finanzielle Interesse von Entwicklungsunternehmen liegt folglich eher darin, Bausteine oder Anwendungen in Open Source zu übernehmen, vorausgesetzt, sie kennen die Einschränkungen jeder Lizenz, wie David Gueluy, R&D Manager und Technical Advisor bei Stormshield, betont: „Ein wichtiger Aspekt der GPL-Lizenz ist, dass sie die Weiterverbreitung von Änderungen am Quellcode fordert. Diese Verpflichtung hat zu komplexen rechtlichen Situationen für einige Publisher geführt, die mit Forderungen nach Veröffentlichung ihres gesamten Quellcodes konfrontiert wurden – selbst wenn es nur um ein winziges Stück GPL-Code ging, das in ein sehr großes Programm integriert wurde…“ Im Gegensatz dazu bieten Lizenzen wie BSD, MIT oder Apache mehr Flexibilität und erlauben es Unternehmen, den Code zu ändern und zu verwenden, ohne die Verpflichtung, die Änderungen öffentlich bereitzustellen. Dies steigert die Attraktivität der Nutzung und Entwicklung von Open-Source-Projekten für Unternehmen – das schlägt sich auch in Statistiken von Microsoft nieder, denen zufolge 60% der in der Azure-Cloud gehosteten Images auf dem Linux-Kernel oder auf Open-Source-Software basieren. „Es bringt mich immer wieder zum Schmunzeln, wenn ich lese, dass immer mehr Projekte auf Open Source setzen oder dass Open Source an dieser oder jener Stelle eine herausragende Rolle spielt“, lacht Yvan Vanhullebus. „Ist das wirklich ein aktueller Trend, oder fällt es jetzt erst auf?“ Denn die Nutzung von Open Source ist ein Phänomen, das alle Bereiche erfasst, bis hin zur Konzeption und Entwicklung von Produkten für die Cybersicherheit.
Es bringt mich immer wieder zum Schmunzeln, wenn ich lese, dass immer mehr Projekte auf Open Source setzen oder dass Open Source an dieser oder jener Stelle eine herausragende Rolle spielt. Ist das wirklich ein aktueller Trend, oder fällt es jetzt erst auf?
Yvan Vanhullebus, Technical Leader Stormshield
Die Bedeutung sicherer offener Ökosysteme
Wie immer findet man auch bei Open Source Befürworter und Kritiker. Unter den Kritikern von Open Source werden verschiedene Themen diskutiert: Die erste Debatte, die nun schon dreißig Jahre zurückliegt, drehte sich um die Frage, ob der Open-Source-Ansatz selbst funktionieren kann. „Von Anfang an und bei den ersten Projekten konnte diese Frage beantwortet und diese Debatte ziemlich schnell entschieden werden“, erläutert Yvan Vanhullebus. „Anknüpfend daran wechselte man zur nächsten Frage: Sollte die Nutzung von Open-Source-Tools nur langhaarigen Nerds mit Brille vorbehalten sein?“ Diese zweite Debatte dauert je nach Milieu und Branche zwar immer noch an, ist jedoch mit der Annäherung von Open Source und UX deutlich abgeflaut. Das dritte Streitthema bezieht sich schließlich speziell auf die Cyberwelt: Kann ein Cybersicherheitsprodukt, das auf Open-Source-Bausteine zurückgreift, zuverlässig sein? Im Mittelpunkt steht die Befürchtung, dass ein Cyberkrimineller eine Schwachstelle entdeckt mit der Absicht sie auszunutzen, wie es bei Schwachstellen wie Heartbleed im OpenSSL-Projekt, die 2012 entdeckt wurde, oder Log4J, die 2021 entdeckt wurde, der Fall ist. Ein weiteres Argument der Kritiker von Open Source bezieht sich auf die Möglichkeit, dass böswillige Akteure zu einem Open-Source-Projekt beitragen können, indem sie Schwachstellen einbauen, die wie einfache Bugs aussehen könnten... In einem Bericht aus dem Jahr 2020 argumentierte GitHub, dass 17% der Softwarefehler auf der Plattform von böswilligen Akteuren absichtlich im Code platziert worden waren. Die Kompromittierung der XZ-Bibliothek, eines grundlegenden Bausteins, der in der Linux-Umgebung verwendet wird, trug einige Jahre später zu dieser Statistik bei. Ende März 2024 gab ein Microsoft-Mitarbeiter eine Warnung an die Open-Source-Gemeinschaft heraus, nachdem er auf eine Anomalie in XZ-Paketen gestoßen war. Dieser schrittweise Angriff, der seither unter CVE-2024-3094 geführt wird, vermischt Techniken des Social Engineering mit einer langfristigen Vorbereitung (zwischen Monaten und Jahren), um schrittweise und unauffällig eine Backdoor einzuschleusen. Ein potenzieller groß angelegter Supply-Chain-Angriff, der gerade noch rechtzeitig verhindert werden konnte...
Aber Open Source hat auch (und vor allem) Befürworter: Sie erläutern ihrerseits, dass Open Source aufgrund seiner Transparenz und der gemeinschaftlichen Zusammenarbeit die Sicherheit steigert. Dies liegt darin begründet, dass der Zugang zum Quellcode es einfacher macht, Schwachstellen zu erkennen, und sie folglich schneller behoben werden können als bei einem „Black-Box“-Ansatz, bei dem die Sichtbarkeit eingeschränkt ist. David Gueluy stimmt diesem Punkt zu: „Was am Sicherheitsaspekt von Open-Source-Projekten bemerkenswert ist, ist die Idee, dass man die Software selbst überprüfen kann: Man kann selbst verifizieren, dass der Code nichts Ungewöhnliches und keine Hintertüren enthält – oder dass man Probleme zumindest selbst beheben kann, falls doch welche auftreten sollten.“
Was am Sicherheitsaspekt von Open-Source-Projekten bemerkenswert ist, ist die Idee, dass man die Software selbst überprüfen kann: Man kann selbst verifizieren, dass der Code nichts Ungewöhnliches und keine Hintertüren enthält – oder dass man Probleme zumindest selbst beheben kann, falls doch welche auftreten sollten.
David Gueluy, R&D Manager und Technical Advisor Stormshield
Und genau das ist bei Heartbleed, Log4J und der XZ-Kompromittierung der Fall: Die Reaktionsfähigkeit und die Zusammenarbeit der Open-Source-Gemeinschaft waren entscheidend für die Lösung dieser Probleme. Anzumerken ist, dass es trotz des Lärms, der um die XZ-Kompromittierung gemacht wurde, wichtig ist, darauf hinzuweisen, dass es sich dabei weder um ein neues Phänomen noch um eine Besonderheit der Open-Source-Welt handelt. Ende 2020 war die Malware Sunburst in die Entwicklungskette der Orion-Software des Unternehmens SolarWinds eingeschleust worden. Insgesamt sollen weltweit mehr als 18.000 Unternehmen und Institutionen von diesem Angriff betroffen gewesen sein. Eine Episode, die verdeutlicht, dass auch Lösungen, die nicht Open Source sind, anfällig für Schwachstellen bleiben.
Dieser Open-Source-Ansatz wird auch von öffentlichen Stellen unterstützt, wie z. B. der ANSSI in Frankreich. Das französische Pendant zum BSI ist an zahlreichen Open-Source-Projekten beteiligt, sei es durch Beiträge ihrer Mitarbeiter oder durch die Veröffentlichung mehrerer Tools. Diese Investition „entspricht einer echten Herausforderung für die Sicherheit und Souveränität, um Gemeingüter zu schützen und zukunftsweisende Technologien und Lösungen zu fördern“. Diese Vorgehensweise unterstützt aktiv die Entwicklung von freier Software wie Linux, der Debian-Distribution oder der Suricata-Software. Denn an Open-Source-Projekten im Bereich der Cybersicherheit mangelt es nicht. David Gueluy erwähnt Vault, „eine der Lösungen des Open-Source-Unternehmens HashiCorp, welche die sichere Speicherung von Secrets ermöglicht“. Weitere Beispiele sind KeePass (ein Passwortmanager), TheHive (eine Incident-Response-Plattform), Metasploit Framework (ein Tool für Penetrationstests) und MISP (eine Plattform für den Austausch von Informationen über Cyberbedrohungen) – all diese Projekte beweisen den Einfluss von Open Source hinsichtlich der Entwicklung robuster Cybersicherheitslösungen. OpenSSL, das im Open Source Security Index unter die Top 10 gewählt wurde, ist zum Beispiel eines der wichtigsten Projekte für sichere Kommunikation, das sowohl in kommerziellen Produkten als auch in Open-Source-Lösungen eingesetzt wird. „Der Vorteil von OpenSSL für Unternehmen besteht darin, dass sie Zugang zu einer bereits bewährten und von der Community weitgehend bestätigten Krypto-Bibliothek erhalten, so dass sie nicht bei Null anfangen müssen“, erklärt David Gueluy. Und genau hier liegt der Kern des Problems: Ein neues Produkt zu entwickeln, das nicht auf Open-Source-Technologie basiert, wäre – abgesehen von Nischenprodukten – illusorisch, da es erhebliche Investitionen in die (Weiter-) Entwicklung bereits verfügbarer Bausteine erfordern würde, deren Aufbau Jahre gedauert hat. Und erst wenn man dies verinnerlicht hat, kann man einen positiven Kreislauf in Gang setzen, indem man sicherstellt, dass die Versionen der Open-Source-Bausteine auf potenzielle Schwachstellen hin überprüft werden, indem man bei der Entdeckung potenzieller Schwachstellen schnell Patches veröffentlicht und indem man zu Projekten beiträgt (Patches, Funktionen, Finanzierung usw.).
So erweist sich Open Source mit seinem auf Transparenz und Zusammenarbeit basierenden Ansatz als treibende Kraft für Innovationen in Bezug auf Cybersicherheit. Besonderes Augenmerk sollte dabei jedoch auf die neue rechtliche Herausforderung durch das europäische Gesetz zur Cyber-Resilienz (Cyber Resilience Act, CRA) gelegt werden, das 2024 in Kraft treten soll. Dieses Gesetz zielt darauf ab, Entwickler zu einer Haftungsübernahme für Sicherheitsmängel im Code zu verpflichten. Dies ist notwendig, um den Black-Box-Ansatz zu bekämpfen, aber die Gemeinschaft ist noch nicht vollständig zufrieden gestellt… Fortsetzung folgt.