Existe um sistema de arquivos não criptografado, mas assinado?

5

Estou curioso para saber se existe um sistema de arquivos que não é criptografado, tornando-o legível por qualquer pessoa, mas emprega um esquema de assinatura digital para exigir que as gravações sejam assinadas digitalmente.

Eu suspeito que a resposta seja "Não porque seria complicado e provavelmente mais lento do que simplesmente criptografar a unidade", mas pareceu interessante.

    
por Jeff Burdges 16.05.2015 / 00:39

1 resposta

4

Os dois candidatos óbvios seriam ZFS e Btrfs , mas pelo que eu sei, eles não fazem isso. O Btrfs atualmente não possui criptografia (para criptografia, você deve usar o LUKS, que fornece criptografia e, opcionalmente, integridade no nível do bloco, mas não integridade global). O ZFS tem um modo de integridade , onde usa uma árvore de hashes criptográficos para garantir que o sistema de arquivos permaneça consistente. Se o hash raiz fosse assinado, isso garantiria a autenticidade do sistema de arquivos: um adversário não poderia injetar conteúdo falso. Isso quase garantiria a integridade do sistema de arquivos: tudo o que o adversário poderia fazer sem a chave seria reverter o sistema de arquivos para uma versão anterior. Uma maneira alternativa de garantir a integridade do sistema de arquivos seria armazenar uma cópia offline do hash raiz; Não consigo encontrar uma referência de ferramentas existentes para fazer isso.

O Verifyfs é um FUSE sistema de arquivos que verifica a assinatura dos arquivos individualmente. Tanto quanto eu posso dizer de uma rápida leitura (eu não tinha ouvido falar disso antes de hoje), ele não assina diretórios, tenta evitar reversões ou verifica a consistência do sistema de arquivos, então um adversário pode fazer downgrade de arquivos individuais para versões anteriores e pode apagar arquivos.

Por que a criptografia é tão comum e a verificação de integridade é tão incomum? Acho que há vários motivos: as ameaças à integridade são um pouco menos comuns do que as ameaças à confidencialidade, são mais difíceis de combater e a verificação de integridade tem um custo de desempenho mais alto.

  • A criptografia protege contra roubo de um disco. É uma ameaça praticamente em todos os lugares, e uma vez que o disco é roubado, não há outro remédio. A verificação de integridade protege contra um adversário que tenha acesso ao sistema enquanto o armazenamento é desmontado (se estiver montado, a chave de verificação de integridade está na memória) - um ataque de empregada doméstica . Isso raramente é uma ameaça contra servidores, para os quais a falsificação é frequentemente detectável, mas é uma ameaça contra laptops.

  • Mesmo que você consiga proteger seu disco contra um mau ataque de empregada por meios criptográficos, seu computador ainda estará vulnerável a ataca o firmware alvo . O PC geralmente tem várias memórias flash que podem ser reescritas sem proteção criptográfica (incluindo o firmware do próprio disco ).

  • A proteção da integridade é cara porque é uma propriedade global. A criptografia pode ser executada setor por setor, portanto, o custo é pequeno, a menos que sua CPU esteja muito lenta e seu disco seja muito rápido. Se você autenticar setor por setor, um adversário ainda pode comprometer parcialmente o sistema, revertendo alguns setores para um valor anterior, embora este seja um ataque mais sofisticado, pois pode exigir acesso ao sistema em momentos diferentes. Portanto, a verificação de autenticidade completa requer a comparação do valor de autenticação de um setor com um valor de referência, cuja autenticidade e frescor precisam ser verificados, etc.

por 16.05.2015 / 02:16