Carteira Electrum corrige vulnerabilidade de segurança; hackers roubam bitcoins

A Electrum lançou a versão 4.8.3 para corrigir uma vulnerabilidade crítica em sua carteira de bitcoin. Os desenvolvedores confirmaram que servidores maliciosos exploraram a falha para redirecionar pagamentos de usuários e que ao menos um caso de roubo de fundos foi registrado. O problema está na forma como a carteira lida com transações de bitcoin ainda não confirmadas. O atacante intercepta uma transação enviada pelo usuário por meio de um servidor malicioso e a altera antes que ela chegue à rede Bitcoin. Depois de bloquear a transmissão original, ele envia à carteira uma transação alternativa, com o endereço do destinatário trocado por outro sob seu controle. Embora as assinaturas dessas transações alternativas sejam inválidas, as versões vulneráveis do Electrum não as verificam antes de exibi-las no histórico da carteira. A fraude se torna perigosa quando o usuário tenta aumentar a taxa da transação usando o Replace-by-Fee (RBF), recurso do Bitcoin que permite substituir uma transação não confirmada por outra com taxa maior. Ao aprovar o ajuste, a vítima pode assinar sem perceber uma transação válida que paga ao atacante. A Electrum é uma carteira leve de bitcoin: conecta-se a servidores externos para recuperar o histórico de transações, transmitir pagamentos e obter outras informações da rede, em vez de processar por conta própria toda a atividade da blockchain, como faz um nó completo. Segundo a documentação do projeto, a carteira valida transações confirmadas por meio de Verificação Simples de Pagamento (SPV), mas historicamente confiava em seu servidor principal para exibir transações não confirmadas. Ataques reais Os desenvolvedores relataram dois incidentes comunicados de forma privada. Em 11 de outubro, o usuário dannydeezy informou que uma transação exibida no histórico do Electrum não correspondia ao pagamento originalmente enviado. Em 18 de outubro, outro usuário, RajuK12, perdeu fundos ao tentar aumentar a taxa de uma transação e procurou os desenvolvedores. Nos dois casos, os endereços de recebimento eram controlados pelos atacantes e foram construídos para coincidir com os quatro últimos caracteres do endereço do destinatário pretendido. No segundo incidente, a transação fraudulenta tinha taxa zero, o que levou os desenvolvedores a suspeitar de uma armadilha para induzir a vítima a iniciar o aumento de taxa. O primeiro caso envolvia uma carteira multifirma 2-de-3 com dois dispositivos Trezor. A transação legítima tinha 31 entradas e uma saída. As investigações mostraram que as 62 assinaturas eram válidas para o pagamento original, mas inválidas para a transação substituta. A transação forjada transferiu quase todos os bitcoins para um endereço semelhante, devolvendo apenas uma pequena parte à carteira. A transação original continua válida, mas nunca chegou à rede pública do Bitcoin. A Electrum reconhece que alguns servidores de fato executam esse ataque. Os desenvolvedores não informaram quantos servidores estão envolvidos, o valor roubado nem se há outras vítimas identificadas. A correção A versão 4.8.3, que traz a correção, foi finalizada em 23 de outubro, com os arquivos binários disponibilizados no dia 24. No commit 90fe308, o desenvolvedor introduziu a verificação de assinaturas para transações não confirmadas cujas entradas são controladas pela carteira do usuário. A partir de agora, o Electrum verifica as assinaturas antes de incluir essas transações no histórico local, impedindo que pagamentos fraudulentos de saída sejam exibidos como legítimos. A atualização não transforma o Electrum em um nó completo do Bitcoin. Os desenvolvedores observam que transações de entrada não confirmadas seguem fora do novo mecanismo de verificação e que pagamentos confirmados continuam usando o processo de validação já existente. Usuários com versões anteriores à 4.8.3 devem baixar a atualização no site oficial do Electrum. Para quem não pode atualizar de imediato, a recomendação é conferir o endereço completo do destinatário e o valor antes de assinar, inclusive em transações de substituição de taxa. Segundo o comunicado, quem se conecta apenas a servidores confiáveis, incluindo servidores próprios, não é afetado por esse ataque específico. Histórico de riscos Ataques anteriores ao Electrum mostram que o risco ligado a servidores é recorrente. Em dezembro de 2018, o crypto.news noticiou que servidores maliciosos exibiam avisos falsos de atualização de software aos usuários; na época, as perdas foram estimadas em quase US$ 1 milhão. Outra onda de ataques com servidores maliciosos, em 2019, usou falsas atualizações de carteira e ações de negação de serviço para direcionar usuários a softwares comprometidos. Esses ataques dependem de downloads enganosos. A falha recém-corrigida, por sua vez, manipula informações de transações pendentes dentro de uma carteira que, fora isso, é legítima. Um artigo de 2020 com uma entrevista sobre os servidores do Electrum já discutia os trade-offs das carteiras leves, entre eles a dependência de infraestrutura externa para o histórico de transações. A própria documentação do Electrum afirma que o cliente costuma se conectar a cerca de dez servidores, mas escolhe um servidor principal para obter o histórico da carteira e transmitir transações, e que esse servidor principal é tratado como confiável no que diz respeito a transações não confirmadas.