Product SiteDocumentation Site

6.6. 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 von kryptografischen Hashes und einer Signatur und wird in apt-secure(8) ausführlich erläutert. Ab Debian 10 Buster ist die signierte Datei die Datei InRelease, die von den Debian-Spiegelservern bereitgestellt wird. Es gibt auch eine Legacy-Datei namens Release. Beide enthalten eine Liste der Packages-Dateien (einschließlich ihrer komprimierten Formen, Packages.gz und Packages.xz, sowie der inkrementellen Versionen), zusammen mit ihren SHA256-Hashes, was sicherstellt, dass die Dateien nicht manipuliert wurden. Diese Packages-Dateien enthalten eine Liste der auf dem Spiegel verfügbaren Debian-Pakete zusammen mit ihren Hashes, was wiederum sicherstellt, dass auch der Inhalt der Pakete selbst nicht verändert wurde. Der Unterschied zwischen InRelease und Release besteht darin, dass erstere intern kryptografisch signiert sind, während letztere eine losgelöste Signatur in Form der Datei Release.gpg bereitstellen.
APT benötigt einen Satz von vertrauenswürdigen öffentlichen GnuPG-Schlüsseln, um Signaturen in den auf den Spiegelservern verfügbaren Dateien InRelease und Release.gpg, zu überprüfen. Es holt sie aus den Dateien in /etc/apt/trusted.gpg.d/ und aus dem Schlüsselbund /etc/apt/trusted.gpg (verwaltet durch den Befehl apt-key). Die offiziellen Debian-Schlüssel werden durch das Paket debian-archive-keyring bereitgestellt, auf dem neuesten Stand gehalten und in /etc/apt/trusted.gpg.d/ abgelegt. Beachten Sie jedoch, dass bei der Erstinstallation dieses speziellen Pakets Vorsicht geboten ist: Selbst wenn das Paket wie jedes andere signiert ist, kann die Signatur nicht von außen überprüft werden. Vorsichtige Administratoren sollten daher die Fingerabdrücke der importierten Schlüssel überprüfen, bevor sie ihnen die Installation neuer Pakete anvertrauen:
# apt-key fingerprint
/etc/apt/trusted.gpg.d/debian-archive-buster-automatic.gpg
----------------------------------------------------------
pub   rsa4096 2019-04-14 [SC] [expires: 2027-04-12]
      80D1 5823 B7FD 1561 F9F7  BCDD DC30 D7C2 3CBB ABEE
uid           [ unknown] Debian Archive Automatic Signing Key (10/buster) <ftpmaster@debian.org>
sub   rsa4096 2019-04-14 [S] [expires: 2027-04-12]

/etc/apt/trusted.gpg.d/debian-archive-buster-security-automatic.gpg
-------------------------------------------------------------------
pub   rsa4096 2019-04-14 [SC] [expires: 2027-04-12]
      5E61 B217 265D A980 7A23  C5FF 4DFA B270 CAA9 6DFA
uid           [ unknown] Debian Security Archive Automatic Signing Key (10/buster) <ftpmaster@debian.org>
sub   rsa4096 2019-04-14 [S] [expires: 2027-04-12]

/etc/apt/trusted.gpg.d/debian-archive-buster-stable.gpg
-------------------------------------------------------
pub   rsa4096 2019-02-05 [SC] [expires: 2027-02-03]
      6D33 866E DD8F FA41 C014  3AED DCC9 EFBF 77E1 1517
uid           [ unknown] Debian Stable Release Key (10/buster) <debian-release@lists.debian.org>

/etc/apt/trusted.gpg.d/debian-archive-jessie-automatic.gpg
----------------------------------------------------------
pub   rsa4096 2014-11-21 [SC] [expires: 2022-11-19]
      126C 0D24 BD8A 2942 CC7D  F8AC 7638 D044 2B90 D010
uid           [ unknown] Debian Archive Automatic Signing Key (8/jessie) <ftpmaster@debian.org>

/etc/apt/trusted.gpg.d/debian-archive-jessie-security-automatic.gpg
-------------------------------------------------------------------
pub   rsa4096 2014-11-21 [SC] [expires: 2022-11-19]
      D211 6914 1CEC D440 F2EB  8DDA 9D6D 8F6B C857 C906
uid           [ unknown] Debian Security Archive Automatic Signing Key (8/jessie) <ftpmaster@debian.org>

/etc/apt/trusted.gpg.d/debian-archive-jessie-stable.gpg
-------------------------------------------------------
pub   rsa4096 2013-08-17 [SC] [expires: 2021-08-15]
      75DD C3C4 A499 F1A1 8CB5  F3C8 CBF8 D6FD 518E 17E1
uid           [ unknown] Jessie Stable Release Key <debian-release@lists.debian.org>

/etc/apt/trusted.gpg.d/debian-archive-stretch-automatic.gpg
-----------------------------------------------------------
pub   rsa4096 2017-05-22 [SC] [expires: 2025-05-20]
      E1CF 20DD FFE4 B89E 8026  58F1 E0B1 1894 F66A EC98
uid           [ unknown] Debian Archive Automatic Signing Key (9/stretch) <ftpmaster@debian.org>
sub   rsa4096 2017-05-22 [S] [expires: 2025-05-20]

/etc/apt/trusted.gpg.d/debian-archive-stretch-security-automatic.gpg
--------------------------------------------------------------------
pub   rsa4096 2017-05-22 [SC] [expires: 2025-05-20]
      6ED6 F5CB 5FA6 FB2F 460A  E88E EDA0 D238 8AE2 2BA9
uid           [ unknown] Debian Security Archive Automatic Signing Key (9/stretch) <ftpmaster@debian.org>
sub   rsa4096 2017-05-22 [S] [expires: 2025-05-20]

/etc/apt/trusted.gpg.d/debian-archive-stretch-stable.gpg
--------------------------------------------------------
pub   rsa4096 2017-05-20 [SC] [expires: 2025-05-18]
      067E 3C45 6BAE 240A CEE8  8F6F EF0F 382A 1A7B 6500
uid           [ unknown] Debian Stable Release Key (9/stretch) <debian-release@lists.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.