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.
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.