2 votes

"Aucune clé disponible avec cette phrase secrète" avec une partition DM-CRYPT / LUKS nouvellement créée

En faisant des recherches, il semble que d'autres rencontrent des problèmes plus complexes en raison des paramètres de chiffrement, mais mon problème survient lors de l'exécution d'une tâche simple.

En utilisant une installation presque neuve de Lubuntu 18.10 32 bits (le noyau a été mis à jour), je peux créer une partition chiffrée de la manière suivante :

cryptsetup  --verbose  --verify-passphrase  luksFormat  /dev/mmcblk0    

ATTENTION : Le périphérique /dev/mmcblk0 contient déjà une signature de super-bloc 'crypto_LUKS'.

ATTENTION !
=========
Cela écrasera irrévocablement des données sur /dev/mmcblk0.

Êtes-vous sûr ? (Tapez en majuscules yes) : YES
Saisissez la phrase secrète pour /dev/mmcblk0 : 
Vérifiez la phrase secrète : 
La signature de super-bloc 'crypto_LUKS' existante sur le périphérique /dev/mmcblk0 sera effacée.
Emplacement de clé 0 créé.
Commande réussie.

Si le mot de passe donné est la lettre a, je ne parviens pas à le déverrouiller de cette manière :

cryptsetup  --verbose  luksOpen  /dev/mmcblk0 crypt

Saisissez la phrase secrète pour /dev/mmcblk0 :
Aucune clé disponible avec cette phrase secrète.
Saisissez la phrase secrète pour /dev/mmcblk0 :

(J'ai également essayé zulucrypt avec le même résultat)


Puisque j'ai installé Lubuntu en utilisant la fonctionnalité de chiffrement de son programme d'installation, je peux faire une comparaison entre ce que mon système utilise nativement et ce que cryptsetup a créé sur mon lecteur mmc.

cryptsetup luksDump /dev/sda1

La partie pertinente semble être :

Version :        1
Nom du chiffrement :    aes
Mode du chiffrement :    xts-plain64
Spécification du hachage :      sha256
Décalage de la charge utile : 4096
Bits de MK :        512

La seule différence que je vois entre les deux rapports est que pour mon lecteur local, le bas "Bits de MK" est de 512, mais pour le mmc il est de 256.


Je ne sais pas si c'est pertinent, mais je remarque également que mon lecteur local a deux emplacements de clé et que le mmc en a seulement un. (Le fait que mon lecteur local ait deux emplacements de clé me fait espérer/me demander si le programme d'installation a mis en place une clé duplicata au cas où la première serait corrompue.)


Un commentateur m'a demandé d'essayer de fournir une phrase secrète de cette manière :

echo -n 'a' | cryptsetup  --verbose  luksOpen  /dev/mmcblk0 crypt

Impossible de vérifier la phrase secrète sur les entrées non tty.
Aucune clé disponible avec cette phrase secrète.
Commande échouée avec le code -2 (pas de permission ou mauvaise phrase secrète).

Une autre façon de fournir un mot de passe :

echo 'a' > interactive_pass         
cat interactive_pass | cryptsetup luksAddKey /dev/mmcblk0

Aucune clé disponible avec cette phrase secrète.

Utilisation d'un fichier clé.

Je ne comprends pas cela. J'ai tâtonné pendant un certain temps, mais j'ai arrêté car je ne vois pas la différence entre l'utiliser incorrectement et avoir ses propres problèmes.

zulucrypt a une manière de créer un fichier clé, mais il indique simplement Impossible de générer la clé. C'est simple, donc je suis sûr de l'utiliser correctement (exécuté en tant que root, avec des permissions d'écriture sur le fichier que je voudrais créer)

1voto

spiralofhope Points 152

TL;DR - Vérifiez si les médias sont fiables; luksFormat et luksOpen ne le sont pas.

Le problème pourrait être envisagé de plusieurs façons :

  • Le mauvais mot de passe est fourni
  • Le mot de passe est donné de la mauvaise manière
  • Quelque chose ne va pas avec le logiciel essentiel, comme cryptsetup lui-même.

Par curiosité, j'ai décidé de faire un formatage complet du lecteur mmc (pour "repartir de zéro), mais en vérifiant :

sudo mkfs.ext4 /dev/mmcblk0 -cc   

mke2fs 1.44.4 (18-Aug-2018)
/dev/mmcblk0 contient un système de fichiers ext4
        dernier monté le Mar  5 11:30:02 2019
Continuer quand même ? (o,N) o
Suppression des blocs du périphérique: terminée                            
Création du système de fichiers avec 15591936 blocs de 4k et 3899392 inodes
UUID du système de fichiers : 0ab72f40-d2a2-408d-b4ca-d5e8fcc27ec7
Sauvegardes de super-blocs stockées sur les blocs : 
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
        4096000, 7962624, 11239424

Test avec le motif 0xaa: terminé                                                 
Lecture et comparaison : terminé                                                 
Test avec le motif 0x55: terminé                                                 rs)
Lecture et comparaison : terminé                                                 rs)
Test avec le motif 0xff: terminé                                                 rs)
Lecture et comparaison : terminé                                                 rs)
Test avec le motif 0x00: terminé                                                 rs)
Lecture et comparaison : terminé                                                 rs)
Le bloc 0 dans la zone du super-bloc / des descripteurs de groupe est mauvais.
Les blocs 0 à 9 doivent être bons pour construire un système de fichiers.
Abandon....

Je pouvais déjà voir où cela allait..

Puisque je n'avais jamais formaté de cette manière auparavant, j'ai formaté un deuxième dispositif de stockage (une clé USB) avec vérification, et le formatage s'est conclu avec succès. En passant par le même processus cryptsetup pour formater et ouvrir cette clé USB, cela a fonctionné. Cela révèle un autre problème qui se produisait :

  • Le mot de passe est reçu de la mauvaise manière

Je soupçonne que luksFormat ne fait aucune vérification de cohérence pour voir si ses données peuvent réellement être lues.


En guise de suivi, j'avais déjà effectué un formatage non rapide sous Windows et cela fonctionnait bien. J'ai également réalisé un test complet d'écriture-lecture-comparaison et c'était également un succès. J'ai d'autres tests à effectuer, simplement par curiosité, mais il se peut que ce soit (d'une manière ou d'une autre) un problème spécifique à Linux. Je ne creuserai pas plus loin dans ce sujet, mais je conclurai qu'il est important de réaliser tout le formatage et tous les tests sur la plateforme spécifique où le problème est observé.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X