Product SiteDocumentation Site

6.5. Die Echtheit eines Paketes prüfen

Sicherheit ist für die Administratoren der Falcot Corp sehr wichtig. Dementsprechend müssen sie sicherstellen, dass sie ausschließlich Pakete installieren, die garantiert von Debian stammen und die unterwegs nicht verändert wurden. Ein Cracker könnte versuchen, Schadcode in ein ansonsten rechtmäßiges Paket einzuschleusen. Ein solches Paket, falls installiert, könnte alles tun, was der Cracker vorgesehen hat, einschließlich der Preisgabe von Passwörtern oder vertraulichen Informationen. Um dies zu verhindern, stellt Debian fälschungssichere Siegel bereit, die – zum Zeitpunkt der Installation – gewährleisten, dass ein Paket wirklich von seinem offiziellen Betreuer stammt und nicht durch einen Dritten verändert wurde.
Das Siegel arbeitet mit einer Kette kryptografischer Hashfunktionen und Signaturen. Die signierte Datei ist die von den Debian-Spiegelservern bereitgestellte Release-Datei. Sie enthält eine Liste der Packages-Dateien (inklusiver der komprimierten Ausgaben Packages.gz und Packages.bz2 und der inkrementellen Versionen) zusammen mit ihren MD5, SHA1 und SHA256 Hashes, mit denen sich sicherstellen lässt, dass die Dateien nicht verändert wurden. Diese Packages-Dateien enthalten eine Liste der auf dem Spiegelserver verfügbaren Pakete zusammen mit ihres Hashes, mit denen wiederum sichergestellt werden kann, dass auch die Pakete ihrerseits nicht verändert wurden.
Die vertrauenswürdigen Schlüssel werden mit dem Befehl apt-key aus dem Paket apt verwaltet. Dieses Programm pflegt einen Schlüsselbund mit öffentlichen GnuPG Schlüsseln, mit denen die Signaturen in den Release.gpg-Dateien der Spiegelserver geprüft werden können. Es kann dazu benutzt werden, von Hand neue Schlüssel hinzuzufügen (wenn nicht-offizielle Spiegelserver benötigt werden). Im Allgemeinen werden aber nur die offiziellen Debian Schlüssel benötigt. Diese Schlüssel werden automatisch durch das debian-archive-keyring-Paket aktuell gehalten (welches im Falle einer Installation oder Aktualisierung dann apt-key ausführt). Dennoch erfordert die Erstinstallation dieses speziellen Paketes Aufmerksamkeit: Auch wenn dieses Paket wie alle anderen signiert ist, kann dessen Signatur nicht von außen überprüft werden. Vorsichtige Administratoren sollten deshalb die Fingerabdrücke importierter Schlüssel überprüfen, bevor sie ihnen zur Installation neuer Pakete vertrauen:
# apt-key fingerprint
/etc/apt/trusted.gpg
--------------------
pub   1024D/F42584E6 2008-04-06 [expires: 2012-05-15]
    Key fingerprint = 7F5A 4445 4C72 4A65 CBCD  4FB1 4D27 0D06 F425 84E6
uid                  Lenny Stable Release Key <debian-release@lists.debian.org>

pub   4096R/55BE302B 2009-01-27 [expires: 2012-12-31]
    Key fingerprint = 150C 8614 919D 8446 E01E  83AF 9AA3 8DCD 55BE 302B
uid                  Debian Archive Automatic Signing Key (5.0/lenny) <ftpmaster@debian.org>

pub   2048R/6D849617 2009-01-24 [expires: 2013-01-23]
    Key fingerprint = F6CF DE30 6133 3CE2 A43F  DAF0 DFD9 9330 6D84 9617
uid                  Debian-Volatile Archive Automatic Signing Key (5.0/lenny)

pub   4096R/B98321F9 2010-08-07 [expires: 2017-08-05]
    Key fingerprint = 0E4E DE2C 7F3E 1FC0 D033  800E 6448 1591 B983 21F9
uid                  Squeeze Stable Release Key <debian-release@lists.debian.org>

pub   4096R/473041FA 2010-08-27 [expires: 2018-03-05]
    Key fingerprint = 9FED 2BCB DCD2 9CDF 7626  78CB AED4 B06F 4730 41FA
uid                  Debian Archive Automatic Signing Key (6.0/squeeze) <ftpmaster@debian.org>

Sobald die richtigen Schlüssel im Schlüsselbund sind, prüft APT die Signaturen vor jeder riskanten Operation, damit Benutzeroberflächen eine Warnung einblenden können, falls bei der Installation eines Pakets die Authentizität nicht bestätigt werden kann.