Este é um copiar e colar de outra resposta ( link aqui ). Todos os créditos para o autor original da pergunta.
Você terá que usar um software de força bruta para abri-lo. Esses programas geralmente usam ataques de força bruta ou de dicionário. Eu não usaria esses programas de código fechado de fontes aleatórias e não confiáveis, como sugerido. Scanners de vírus não encontram tudo, então você ainda não pode confiar no executável porque o ClamAV não detecta nada.
Como o LibreOffice é open source, eu começaria procurando o tipo de criptografia que ele usa. Ubuntu 12.04 vem com o LibreOffice 3.5. De acordo com o link , ele usa uma cifra AES de 256 bits.
Esta postagem na lista de discussão também deixa claro que a senha é derivada usando PBKDF2 , o que significa que o forçamento brutal será muito mais lento com uma contagem de iteração alta suficiente.
Como os arquivos .ods são apenas arquivos Zip, tentei criptografar o arquivo e extraí o conteúdo. Como esperado, o conteúdo do documento é criptografado e indistinguível de bytes aleatórios. É claro que existem alguns metadados não criptografados, sendo um deles
META-INF/manifest.xml
. Meu exemplo de planilha criptografada continha as seguintes partes interessadas:
<manifest:encryption-data manifest:checksum-type="urn:oasis:names:tc:opendocument:xmlns:manifest:1.0#sha256-1k" manifest:checksum="48KzqP1PL7Wu/YTtHzlN0buJeUmigGT247dZ6Wrj10s=">
<manifest:algorithm manifest:algorithm-name="http://www.w3.org/2001/04/xmlenc#aes256-cbc" manifest:initialisation-vector="82mrg52Yifh1iIye5W0xuw=="/>
<manifest:key-derivation manifest:key-derivation-name="PBKDF2" manifest:key-size="32" manifest:iteration-count="1024" manifest:salt="hUZrwD1BWkODYVklZiScqA=="/>
<manifest:start-key-generation manifest:start-key-generation-name="http://www.w3.org/2000/09/xmldsig#sha256" manifest:key-size="32"/>
A partir disso, podemos aprender que o LibreOffice usa um algoritmo de hash SHA256 para verificar a integridade dos dados, AES256 em Modo de CBC . A senha de 32 bytes é derivada de sua senha usando PBKDF2 com 1024 iterações.
Um documento sobre a descriptografia de arquivos ODF está disponível aqui, eles contêm informações interessantes para criar seu próprio bruto -forcer, mas provavelmente não são adequados para o usuário médio.
Assim como a maioria dos produtos de criptografia, a recuperação de senha é quase impossível. Eu sugiro:
- Se o arquivo contiver apenas a contabilidade por uma semana, basta começar de novo e não perder tempo descriptografando o arquivo.
- Tente recuperar a senha se você quiser descriptografar o arquivo.
- Se você for usar um programa de força bruta, não use um programa aleatório encontrado na internet. Tente encontrar um programa de código aberto. Se você encontrar apenas programas de código fechado, baixe-o de uma fonte confiável e garanta que ele tenha boas críticas (de várias fontes), coloque-o no link a> e verifique novamente que o programa que você está tentando é legítimo.