Antworten:
Der Inhalt der Spiegel wird direkt oder indirekt mit PGP-Schlüsseln signiert. Beginnend an der "Wurzel" einer Debian-Distribution:
Release
, signiert mit einer getrennten Signatur in Release.gpg
, enthält die Hashes (MD5, SHA1, SHA256) aller Paketindizes und Installer-Hashes ( InRelease
kombiniert jetzt beide);binary-amd64
) enthält die Hashwerte (MD5 und SHA256) der Pakete.Die Hashes und Signaturen werden von Tools überprüft, z. B. apt-get
von PGP-Schlüsseln, die auf dem System gespeichert sind (verwaltet von apt-key
). Solange das empfangende System einwandfrei ist, kann standardmäßig kein Paket aus den Debian-Archiven installiert werden, wenn es nicht (indirekt) vom Archiv-PGP-Schlüssel signiert wurde. Eindringlinge auf den Spiegeln könnten keine Binärdateien ersetzen, wenn sie nicht auch die Kontrolle über den entsprechenden PGP-Schlüssel hätten.
Dies bedeutet, dass eine Kompromittierung des Archivs nicht ausreicht, um Endbenutzersysteme tatsächlich zu kompromittieren. Sie müssten auch einen PGP-Schlüssel kompromittieren, dem diese Systeme bereits vertrauen. (Eine Folge davon ist, dass das Hinzufügen eines Schlüssels zu einem Debian-System nicht leicht genommen werden sollte.) Damit wird Ihre erste Frage in gewissem Maße beantwortet, da die Sicherheit des Archivs nicht so wichtig ist. Trotzdem werden die kritischen Systeme (in denen das Signieren stattfindet) streng überwacht und überwacht, und nur sehr wenige Personen haben Zugriff darauf.
Etwas mehr Aufwand besteht darin, sicherzustellen, dass die Pakete "tatsächlich diejenigen sind, von denen die Betreuer glauben, dass sie sie sind". Dies ist der Weg, den ein Paket einschlägt:
Wenn der Betreuer Binärdateien zusammen mit der Paketquelle hochlädt, werden diese Dateien (vorerst) bereitgestellt. Da das Hochladen von Binärdateien jetzt optional ist, werden sie immer häufiger übersprungen, und schließlich werden hochgeladene Binärdateien gelöscht. (Dies war in Ubuntu schon immer der Fall.) Ob die anderen Binärdateien den Erwartungen des Betreuers entsprechen, hängt vom erstellten Netzwerk ab. Daher sind Buildds auch kritische Systeme, die unter strenger Aufsicht und mit wenig menschlichem Zugang stehen. Da alle Artefakte signiert sind, ist es immer möglich, die Integrität der Dateien zu überprüfen: zuerst anhand des Schlüssels des Betreuers, dann anhand der Schlüssel der Buildds und schließlich anhand des Schlüssels des Archivs.
Wie Plugwash hervorhebt , sind die ursprünglichen Signaturen auf den Spiegeln nicht verfügbar, und jede DD kann eine fehlende Binärdatei hochladen. Originalsignaturen können aus den Debian-Devel-Changes- Archiven abgerufen werden .
Zusammenfassend lässt sich sagen , dass das aktuelle System zwar nicht perfekt ist, jedoch eine Rückverfolgbarkeit für alle Dateien bietet, die Sie von den Spiegeln herunterladen können. Es gibt eine Reihe von Bemühungen, um die Situation zu verbessern: reproduzierbare Builds (die eine unabhängige Überprüfung der Korrespondenz von Binärdateien mit der veröffentlichten Quelle ermöglichen), Löschen von vom Betreuer bereitgestellten Binärdateien ...
apt-get
überprüfen Pakete mithilfe dieser lokalen vorab eingebetteten Schlüssel, weil sie ihnen vertrauen?
debian-archive-keyring
Paket geliefert. apt-get
Überprüft Release
Dateien mit diesen Schlüsseln und Pakete mit den in den Dateien Release
und enthaltenen Hashes Packages
.