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. Bertrandt Services GmbH, Nürnberg
  2. Deutsche Telekom AG, Bonn, Darmstadt, Berlin
  3. Allianz Deutschland AG, Unterföhring
  4. Polizeipräsidium Oberbayern Süd, Rosenheim


Anzeige
Blu-ray-Angebote
  1. (u. a. Reign, Person of Interest, Gossip Girl, The Clone Wars)
  2. 29,99€ (Vorbesteller-Preisgarantie)

Folgen Sie uns
       


  1. Sledgehammer Games

    Call of Duty WWII spielt wieder im Zweiten Weltkrieg

  2. Mobilfunk

    Patentverwerter klagt gegen Apple und Mobilfunkanbieter

  3. Privatsphäre

    Bildungsrechner spionieren Schüler aus

  4. Raumfahrt

    Chinesischer Raumfrachter Tanzhou 1 dockt an Raumstation an

  5. Die Woche im Video

    Kein Saft, kein Wumms, keine Argumente

  6. Windows 7 und 8

    Github-Nutzer schafft Freischaltung von neuen CPUs

  7. Whitelist umgehen

    Node-Server im Nvidia-Treiber ermöglicht Malware-Ausführung

  8. Easy S und Easy M

    Vodafone stellt günstige Einsteigertarife ohne LTE vor

  9. UP2718Q

    Dell verkauft HDR10-Monitor ab Mai 2017

  10. Datenschutzreform

    EU-Kommission lehnt deutschen Sonderweg ab



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Radeon RX 580 und RX 570 im Test: AMDs Grafikkarten sind schneller und sparsamer
Radeon RX 580 und RX 570 im Test
AMDs Grafikkarten sind schneller und sparsamer
  1. Grafikkarten AMD bringt vier neue alte Radeons für Komplett-PCs
  2. Grafikkarten AMD stellt Radeon RX 560 und Radeon RX 550 vor
  3. Grafikkarte AMDs Radeon RX 580 nutzt einen 8-Pol-Stromanschluss

Galaxy S8 vs. LG G6: Duell der Pflichterfüller
Galaxy S8 vs. LG G6
Duell der Pflichterfüller
  1. Smartphones Es wird eine spezielle Microsoft Edition des Galaxy S8 geben
  2. Galaxy S8 und S8+ im Kurztest Samsung setzt auf langgezogenes Display und Bixby
  3. Smartphones Samsungs Galaxy S8 könnte teuer werden

Fire TV Stick 2 im Test: Der Stick macht den normalen Fire TV (fast) überflüssig
Fire TV Stick 2 im Test
Der Stick macht den normalen Fire TV (fast) überflüssig
  1. Streaming Amazon bringt Alexa auch auf ältere Fire-TV-Geräte
  2. Streaming Amazon plant Fire TV mit 4K- und HDR-Unterstützung
  3. Fire TV Stick 2 mit Alexa im Hands on Amazons attraktiver Einstieg in die Streaming-Welt

  1. Windows XP Kumpel

    Crass Spektakel | 11:47

  2. Ampera (ohne e) ist das bessere Auto

    Icestorm | 11:42

  3. Re: Volldepp des Monats

    flike | 11:37

  4. 32 Kilobit pro Sekunde

    AciidAciid | 11:37

  5. Warum sind Akkus eigentlich so teuer?

    tpk | 11:31


  1. 11:55

  2. 15:19

  3. 13:40

  4. 11:00

  5. 09:03

  6. 18:01

  7. 17:08

  8. 16:43


  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