Você pode ler um PDF criptografado?

O pesquisador Fabian Ising, durante palestra no Chaos Communication Congress, mostrou os limites de segurança da criptografia para PDF’s.

De acordo com as especificações do formato de arquivo, o PDF suporta criptografia, usando o algoritmo AES no modo de criptografia por encadeamento de blocos. Portanto – pelo menos em teoria – quem criptografa um arquivo PDF pode ter certeza de que apenas alguém com a senha pode ver o que está no arquivo. Continuando o estudo sobre segurança em PDFs, uma equipe de pesquisadores de várias universidades alemãs testou a confiabilidade da implementação da criptografia neste formato. Fabian Ising, da Universidade de Ciências Aplicadas de Münster, apresentou suas conclusões – e elas foram decepcionantes.

Na teoria, as empresas usam PDFs criptografados para transferir dados por um canal não seguro ou não confiável – por exemplo, para carregar um arquivo em uma nuvem de armazenamento ao qual muitas pessoas têm acesso. Os pesquisadores procuravam uma maneira de modificar o arquivo de origem, de modo que, quando a senha fosse inserida, as informações no PDF fossem enviadas a terceiros, mas sem tornar visíveis as alterações ao destinatário.

Os pesquisadores desenvolveram duas formas de ataque que permitem que terceiros acessem o conteúdo criptografado. Além disso, o primeiro ataque (exfiltração direta) não requer nenhuma habilidade especial de criptografia – apenas uma compreensão das especificações do formato PDF. Os pesquisadores chamaram isso de “quebra de criptografia sem tocar na criptografia”. O segundo ataque, chamado ataque de maleabilidade, é mais complicado e requer uma compreensão do modo de encadeamento por blocos.

Quem usa PDFs criptografados, e por quê?

Empresas encontraram vários usos para PDFs criptografados.

  • Os bancos os usam como instrumento de confidencialidade ao trocar documentos com os clientes.

Multifuncionais podem aceitar documentos escaneados por e-mail, protegendo com senha os PDFs se o remetente selecionarem a opção “criptografar formulário”.

  • Dispositivos de diagnóstico médico usam PDFs protegidos para enviar resultados de testes para pacientes e médicos
  • Agências governamentais como o Departamento de Justiça dos EUA aceitam receber documentos PDF criptografados.

Vários plug-ins de aplicativos de e-mail oferecem a capacidade de enviar um documento como um PDF criptografado, portanto existe uma demanda pela opção.

Ataque de exfiltração direta

A criptografia de um arquivo PDF codifica apenas o conteúdo (ou seja, objetos no arquivo, que são caracterizados como cadeias ou fluxos). Os objetos restantes, determinando a estrutura do documento, permanecem sem criptografia. Em outras palavras, você ainda pode descobrir o número e o tamanho das páginas, objetos e links. Essas informações não devem ser deixadas para possíveis invasores, que podem usá-las para projetar uma maneira de burlar a criptografia.

Os pesquisadores se perguntaram primeiro se poderiam adicionar suas próprias informações ao arquivo – em teoria que lhes permitisse inventar um canal de exfiltração. Eles aprenderam com a documentação de formato que os PDFs permitem controle granular sobre a criptografia, de modo que, por exemplo, você pode criptografar apenas objetos do tipo “string” ou apenas objetos do tipo “stream”, deixando outros conteúdos não criptografados.

Além disso, nenhuma verificação de integridade é implementada; portanto, se você adicionar algo a um documento criptografado, os usuários não serão alertados. Esse “algo” pode incluir uma funcionalidade de envio de formulário, o que significa que você pode incorporar um formulário em um arquivo PDF que envia dados – por exemplo, todo o conteúdo do documento – para terceiros. A função também pode ser vinculada a uma ação como abrir o documento.

O que mostramos acima é simplesmente um exemplo de exfiltração, mas as opções são diversas. Os invasores podem colocar um link simples para o site, com todo o conteúdo do arquivo adicionado ao URL. Ou eles podem usar JavaScript para enviar o conteúdo descriptografado para qualquer lugar. Certamente, alguns leitores de PDF checam com o usuário antes de se comunicar com um site, mas nem todos – e nem todo usuário pensa nisso antes de permitir.

Ataque de maleabilidade

O segundo ataque à criptografia PDF emprega uma desvantagem conhecida do modo CBC (Cipher Block Chaining), que não possui controle de integridade. A essência desse ataque bem conhecido é que um invasor que conhece parte das informações em texto sem formatação pode alterar o conteúdo de um bloco.

No entanto, de acordo com as especificações do formato PDF, sempre que o conteúdo de um arquivo PDF é criptografado, ele também criptografa permissões diferentes (por exemplo, dando ao autor a capacidade de editar o documento e negando a um simples leitor). Em teoria, isso foi feito para impedir que os invasores violem as permissões, que são criptografadas com a mesma chave AES que o restante do documento.

Ao mesmo tempo, essas permissões também são armazenadas no arquivo em formato não criptografado. Isso significa que, por padrão, os invasores sabem o que são 12 bytes do arquivo e, como resultado, podem adulterar o Cipher Block Chaining para direcionar e manipular dados criptografados, por exemplo, incluindo o mecanismo de exfiltração de dados ao arquivo criptografado para enviar o conteúdo de o arquivo para um site de terceiros.

Resultados

Os pesquisadores testaram seus métodos em 23 leitores de PDF e 4 navegadores. Eles encontraram todos eram vulneráveis a, no mínimo, uma das ameaças.

Tabela resumo das vulnerabilidades dos leitores de PDF

Tabela resumo das vulnerabilidades dos leitores de PDF. Fonte

Infelizmente, nenhuma solução do lado do cliente pode mitigar completamente as vulnerabilidades do formato. Não é possível bloquear todos os canais de exfiltração sem danificar o formato. Os pesquisadores contataram os desenvolvedores de software e relataram os problemas, e algumas empresas, incluindo a Apple, tentaram ajudar enfatizando as notificações de que o arquivo estava acessando um site de terceiros. Outros disseram que tentaram, mas não conseguiram “consertar o que não pode ser consertado”.

Nossa recomendação: se você precisar transmitir dados confidenciais, use um método alternativo para proteger essas informações. Por exemplo, você pode usar nossas soluções para criar arquivos criptografados.

Dicas