Ataque massivo de assinaturas no OpenPGP

Na sexta-feira 28 de junho dois colaboradores do ecossistema OpenPGP comunicaram que os seus certificados OpenPGP foram praticamente inutilizados após um ataque contra os servidores de chaves da rede SKS. Se você utiliza o GnuPG para ler e enviar emails criptografados, é recomendado seguir os procedimentos abaixo. O OpenPGP é um padrão utilizado para armazenamento e transporte de dados criptografados e gerenciamento de chaves criptográficas.

Ataque massivo de assinaturas

Nos servidores de chaves SKS não há validação da submissão das assinaturas. Além disso, nenhuma informação é jamais removida. O ataque consistiu na escrita massiva de assinaturas na identidade de um certificado até torná-lo grande demais para ser importado e lido pelo GnuPG. Ao importar dos servidores SKS um certificado atacado, o GnuPG não funcionará mais até que seja refeito todo o seu chaveiro ou então localizar e deletar o certificado. Essa propriedade dos servidores SKS e os problemas consequentes da escolha de design são discutidos e conhecidos há muitos anos, mas nenhuma alteração no programa dos servidores de chave SKS foi implementada para impedir esse e outros abusos.

Como explica Robert J. Hansen, a situação atual é:

  • Se você baixar um certificado afetado -- por exemplo, com uma atualização automática do seu chaveiro gpg --refresh --, o seu programa GnuPG ficará inutilizado.
  • Por design, não há como remover os certificados afetados nos servidores SKS, assim a tendência é apenas aumentar os certificados afetados.
  • Ainda não se sabe o escopo dos ataques.

Mitigações

De acordo com as discussões de outros membros da comunidade, a primeira recomendação é desabilitar temporariamente as atualizações do seu programa GnuPG que utilizem os servidores SKS e inclusive não atualizar manualmente todo o seu chaveiro. Isso impedirá que o seu programa baixe os certificados afetados e danifique o seu chaveiro, no entanto, essa não é uma solução permanente.

A segunda recomendação é a migração para o novo servidor de chaves keys.openpgp.org, que implementa, entre outras coisas, a verificação por email dos certificados OpenPGP, evitando assim o abuso de assinaturas falsas.

Altere o servidor de chaves para keys.openpgp.org

  1. Edite o arquivo ~/.gnupg/dirmngr.conf e acrescente:

keyserver hkps://keys.openpgp.org

Ou se deseja acessar via Tor, acrescente essas duas linhas:

use-tor keyserver hkp://zkaan2xfbuxia2wpf7ofnkbz6r5zdbbvxbunvp5g2iebopbfc4iqmbad.onion

Confirme que não há nenhum endereço de keyserver salvo no arquivo: ~/.gnupg/gpg.conf.

  1. Uma vez que esse servidor não está sincronizado com a rede SKS, você precisará submeter a sua chave para keys.openpgp.org:

Abra o seu terminal e digite:

gpg --export your_address@example.net | curl -T - https://keys.openpgp.org

Ou

Exporte a sua chave e submeta via formulário web.

gpg --export your_address@example.net > my_key.pub

Dependendo do seu cliente de email, talvez seja necessário alterar também outras configurações.

Leia também: