Open Source Gedanken

Open Source wird in der Datenschutzgemeinde immer als der heilige Gral verkauft.
Wenn es nicht Open Source ist, Finger weg.
Grundsätzlich stimme ich dem zu. Aber wie so oft, denke ich, auch hier sollte man genauer hinschauen. Die Punkte für mich heissen: Vertrauen, Nachvollziehbarkeit, Modifikation, Support.

Open Source heisst, jeder kann die Software, also den Code, der programmiert wurde, anschauen. Dadurch können Sie, aber meist eher Programmierer und Techies, sicherstellen, dass das Programm so funktioniert, wie versprochen. Sie saugt keine Daten ab ohne das das bekannt ist.
Das ist gut und richtig so.
Es gibt aber aus meiner Sicht mehrere Punkte, die zu bedenken sind:

  1. Vertrauen: Diese Einstellung bedeutet auch, dass ich keiner Software, die nicht Open Source ist, vertrauen kann. Dabei arbeiten wir alle mehrheitlich mit Software, die nicht Open Source ist und vertrauen ihr trotzdem. Windows 10, macOS, iOS, die Erweiterungen von Google zu Android, Office 365, SAP, Microsoft Teams, die Mail Applikationen des Betriebssystems, Outlook oder Apple Mail …
    Grundsätzlich halte ich eine Einstellung des Misstrauens für falsch. Bis das Vertrauen enttäuscht wird. Doch leider bin ich auch schon oft in der IT enttäuscht worden und daher fällt mir das immer schwerer. Open Source ist für mich nützlich, wenn ich wenige Produkte zur Auswahl habe und diese von Firmen angeboten werden, die meiner Meinung nach nicht vertrauenswürdig sind. Nehmen wir ein Beispiel: Bei den Messengern wird bei Threema kritisiert, dass es nicht Open Source ist. Mittlerweile ist der Client Open Source, aber der Server immer noch nicht. Daher sagen Hardcore Datenschutzenthusiasten: Finger weg. Wohingegen bei Signal alles Open Source ist. Dort ist der Server Code beim Schreiben dieses Eintrags online auf GitHub neun Monate alt. Die Releasezyklen sind meist schneller. Was hilft mir Open Source, wenn das online Einsehbare nicht das ist, was in der Produktion zum Einsatz kommt (vermutlich)? Wenn mich jedoch jemand bittet, WhatsApp zu vertrauen, habe ich ein Problem. Die Firma der WhatsApp gehört ist nicht vertrauenswürdig, hat so oft gelogen, dass ich dieser nicht vertrauen kann. Threema kann ich vertrauen, auch weil sie regelmässig externe Audits ihrer Software durchführen lassen. Wenn nicht Open Source, dann wenigstens regelmässige externe Audits. Wann waren die letzten Audits Ihrer Messenger-Software? Threema war in 2020. Was mich zum nächsten Punkt bringt.
  2. Nachvollziehbarkeit: Ich kann nicht überprüfen ob der Code das ist, was auch bei mir installiert ist. Bei Signal ist der Server Code neun Monate alt. Ist das der Code, den die auf Ihren Servern verwenden oder ist das schon neuerer? Ich kann das nicht nachvollziehen. Bei Software auf dem eigenen Computer kann ich das noch im Rahmen überprüfen (oder andere, die mehr Ahnung haben als ich). Ich kann den Source Code herunterladen, selber übersetzen und implementieren. Oder darauf vertrauen, dass das jemand gemacht hat und melden wird, wenn es zwischen Source Code und Binärversion einen Unterschied gibt. Aber auf dem Mobiltelefon? Nehme wir als Beispiel die Corona-Warn-App. Der Source Code ist einsehbar. Super. Aber wenn ich die Software bei mir auf dem iPhone installiere, dann weiss ich nicht, ob das der Code ist, den ich Online einsehen kann. Denn ich muss ihn aus dem Apple Store laden. Ob der Code online und der Code, der bei Apple eingereicht wurde, derselbe sind, weiss ich nicht. Dasselbe gilt für den Google Play Store im Android Phone. Nur geneigte User verwenden F-Droid oder andere Möglichkeiten. Weil es dafür weniger Bequemlichkeit gibt und die Handy-User sich mehrheitlich nicht mit solchen Themen herumschlagen wollen. Was uns wieder zu 1. bringt.
  3. Modifikation: Open Source hat den überragenden Vorteil, dass man den Code nicht nur ansehen und verifizieren kann, sondern Sie können ihn verändern. Damit kann eine Gruppe von Entwicklern Fehler beheben, neue Versionen bauen usw. Das bedeutet aber auch, dass jeder Kriminelle ihn verändern und auf seiner Webseite zum Download anbieten kann. Mit vielleicht mir nicht gefallenden Änderungen. Beispiel: Sie verwenden einen Passwortmanager, weil alle sagen, das müssen Sie. Sie folgen den Empfehlungen der Datenschutzgemeinde, dass es ein Open Source Passwortmanager sein muss. Das alles haben Sie auf Ihrem Rechner. Und fühlen sich gut dabei. Wenn ich an Ihre Passwörter herankommen will, dann muss ich Ihren Rechner hacken, das Passwort des Passwortmanagers in Erfahrung bringen und kann Ihnen dann schaden. So die landläufige Meinung. Es geht einfacher. Wenn ich Ihren Rechner gehackt habe, muss ich gar nicht ihren Passwortmanager hacken. Ich nehme den Source Code aus dem Internet und verändere ihn so, dass er mir alle Passwörter mailt, wenn Sie ihn das nächste Mal starten und sich anmelden. Diesen kopiere ich auf Ihren Rechner und ersetze damit die Originalversion. Sie rufen ihn auf, geben das Passwort ein und zack, habe ich alle Ihre Passwörter. Das geht nur mit Open Source so einfach.
  4. Support: Ich habe Open Source in meinem Leben. Und manchmal hat auch diese Bugs. In einem Fall hatte ich Probleme: An wen kann ich mich wenden um mir zu helfen. Da es eine „Community-Entwicklung“ ist, gibt es nicht eine Email, support@xxx.com sondern ich wurde auf Server verwiesen, auf denen der Source Code steht: GitHub.
    GitHub ist eine Webseite, die wohl die bekannteste und am meist verwendete Seite für Software-Entwickler ist. Hier tummeln sich Entwickler, keine Anwender. Hier finden Sie den Source Code, z.B. von der Corona-Warn-App, und können sich auch die Foren anschauen, in denen Fehler gemeldet und die Applikation diskutiert wird. Ich fand meinen Fehler nicht und wollte diesen daher melden. Dazu musste ich ein Konto einrichten. Nur um einen kleinen Fehler in einer Software zu melden. Und das auf einer Webseite, die Microsoft gehört. Auch keine Firma, die im Ruf steht, mit Daten sparsam umzugehen.

Daher ist es vielleicht manchmal einfacher, der Firma zu vertrauen, als der Aussage: Alles muss Open Source sein. Idealerweise gibt es Open Source, der regelmässig einen Audit erhält und immer belegt, dass alles so wie versprochen funktioniert. Und nicht täglich Meldungen über Datenabflüsse und Verletzungen der Privatsphäre.
Empfehlungen:

  • Laden Sie Open Source nur von vertrauenswürdigen Quellen.
  • Wenn möglich, schauen Sie, ob das Programm eine Checksum hat. Meist steht irgendwo Online:
    md5 Checksum: xxxxxxx.
    Das ist ein Code, der Ihnen die Möglichkeit gibt zu überprüfen, ob das Programm das ist, dass Sie wollen. Sie laden es herunter, geben dann in der Kommandozeile md5 (oder was auch immer Online steht) ein und den Dateinamen, der Datei, die Sie eben heruntergeladen habe und vergleichen die Ausgabe mit der Zeichenkette, die Online steht.
  • Wenn Sie Open Source verwenden, die für Sie sicherheitskritisch ist, z. B. der Passwortmanager, dann sollten Sie überlegen, ob dieses Programm nicht besser auf einem USB Stick platziert ist, mitsamt den Daten. Und diesen stecken Sie nur ein, wenn Sie ihn brauchen.