Freie Software: Probleme bei Verifikation von Binärdateien

Die Binärdatei einer Software mit dem dazugehörigen Quellcode zu vergleichen ist schwieriger als eventuell vermutet. Selbst für Pakete von Linux-Distributionen sind das Rekompilieren und die anschließende Verifikation nicht einfach.

Artikel veröffentlicht am ,
Kontrolle und Vertrauen sind auch für Open-Source-Software notwendig.
Kontrolle und Vertrauen sind auch für Open-Source-Software notwendig. (Bild: Open Source Initiative/CC-BY 3.0)

Einer der Vorteile von freier Software ist die Möglichkeit, die eingesetzte Binärversion der Software mit dem korrespondierenden Quellcode zu vergleichen. Ein Rekompilieren des Codes sollte genügen, um eventuelle Unstimmigkeiten zwischen eigener und bereitgestellter Binärversion aufzudecken. Der Entwickler Jos van den Oever beschreibt jedoch in seinem Blog, dass diese vergleichsweise naive Idee selbst für die Pakete einiger Linux-Distributionen schwer umzusetzen sei.

Stellenmarkt
  1. IT-Systemadministrator*in (m/w/d)
    familie redlich AG Agentur für Marken und Kommunikation, Berlin
  2. Manager (m/w/d) Engineering Automatisierungstechnik
    CORVENTIS GmbH, Raum Friedrichshafen, Biberach a. d. R., Lindau, Wangen i. A.
Detailsuche

Denn die GPLv2 verlange zwar, sämtliche Skripte bereitzustellen, die für das Kompilieren notwendig sind, Angaben wie etwa zur Compiler-Version müssen aber nicht gemacht werden. Das, so van den Oever, mache die Überprüfung von Binärdatei und Quellcode sehr schwierig, denn unterschiedliche Compiler führen zu unterschiedlichen Binärdateien.

Pakete überprüfen?

Darüber hinaus sind die von Linux-Distributionen angebotenen Binärpakete sehr verschieden im Gegensatz zu einer einfachen, selbst kompilierten Datei. Wohl deshalb bieten die meisten Distributionen auch Quellpakete an, aus denen die Binärpakete selbst erstellt und gegebenenfalls überprüft werden können, was van den Oever versuchte.

Der Entwickler untersuchte beispielhaft für Debian, Fedora und Opensuse das Erstellen eines Pakets der Software Tar. Neben Unterschieden, die aus Zeitstempeln und Build-IDs entstanden, fand van den Oever auch einige Unterschiede, die nicht direkt zu erklären sind. Zwar belaufen sich die Unterschiede oft nur auf wenige Bytes, ob dies aber aus unterschiedlichen Build-Umgebungen resultiert, wie van den Oever vermutet, lässt sich derzeit nicht abschließend klären.

Golem Akademie
  1. Elastic Stack Fundamentals - Elasticsearch, Logstash, Kibana, Beats
    26.-28. Oktober 2021, online
  2. Linux-Systeme absichern und härten
    8.-10. November 2021, online
  3. Advanced Python - Fortgeschrittene Programmierthemen
    27.-28. Januar 2022, online
Weitere IT-Trainings

Um "Bit-perfekte Builds" zu erstellen, brauche es nur ein paar Veränderungen an den Werkzeugen, schreibt van den Oever, wie etwa die Dokumentation der Build-Umgebung. Sollte die Verifikation aber nicht funktionieren, bleibt nur das Vertrauen in den Dienst, der die Binärversionen anbietet, also meist die Distribution.

Doch selbst wenn dieses Vertrauen nicht vorliegt, schafft ein konsequent selbst kompiliertes System wie bei Gentoo oder Arch-Linux nicht unbedingt mehr Sicherheit. Denn auch dem Quellcode selbst muss jeder Nutzer vertrauen, worauf Unix-Pionier Ken Thompson in seinem Essay Reflections on Trusting Trust hinwies.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


__destruct() 12. Aug 2013

Mir ist diesbezüglich nichts bekannt, aber noch viel unklarer ist mir, wie du darauf...

Andre S 24. Jun 2013

...die Einstellung wird immer Paranoider. Sicher ist es wichtig aufzupassen aber das...

dudida 23. Jun 2013

Frag Microsoft.

hjp 22. Jun 2013

In Reflections on Trusting Trust geht es nicht darum, dass man dem Source-Code vertrauen...

tundracomp 22. Jun 2013

Mit ABS kann man sich aber Arch Linux selbst kompilieren, wenn man will...



Aktuell auf der Startseite von Golem.de
Geekbench & GFXBench
Erste Benchmarks zeigen starken Apple M1 Max

Das Apple Silicon schneidet gut ab: Der M1 Max legt sich tatsächlich mit einer Geforce RTX 3080 Mobile und den schnellsten Laptop-CPUs an.

Geekbench & GFXBench: Erste Benchmarks zeigen starken Apple M1 Max
Artikel
  1. Actionspiel: Dice präsentiert alle Specialists von Battlefield 2042
    Actionspiel
    Dice präsentiert alle Specialists von Battlefield 2042

    Zwei Assault mit unterschiedlicher Ausrichtung: Dice stellt weitere Spezialisten von Battlefield 2042 vor - und Änderungen nach der Beta.

  2. Windows 11: User wollen separate Fenster in der Taskleiste zurück
    Windows 11
    User wollen separate Fenster in der Taskleiste zurück

    Windows 11 gruppiert Instanzen einer App zusammen und streicht die Möglichkeit, sie separat anzuzeigen. Das gefällt der Community gar nicht.

  3. Sony, Nvidia, Apple: Der erste Uncharted-Trailer ist da
    Sony, Nvidia, Apple
    Der erste Uncharted-Trailer ist da

    Sonst noch was? Was am 21. Oktober 2021 neben den großen Meldungen sonst noch passiert ist, in aller Kürze.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • HP Herbst Sale bei NBB: Bis zu 500€ Rabatt auf Gaming-Notebooks, Monitore uvm. • Kingston RGB 32GB Kit 3200 116,90€ • LG OLED48A19LA 756,29€ • Finale des GP Anniversary Sales • Amazon Music 3 Monate gratis • Saturn Gutscheinheft: Direktabzüge und Zugaben [Werbung]
    •  /