Unknown · Openpgp.Js · CVE-2025-47934
**Nome do Software Vulnerável e Versões Afetadas**
OpenPGP.js versões 5.0.1 a 5.11.2
OpenPGP.js versões 6.0.0 a 6.1.0
**Descrição**
Uma mensagem modificada de forma maliciosa pode ser passada para `openpgp.verify` ou `openpgp.decrypt`, fazendo com que essas funções retornem um resultado de verificação de assinatura válido, ao mesmo tempo que retornam dados que não foram realmente assinados. Esta falha permite que verificações de assinatura de mensagens assinadas inline e mensagens assinadas e criptografadas sejam forjadas. O atacante precisa de uma única assinatura de mensagem válida e dos dados em texto claro que foram legitimamente assinados para construir uma mensagem forjada. Mais de 4.000 sites ainda estão carregando arquivos OpenPGP.js vulneráveis, afetando front-ends de criptografia e carteiras de criptomoedas.
**Recomendações**
Para as versões 5.0.1 a 5.11.2 do OpenPGP.js, atualize para a versão 5.11.3.
Para as versões 6.0.0 a 6.1.0 do OpenPGP.js, atualize para a versão 6.1.1.
Como solução temporária, ao verificar mensagens assinadas inline, extraia a mensagem e a(s) assinatura(s) da mensagem retornada por `openpgp.readMessage` e verifique a assinatura como uma assinatura destacada, passando a assinatura e uma nova mensagem contendo apenas os dados para `openpgp.verify`.
Ao descriptografar e verificar mensagens assinadas e criptografadas, descriptografe e verifique a mensagem em duas etapas, primeiro chamando `openpgp.decrypt` sem `verificationKeys` e, em seguida, passando a(s) assinatura(s) retornada(s) e uma nova mensagem contendo os dados descriptografados para `openpgp.verify`.