AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / unix / Perguntas / 526798
Accepted
Keith
Keith
Asked: 2019-06-26 01:52:59 +0800 CST2019-06-26 01:52:59 +0800 CST 2019-06-26 01:52:59 +0800 CST

A presença de somas sha1 de texto simples em knoppix-data.aes indica corrupção?

  • 772

Esta pergunta é sobre a criptografia opcional de dados do usuário com a distribuição Linux ao vivo KNOPPIX v6.2 (2009-11-18), que pelo que entendi é baseada no Debian.

Eu não uso mais esta versão antiga, mas estou tentando recuperar dados de anos do arquivo de dados persistente knoppix-data.aes criado pelo KNOPPIX v6.2 nos prompts de inicialização. O arquivo é um byte menor que 4 GiB.

Eu esperava que alguém que conhecesse os padrões de criptografia do Linux desde o final dos anos 2000 pudesse fornecer algumas informações sobre esse arquivo (como explicarei abaixo). Não estou muito familiarizado com os padrões de criptografia do Linux e estou um pouco sobrecarregado com a miríade de termos que vejo (como "LUKS", "dm-crypt", etc.) - não tenho certeza de quais, se houver, se aplica à minha situação com o Knoppix do final dos anos 2000.

Obviamente, o ".aes" no nome do arquivo indica criptografia AES. A princípio, suspeitei que estivesse digitando a senha incorretamente, mas agora me pergunto se poderia haver outro problema que tornaria inúteis minhas tentativas de digitar a senha corretamente. vou explicar:

Quando visualizo o arquivo com um editor hexadecimal, é surpreendente ver que o início do arquivo é uma lista em texto simples de nomes de arquivos e hashes, por exemplo:

f4374a5897aafd09a2439f6c3f4a961d5cc7c1a1 *autorun.bat
eaf953dce8de1442e4e32769260e22435a70f3bc *autorun.inf
(etc.)

(também estão incluídos hashes para muitos arquivos que obviamente estão relacionados ao Knoppix, como KNOPPIX/knoppix-logo-small.png , para dar um exemplo)

Os bytes iniciais parecem corresponder exatamente ao arquivo de texto simples /mnt-system/KNOPPIX/sha1sums (na unidade USB onde o Knoppix está instalado, então aparentemente faz parte da instalação do Knoppix). Depois disso, há extensões de bytes nulos (00) e, em seguida, rabiscos aleatórios. Eu esperava que a coisa toda fosse um rabisco aleatório; no contexto da criptografia AES, o texto não criptografado no início do arquivo ".aes" parece incongruente.

Como teste, desliguei, renomei o arquivo AES original, reiniciei e criei outro knoppix-data.aes de 256 MiB, com a senha "123456789". Este não contém o texto não criptografado no início e posso escrever nele (e descriptografá-lo com sucesso nas inicializações subsequentes).

Mas eu não sei sobre esse formato de arquivo opaco (ou onde está a documentação para ele), exceto que (presumivelmente) envolve um algoritmo AES (mas não tenho detalhes sobre o modo de operação, derivação de chave, cabeçalho etc.) . Em particular, é normal ter esse material de texto claro (sha hashes e nomes de arquivos) no início do arquivo, como algum tipo de cabeçalho, talvez? Ou indicaria que o arquivo de alguma forma foi corrompido (como por ser concatenado com o arquivo sha1sums em algumas circunstâncias bizarras)?

Se a resposta for que é normal que as somas sha1 do texto claro estejam lá, isso significa que preciso fornecer um deslocamento para o losetup para passar do texto claro? estou usando atualmente

echo "mypassword" | losetup -p 0 -e aes -k 256 /dev/loop2 knoppix-data.aes
mount /dev/loop2 /media/mydir/

para evitar ter que reiniciar toda vez que eu quiser tentar descriptografia. Isso funciona para a versão de teste de 256 MiB do knoppix-data.aes , com senha "123456789" e sem texto claro no início, mas não para o arquivo original de 4 GiB que tem os hashes de texto claro (reclama que o sistema de arquivos não está especificado, o que presumivelmente significa que não pode ser determinado automaticamente, o que presumivelmente significa que a descriptografia produziu rabiscos em vez dos dados desejados, possivelmente porque o texto claro não deveria estar lá ou porque o losetup precisa de um deslocamento para passar por ele).

encryption knoppix
  • 1 1 respostas
  • 48 Views

1 respostas

  • Voted
  1. Best Answer
    frostschutz
    2019-06-26T02:30:37+08:002019-06-26T02:30:37+08:00

    Bem, a corrupção parece ser a única explicação possível (alguém fez um cp file /dev/loopXou similar). loop aes não tem metadados, então o arquivo deve ser aleatório (talvez exceto para setores que nunca foram gravados, ou seja, "espaço livre").

    Você não quer um deslocamento ímpar, você precisa usar o deslocamento original para ter alguma chance de descriptografar as partes que não foram substituídas.

    Infelizmente loop aes não é um padrão muito consistente, veja também observações loop-aes do FAQ do cryptsetup .

    O único caso em que um deslocamento alterado seria aplicável é se o arquivo foi realmente produzido por cat cleartextfile aesfile > newaesfileou similar, ou seja, se os dados fossem inteiros, mas movidos para um deslocamento posterior no arquivo. Mas então você teria um tamanho de arquivo estranho, não 4G nítido, então você pode descartar esse.

    ele reclama sobre o sistema de arquivos não estar especificado

    Bem, isso é esperado se os cabeçalhos do sistema de arquivos forem substituídos - você precisa examinar os dados brutos descriptografados para descobrir se há algo que não seja sem sentido nele. O que quer que seja texto claro no arquivo aes será sem sentido na visualização descriptografada, não importa qual senha você escolha...

    • 0

relate perguntas

  • Qual é a maneira correta de remover totalmente o par de chaves RSA da minha configuração SSH?

  • dmsetup luksFormat criando uma inconsistência de alinhamento

  • dm-crypt / cryptsetup que bloqueia o uso da dimensão de criptografia

  • Como usar o pv para mostrar o progresso da criptografia/descriptografia do openssl?

  • Confuso sobre o sal no arquivo de criptografia openssl

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Possível firmware ausente /lib/firmware/i915/* para o módulo i915

    • 3 respostas
  • Marko Smith

    Falha ao buscar o repositório de backports jessie

    • 4 respostas
  • Marko Smith

    Como exportar uma chave privada GPG e uma chave pública para um arquivo

    • 4 respostas
  • Marko Smith

    Como podemos executar um comando armazenado em uma variável?

    • 5 respostas
  • Marko Smith

    Como configurar o systemd-resolved e o systemd-networkd para usar o servidor DNS local para resolver domínios locais e o servidor DNS remoto para domínios remotos?

    • 3 respostas
  • Marko Smith

    apt-get update error no Kali Linux após a atualização do dist [duplicado]

    • 2 respostas
  • Marko Smith

    Como ver as últimas linhas x do log de serviço systemctl

    • 5 respostas
  • Marko Smith

    Nano - pule para o final do arquivo

    • 8 respostas
  • Marko Smith

    erro grub: você precisa carregar o kernel primeiro

    • 4 respostas
  • Marko Smith

    Como baixar o pacote não instalá-lo com o comando apt-get?

    • 7 respostas
  • Martin Hope
    user12345 Falha ao buscar o repositório de backports jessie 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl Por que a maioria dos exemplos do systemd contém WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky Como exportar uma chave privada GPG e uma chave pública para um arquivo 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll status systemctl mostra: "Estado: degradado" 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim Como podemos executar um comando armazenado em uma variável? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S Por que /dev/null é um arquivo? Por que sua função não é implementada como um programa simples? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 Como ver as últimas linhas x do log de serviço systemctl 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - pule para o final do arquivo 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla Por que verdadeiro e falso são tão grandes? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis Substitua a string em um arquivo de texto enorme (70 GB), uma linha 2017-12-30 06:58:33 +0800 CST

Hot tag

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve