Abo
  • Services:
Anzeige
Stimmt der Quellcode mit dem Binärcode überein?
Stimmt der Quellcode mit dem Binärcode überein? (Bild: Hanno Böck/OpenSSL-Code)

Pakete zweimal bauen und vergleichen

Anzeige

Zurzeit testen die Debian-Entwickler auf einem Testserver, wie sehr sich Pakete unterscheiden, wenn sie zweimal hintereinander mit denselben Optionen gebaut werden. Die Pakete unterscheiden sich dabei in vielen Details, das häufigste Problem sind Timestamps, die in den verschiedensten Dateiformaten mitgespeichert werden. Dazu kommt die Reihenfolge von Dateien, aber auch subtile Probleme, etwa Compile-Prozesse, die je nach CPU-Auslastung zu anderen Ergebnissen kommen.

In den bisherigen Tests können bereits 81,7 Prozent der Debian-Pakete reproduzierbar gebaut werden. Das ist laut Holger Levsen schon ein großer Erfolg und war mit viel Arbeit verbunden. Doch der aktuelle Test hat einige Nachteile. So werden die Pakete immer auf derselben CPU und mit demselben Kernel gebaut. Ein künftig geplanter Test, in dem die Pakete auf unterschiedlichen Systemen gebaut werden, dürfte noch einige weitere Unterschiede zutage bringen. Statistiken über die Ergebnisse der Build-Prozesse können alle unter der URL reproducible.debian.net abgerufen werden.

Nichtdeterminismen können auch Privacy-Problem sein

Lunar erwähnte einige Beispiele, bei denen die in Dateien gespeicherten Informationen durchaus ein Privacy-Problem darstellen können. Dazu gehören beispielsweise Hostnamen, Benutzernamen, Pfade des Build-Prozesses oder Spracheinstellungen des Systems, die auf die ein oder andere Art in einem späteren Paket landen können. Reproduzierbare Builds sind also nicht nur aus Sicherheitsgründen sinnvoll, sie können auch zum Schutz der Privatsphäre der Entwickler beitragen.

Einige besonders exotische und unerwartete Beispiele kamen in der folgenden Diskussion ebenfalls zur Sprache. So speichern OGG-Dateien eine zufällig generierte Seriennummer, ein Kommentar aus dem Publikum merkte an, dass der GCC die Wahl bestimmter Hash-Funktionen von der aktuellen CPU abhängig macht. Die Krypto-Bibliothek NaCl nutzt automatische Benchmarks, um von verschiedenen Implementierungen eines Algorithmus den schnellsten auszuwählen. Laut Lunar sind es überraschenderweise in vielen Fällen nicht die kompilierten Dateien selbst, die die meisten Probleme machen, sondern die mitgelieferte Dokumentation, die in verschiedensten Dateiformaten ausgeliefert wird.

Das nächste Ziel des Projekts: Die übernächste Debian-Version Stretch soll reproduzierbare Build-Prozesse integrieren. Da einige Debian-Entwickler im Saal waren, fragte Levsen sie, ob irgendjemand dagegen sei, dies in Stretch zu implementieren. Niemand meldete sich. Levsen und Lunar riefen die Anwesenden dazu auf, sich an der weiteren Entwicklung von reproduzierbaren Builds zu beteiligen. Dafür gibt es Mailinglisten, einen IRC-Chat #debian-reproducible im OFTC-Netz und eine Wiki-Seite.

Binärtransparenz und Cross-Compiles

Für die Zukunft gibt es noch einige weitere Pläne, um das Vertrauen zusätzlich zu stärken. Der Debian-Entwickler Daniel Kahn Gillmore arbeitet an einem System zur Binärtransparenz. Die Idee dabei ist es, in einem öffentlich verifizierbaren Log, das ähnlich wie die Bitcoin-Blockchain oder Certificate Transparency funktioniert, Checksummen aller Binärpakete abzuspeichern. Damit könnte garantiert werden, dass alle Nutzer eines Systems dieselben Binärpakete erhalten. Ein weiteres Ziel: die Reproduzierbarkeit über Cross-Compiles auf unterschiedlichen Architekturen. Dadurch wäre gewährleistet, dass selbst eine Backdoor im Binärcode des Compilers nicht mehr unentdeckt bleiben könnte.

Neben Debian haben auch Entwickler bei Fedora und bei NixOS Interesse an reproduzierbaren Build-Prozessen. Die Debian-Entwickler hoffen besonders auf die Hilfe von Fedora, doch offenbar gab es dort außer einem Blogbeitrag bislang keine weitere Aktivität in dieser Richtung. Opensuse liefert immerhin schon ein Tool namens build-compare mit, welches Unterschiede zwischen verschiedenen Builds anzeigt. Die Hoffnung von Holger Levsen und Lunar: Künftig sollten reproduzierbare Builds der Normalfall werden. Ein großes Ziel - für mehr Sicherheit und Vertrauenswürdigkeit in die Software, die wir tagtäglich benutzen.

 Softwaresicherheit: Vertrauen durch reproduzierbare Build-Prozesse

eye home zur Startseite
EQuatschBob 04. Feb 2015

Sind sie meines Wissens nach nicht. Die Leute von F-Droid.org arbeiten wohl daran, sind...

EQuatschBob 04. Feb 2015

Sobald die FOSDEM-Leute die Videos ins Netz stellen, siehst Du was Holger und Lunar alles...

EQuatschBob 04. Feb 2015

Reproducible Builds schaffen definitiv keine "absolute Sicherheit". Aber das Erstellen...

MarioWario 02. Feb 2015

Nicht ohne Grund die größte und wichtigste Linux-Distribution, die haben es wirklich...



Anzeige

Stellenmarkt
  1. INTENSE AG, Würzburg, Köln (Home-Office)
  2. ARRK ENGINEERING, München
  3. Robert Bosch GmbH, Berlin
  4. Fresenius Kabi Deutschland GmbH, Oberursel


Anzeige
Spiele-Angebote
  1. 17,99€
  2. 19,99€ - Release 19.10.
  3. 3,99€

Folgen Sie uns
       


  1. Fahrdienst

    London stoppt Uber, Protest wächst

  2. Facebook

    Mark Zuckerberg lenkt im Streit mit Investoren ein

  3. Merged-Reality-Headset

    Intel stellt Project Alloy ein

  4. Teardown

    Glasrückseite des iPhone 8 kann zum Problem werden

  5. E-Mail

    Adobe veröffentlicht versehentlich privaten PGP-Key im Blog

  6. Die Woche im Video

    Schwachstellen, wohin man schaut

  7. UAV

    Matternet startet Drohnenlieferdienst in der Schweiz

  8. Joint Venture

    Microsoft und Facebook verlegen Seekabel mit 160 Terabit/s

  9. Remote Forensics

    BKA kann eigenen Staatstrojaner nicht einsetzen

  10. Datenbank

    Börsengang von MongoDB soll 100 Millionen US-Dollar bringen



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Optionsbleed: Apache-Webserver blutet
Optionsbleed
Apache-Webserver blutet
  1. Apache-Sicherheitslücke Optionsbleed bereits 2014 entdeckt und übersehen
  2. Open Source Projekt Oracle will Java EE abgeben

Lenovo Thinkstation P320 Tiny im Test: Viel Leistung in der Zigarrenschachtel
Lenovo Thinkstation P320 Tiny im Test
Viel Leistung in der Zigarrenschachtel
  1. Adware Lenovo zahlt Millionenstrafe wegen Superfish
  2. Lenovo Smartphone- und Servergeschäft sorgen für Verlust
  3. Lenovo Patent beschreibt selbstheilendes Smartphone-Display

Wireless Qi: Wie die Ikealampe das iPhone lädt
Wireless Qi
Wie die Ikealampe das iPhone lädt
  1. Noch kein Standard Proprietäre Airpower-Matte für mehrere Apple-Geräte

  1. Re: Endlich remove für Streams

    Das... | 21:44

  2. Re: Der starke Kleber

    ArcherV | 21:44

  3. Re: Vodafone ist schlimm - Unitymedia funktioniert

    Silberfan | 21:37

  4. Re: Typich das Veralten der Massen

    violator | 21:19

  5. Re: wie kommt ihr darauf, dass QI bei anderen...

    Silberfan | 21:18


  1. 15:37

  2. 15:08

  3. 14:28

  4. 13:28

  5. 11:03

  6. 09:03

  7. 17:43

  8. 17:25


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel