Ticker

6/recent/ticker-posts

Ad Code

Responsive Advertisement

L’authentification des paquets sur APT

APT (Advanced Package Tool) fournit une interface de ligne de commande de haut niveau pour le système de gestion des packages.
Il permet d’installer de nouveaux paquets ou mettre à niveau une distribution Linux comme Debian, Ubuntu ou Mint.
La compromission des dépôts afin de pirater des serveurs ou PC.

Pour protéger et assurer l’intégrité des dépôts, APT a mis en place un certains nombres de protection dont l’authentification des paquets.

Voici quelques explications sur le fonctionnement de l’authentification des paquets et signature sur APT.

L'authentification des paquets sur APT

L’authentification des paquets sur APT

Pour s’assurer que les paquets n’ont pas été altérés par exemple par un pirate, ils sont signés numériquement.
Le sceau fonctionne avec une chaîne de hachages cryptographiques et une signature et est expliqué en détail en détail.

Dans le répertoire /debian/dists/ du dépot, on trouve trois fichiers :

  • InRelease : stocke les hashs en MD5 et le SHA256 de chaque fichiers descriptif du dépôt et notamment le fichier Package. Le fichier contient aussi une signature PGP
  • Release : Même chose que InRelease mais sans la signature PGP
  • Release.gpg : La signature GPG

La différence entre InRelease et Release est que le premier est signé cryptographiquement en ligne, tandis que le second fournit une signature détachée sous la forme du fichier release.gpg.

Les fichiers InRelease, Release et Release.gpg

Voici un exemple de contenu du fichier Release :

Le contenu du fichier InRelease

Chaque dépôt de la distribution stocke un fichier Package avec la liste des paquets, leurs noms, versions, descriptions et leurs hashs.
Il indique aussi le lien de téléchargement du paquet, en général dans l’emplacement suivant : /debian/pool/main/

Le fichier Package avec la liste des paquets et leurs sommes de contrôle

Ces deux sommes de contrôle permettent de vérifier que la copie du fichier Packages téléchargé est correcte, avec une somme de contrôle MD5 et SHA-256 qui correspond à celle du fichier Release. Lorsqu’un paquet est téléchargé individuellement, la vérification de la somme de contrôle MD5 avec le contenu du fichier Packages est aussi possible. Si apt échoue à l’une de ces étapes, il abandonnera.

Tous ces hachages assurent que le dépôt n’a pas été compris.

Ainsi, APT a besoin d’un ensemble de clés publiques GNUPG de confiance pour vérifier les signatures dans les fichiers InRelease et Release.gpg disponibles sur les miroirs. Il les obtient des fichiers asc dans /etc/apt/trusted.gpg.d/ et avec la clé /etc/apt/trusted.gpg.

Comment ajouter des clés de signatures dans APT

Lorsqu’une source de paquets tierce est ajoutée au fichier sources.list, il faut désormais porter à la connaissance de APT la clé de confiance correspondante sans quoi il se plaindra constamment qu’il ne peut pas vérifier l’authenticité des paquets contenus dans le dépôt concerné. Pour cela, il faut avant tout récupérer la clé publique en question : la plupart du temps, elle sera fournie sous la forme d’un petit fichier texte asc.

Lorsque le fichier Release est manquant, APT ignore la source et afficher une erreur :

E: The repository 'https://nginx.org/packages/debian stable Release' does not have a Release file.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.

A noter qu’APT télécharge le fichier Package pour une utilisation en local.
Il le stocke dans /var/lib/apt/lists/ et on peut interroger son contenu avec la commande show :

apt show <nom paquet>

Plus de détails :

man apt-secure

apt-key est un programme qui permet de gérer un trousseau de clefs GPG pour apt sécurisé.
C’est le programme qui gère la liste des clés utilisées par APT à faire confiance aux référentiels. Il peut être utilisé pour ajouter ou supprimer les clés ainsi que répertorier les clés de confiance.
Toutefois la commande est dépréciée à partir des versions d’APT supérieures à 1.4 et l’utilisateur doit télécharger les clés manuellement avec wget, curl ou encore avec gpg –keyserver.

L’article L’authentification des paquets sur APT est apparu en premier sur malekal.com.

Enregistrer un commentaire

0 Commentaires