Créer une archive 7-ZIP chiffrée en ligne de commande sous Linux

I. Présentation

Dans cet article, nous allons voir comment créer une archive ZIP chiffrée à l'aide d'un mot de passe. Pour cela, nous allons utiliser la commande 7z sous Linux, celle-ci nous permettra de travailler en ligne de commande.

Par défaut, la commande 7z va utiliser l’algorithme de chiffrement symétrique AES-256, celui-ci est réputé comme robuste au regard des puissances de calcul actuelles. Nous allons préférer l'outil 7z à la commande, parfois native, zip qui utilise un mécanisme de chiffrement réputé comme faiblement robuste.

Il est à noter que les archives au format 7z (7-zip), ne pourront être ouvertes par l'outil natif Windows, il sera donc nécessaire d'utiliser l'utilitaire 7z également sous Windows (il suffira de double cliquer dessus pour avoir une demande de saisie du mot de passe).

II. Installation de 7-zip sous Linux

Sur une machine Debian/Ubutu, il y a des chances que 7z soit déjà présent sur votre système. Si ce n'est pas le cas, exécutez la commande suivante pour l'installer :

apt-get install p7zip-full

Ce paquet contient les commande 7z et 7za. 7z utilise les librairies du système et 7za intègre dans son code ses libraires, un détail.

III. Utilisation de 7z pour protéger une archive ZIP

Pour compresser le fichier test.txt dans une archive nommée secure.7z, nous utiliserons la commande suivante :

7z a /tmp/secure.7z /tmp/test.txt -p

L'option "a" permet de spécifier que nous souhaitons créer une archive, on précise ensuite le nom de l'archive à créer, le nom du ou des fichiers à compresser et l'option "-p" permet de spécifier le mot de passe. Celui-ci nous sera demandé juste après l'exécution de la commande. Il est n'est en effet pas conseillé d'utiliser l'option "-p" comme on le voit dans certains tutoriels :

7z a /tmp/secure.7z /tmp/test.txt -pMonp@ssword

De cette façon, le mot de passe saisi apparaît en clair dans le terminal et peut atterrir, entre autre, dans votre historique de commande et pourra alors être lu potentiellement par un autre utilisateur du système (collègue, attaquant, etc).

A présent, le contenu de l'archive est chiffré, il est à noter que le nom des fichiers seront toujours lisibles en clair. La lecture de leur contenu sera cependant impossible sans saisie du mot de passe permettant de déchiffrer ces archives.

Je rappel au passage que l'utilisation d'un mot de passe fort est nécessaire, peu importe la robustesse du mécanisme de chiffrement utilisé.

IV. Déchiffrer une archive chiffrée avec 7z

Pour effectuer l'opération inverse sous Linux, il suffit d'utiliser la commande suivante :

7z x /tmp/securez.7z

L'outil nous demandera alors le mot de passe utilisé pour chiffrer/déchiffrer l'archive, on notera au passage la détection de l'algorithme de chiffrement utilisé :

7-Zip [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
 p7zip Version 16.02 (locale=fr_FR.UTF-8,Utf16=on,HugeFiles=on,64 bits,4 CPUs Intel(R) Core(TM) i7-7600U CPU @ 2.80GHz (806E9),ASM,AES-NI)

Scanning the drive for archives:
 1 file, 154 bytes (1 KiB)

Extracting archive: secure.7z
 --
 Path = secure.7z
 Type = 7z
 Physical Size = 154
 Headers Size = 138
 Method = LZMA2:12 7zAES
 Solid = -
 Blocks = 1

Enter password (will not be echoed):

La protection d'une archive ZIP par mot de passe est utile, notamment lorsque l'on souhaite faire transiter l'archive par des réseaux qui ne sont pas de confiance ou sur une clé USB pouvant être perdue, volée, etc. Le stockage des sauvegardes peut également faire l'objet d'une protection pour se protéger d'un vol ou d'une modification.

Il ne faut cependant ne pas oublier qu'un attaquant ayant volé une archive ZIP chiffrée disposera de tout le temps nécessaire pour effectuer une attaque de type brute force par dictionnaire dessus et finira nécessairement par trouver la bonne combinaison.

Partagez cet article Partager sur Twitter Partager sur Facebook Partager sur Linkedin Partager sur Google+ Envoyer par mail

Mickael Dorigny

Fondateur d’IT-Connect.fr et d’Information-security.fr.
Auditeur sécurité chez Amossys.

    mickael a publié 477 articles sur IT-Connect.See all posts by mickael

    Une réaction sur “Créer une archive 7-ZIP chiffrée en ligne de commande sous Linux

    • 06/12/2017 à 13:46
      Permalink

      Merci pour cet article super pratique !

      Je conseille cependant aux lecteurs d’utiliser gpg pour chiffrer une archive que 7zip. Tout simplement car la qualité de l’algorithme de chiffrement implémenté dans gpg est réputé plus sûr (car plus testé) que celui de 7zip.

      La commande est la suivante : gpg –cipher-algo AES256 –passphrase file

      Bonne journée 🙂

      Répondre

    Laisser un commentaire

    Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *