Sicherheitsmodell

Die Sicherheitsarchitektur beruht auf Modellen, die bei Debian, The Update Framework und anderen erprobt sind:

Obwohl das aktuelle Setup bereits eine solide Plattform ist, gibt es eine Reihe von Verbesserungen, die sinnvoll sind:

Um Angreifer, die im Besitz des Signierschlüssels für das App-Repository sind, abzuwehren, wird eine vertrauenswürdige Informationsquelle zum Gegenabgleich benötigt. Für reproduzierbare Builds gilt, dass jeder mit demselben Quelltext exakt dieselbe Binärdatei erzeugen wird. Bei Anbindung an ein Auditierungssystem ist es leicht in den Build-Prozess eingeschleuste Schadsoftware, wie XCodeGhost, abzufangen, leichter als im Quelltext. Reproduzierbare Builds machen es außerdem möglich, dass alle Builds einer Binärdateiausgabe genau denselben Hashwert besitzen. Jedes App-Repository kann dadurch nur aus dem Quellcode Apps erstellen und besitzt eine Quelle mit Überprüfungsdaten zu allen anderen App-Repositorys, die dieselbe App herstellen. Softwareherstellung aus dem Quellcode ist so preiswert geworden, dass viele Firmen, wie gitlab.com und Travis CI, kostenlose, automatisierte Build-Leistungen in der Cloud anbieten. Nachdem sämtliche F-Droid-Werkzeuge freie Programme sind und auf eine einfache Einrichtung ausgelegt sind, sind die Hürden für eine automatisierte Auditierung ziemlich niedrig. Menschen in verschiedenen Teilen der Welt mit unterschiedlichen Risikoprofilen können so Prüfserver betreiben, um weitergehende vertrauenswürdige Informationen bereitzustellen.

Die Dokumentation zum Sicherheitsmodell der Build-Server-Konfiguration und des Signiervorganges erfolgt separat.

Erstinstallationen

Die meisten Nutzer von F-Droid laden die APK von f-droid.org herunter und installieren sie. Dies ist ein potentieller Angriffsvektor, den vorinstallierte App-Stores nicht haben. Deshalb werden viele zusätzliche Sicherheitsvorkehrungen getroffen, um es so schwierig wie möglich zu machen, diesen Angriffsweg auszunutzen.

F-Droid als vorinstallierter App-Store

Wenn F-Droid in Android vorinstalliert ist, entweder als Teil des ROM oder durch Einspielen eines OTA Update, wird die Aktivierung der “Unbekannten Herkunft” nicht mehr benötigt, damit es funktioniert. Dies ist die bevorzugte Arbeitsmethode, so haben wir uns zum Ziel gesetzt, es Anwendern so einfach wie möglich zu machen, F-Droid auf diese Art zu betreiben. Die Installation des OTA-Paketes für F-Droid’s Rechteerweiterung hat das gleiche wenn nicht niedrigere Risikoprofil wie die Installation des Standard-“GApps”-Paketes, das viele Menschen zu Custom-ROMs flashen. So erhöht diese Bereitstellungsmethode nicht das Risiko für jene Anwender.

Darüberhinaus, macht F-Droid die Vorinstallation in ROM-Projekte so einfach wie möglich. In Replicant, CopperheadOS, LineageOS for microG und Fairphone Open ist es bereits integriert.

Schutz vor böswilligen Daten, die von Mitwirkenden erzeugt wurden

Die App-Beschreibungen werden von allen möglichen Personen eingereicht und können auch aus dem Quell-Repository der App entnommen werden. Diese Daten werden schließlich über f-droid.org an den Android-Client oder den Browser des Benutzers übermittelt.

  • der Android-Client führt niemals CSS, Javascript oder gefährliches HTML Tags aus, da es HTML anzeigt via [android.text.Html.fromHtml()]](https://gitlab.com/fdroid/fdroidclient/blob/1.3.1/app/src/main/java/org/fdroid/fdroid/views/AppDetailsRecyclerViewAdapter.java#L441) mit deaktiviertem Laden von Bilddern
  • die f-droid.org Webseite schützt vor bösartiger und CSS/HTML/Javascript-Injektion mit einer strikten HTTP Inhaltssicherheitsrichtlinie.
  • Repomaker filtert die Texte durch Mozillas Bleiche und hat eine gute HTTP Inhaltssicherheitsrichtlinie.

Sicherheitsaudits

  1. Es wurde ein kurzes, informelles Sicherheitsaudit (archiviert) im Jahr 2013 durch den damaligen Hochschulabsolventen Daniel McCarney, auch bekannt unter pd0x, durchgeführt.

  2. Das erste, von Open Tech Fund finanzierte “Bazaar”-Projekt schloss ein externes öffentliches Audit von Cure53 ein

  3. Das zweite, von Open Tech Fund finanzierte “Bazaar2”-Projekt schloss ein externes öffentliches Audit von Radically Open Security ein