EXKLUSIV
18.10.2005, 20:34 Uhr
Ist Open-Source- Software sicherer als Closed-Source- Software?
Bei der Auswahl von Software in sicherheitskritischen Prozessen spielt das Vertrauen in den eingesetzten Code und dessen Qualität eine wesentliche Rolle.
Der Autor Marc Bütikofer ist Dipl. Informatik-Ing. ETH und Sicherheitsexperte bei der Ergon Informatik AG. marcbuetikofer@ergon.ch
Bei der Auswahl von Software in sicherheitskritischen Prozessen spielt das Vertrauen in den eingesetzten Code und dessen Qualität eine wesentliche Rolle. Dabei stellt sich immer wieder die Frage, ob Open-Source-Software generell sicherer ist als Closed-Source-Software.
Auf den ersten Blick glaubt man, die Frage eindeutig mit «ja» beantworten zu können. Open-Source-Software kann von beliebig vielen Personen nach Verwundbarkeiten durchsucht werden. Viele Augen erkennen mehr Probleme als wenige. Die Erfahrung zeigt, dass Verwundbarkeiten bei offenen Programmen schneller behoben werden als bei ihren geschlossenen Pendants. Zudem können Anwender Sicherheitslöcher notfalls selber stopfen und sind nicht der Reaktionszeit des Anbieters ausgeliefert.
Zu behaupten, Software sei sicherer, nur weil sie geheim ist, ist unsinnig. Dies hat Auguste Kerkhoffs schon 1883 postuliert. Diese Ansicht wird auch heute noch von den Experten für fast alle Anwendungen geteilt. Es ist jedoch nicht gewährleistet, dass Open-Source-Programme von der Community bezüglich Sicherheit auch tatsächlich so genau unter die Lupe genommen werden. Verwundbarkeiten zu finden ist eine sehr anspruchsvolle und zeitintensive Arbeit. Zudem sind viele Mitbeteiligte an Open-Source- Projekten vor allem an Funktionalität interessiert und in wenigen Fällen Sicherheitsspezialisten. Es ist nicht klar, ob solche Projekte schliesslich sicherer sind als kommerzielle Closed-Source-Programme, denen Geld für professionelle Reviews zur Verfügung stehen.
Auf den ersten Blick glaubt man, die Frage eindeutig mit «ja» beantworten zu können. Open-Source-Software kann von beliebig vielen Personen nach Verwundbarkeiten durchsucht werden. Viele Augen erkennen mehr Probleme als wenige. Die Erfahrung zeigt, dass Verwundbarkeiten bei offenen Programmen schneller behoben werden als bei ihren geschlossenen Pendants. Zudem können Anwender Sicherheitslöcher notfalls selber stopfen und sind nicht der Reaktionszeit des Anbieters ausgeliefert.
Zu behaupten, Software sei sicherer, nur weil sie geheim ist, ist unsinnig. Dies hat Auguste Kerkhoffs schon 1883 postuliert. Diese Ansicht wird auch heute noch von den Experten für fast alle Anwendungen geteilt. Es ist jedoch nicht gewährleistet, dass Open-Source-Programme von der Community bezüglich Sicherheit auch tatsächlich so genau unter die Lupe genommen werden. Verwundbarkeiten zu finden ist eine sehr anspruchsvolle und zeitintensive Arbeit. Zudem sind viele Mitbeteiligte an Open-Source- Projekten vor allem an Funktionalität interessiert und in wenigen Fällen Sicherheitsspezialisten. Es ist nicht klar, ob solche Projekte schliesslich sicherer sind als kommerzielle Closed-Source-Programme, denen Geld für professionelle Reviews zur Verfügung stehen.
Eine denkbare Mischform von Open- und Closed-Source- Software besteht darin, nur einzelne kritische Bausteine wie zum Beispiel kryptographische Primitiven zu öffnen oder diese vom Anwender selber wählen zu lassen. Die Java Cryptography Architecture (JCA) erlaubt dies beispielsweise. Es gibt auch die Möglichkeit, Software von unabhängigen Instanzen reviewen und zertifizieren zu lassen. Beide Ansätze haben zum Ziel, das Vertrauen in die Software zu erhöhen, ohne dabei den gesamten Quellcode offen legen zu müssen.
Das Offenlegen von Source-Code bietet sicher ein grosses Potenzial für sichere Software. Trotzdem ist Open-Source- Software nicht prinzipiell sicherer als Closed-Source-Software, nur weil der Code zugänglich ist. Mancher Benutzer wiegt sich deshalb in falscher Sicherheit.
Schliesslich hängt die Sicherheit nur zum Teil von der Code-Qualität selber ab. Saubere Prozesse und eine von Anfang an auf Sicherheit getrimmte Architektur spielen eine mindestens ebenso wichtige Rolle.
Das Offenlegen von Source-Code bietet sicher ein grosses Potenzial für sichere Software. Trotzdem ist Open-Source- Software nicht prinzipiell sicherer als Closed-Source-Software, nur weil der Code zugänglich ist. Mancher Benutzer wiegt sich deshalb in falscher Sicherheit.
Schliesslich hängt die Sicherheit nur zum Teil von der Code-Qualität selber ab. Saubere Prozesse und eine von Anfang an auf Sicherheit getrimmte Architektur spielen eine mindestens ebenso wichtige Rolle.