Como descriptografar LUKS com a chave mestra conhecida?

4

De: link

CLONING/IMAGING: If you clone or image a LUKS container, you make a copy 
of the LUKS header and the master key will stay the same! That means that if 
you distribute an image to several machines, the same master key will be used 
on all of them, regardless of whether you change the passphrases. Do NOT do this! 
If you do, a root-user on any of the machines with a mapped (decrypted) container 
or a passphrase on that machine can decrypt all other copies, breaking security. 
See also Item 6.15. 

Então: Eu tenho um notebook "A" (um Linux Desktop instalado com LUKS & e eu tenho acesso root a ele) e eu clonei todo o disco dele para o notebook "B", e o notebook "B" tinha é a senha do LUKS alterada.

Minha pergunta : Como posso montar / descriptografar a partição LUKS do bloco "B" com SOMENTE a chave mestra conhecida de "A"? * (e sei a cifra tipo também)

* UPDATE: Quais são os comandos exatos para montar o disco rígido do B em A?

    
por evachristine 15.03.2014 / 11:10

2 respostas

3

Abrir um volume LUKS leva à criação de um novo objeto de mapeador de dispositivo. Vamos supor que o volume original (LVM) seja storage-crypto (de uma perspectiva DM) e o volume descriptografado seja chamado de crypto . Você obtém a configuração do mapeador de dispositivos por este:

dmsetup table --showkeys crypto
0 104853504 crypt aes-cbc-essiv:sha256 b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c 0 253:5 4096

A parte principal é exatamente o que você obtém de

cryptsetup luksDump --dump-master-key /dev/storage/crypto

Ou seja. se você conhece a cifra e a chave, você pode configurar um volume DM como você mesmo.

Consulte a documentação do kernel sobre esse destino de mapeador de dispositivo ( dm-crypt ).

Para descriptografar um volume LUKS, você precisa determinar o tamanho do volume em blocos de 512 bytes:

blockdev --getsz /dev/sda1
104857600

Com este valor você pode criar um novo volume DM. Isso deve funcionar:

echo "0 104857600 crypt aes-cbc-essiv:sha256 "\
"b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c "\
"0 /dev/sda1 4096" | dmsetup create luks_volume
    
por 15.03.2014 / 14:08
0

Desde que você tenha a chave mestra e seja o root

cryptsetup --master-key-file pathToMasterKey luksOpen /dev/sdX bHDD
mount /dev/mapper/bHDD /mnt/bHDD

Se você precisar obter a chave mestra, tenha uma unidade descriptografada e execute o seguinte como raiz

dmsetup table --showkeys

copie a chave e coloque-a em um arquivo de texto e, em seguida, execute

xxd -r -p masterKey.txt masterKey.bin

você usaria masterKey.bin no seu comando cryptsetup como o arquivo de chave mestra

    
por 17.08.2016 / 22:42

Tags