A antiga carteira de software de Bitcoin Electrum publicou um aviso de segurança em 24 de outubro, alertando que servidores maliciosos podem transferir bitcoins para endereços dos atacantes enquanto os usuários tentam acelerar transações — e que «alguns servidores já estão realizando esse tipo de ataque». No mesmo dia, a equipe lançou a versão de correção 4.8.3. Pelo menos um usuário já foi vítima, mas o valor perdido não foi divulgado.
Servidor malicioso retém a transação verdadeira e a substitui por uma falsa, sem taxa
A Electrum é uma carteira leve: não baixa toda a blockchain do Bitcoin, e consultas ao histórico de transações e a transmissão de transações dependem de servidores externos. As perguntas frequentes oficiais já informam que, por padrão, a carteira se conecta a cerca de 10 servidores, sendo um deles o servidor principal. As transações já registradas na blockchain são verificadas por meio da verificação simplificada de pagamentos (SPV), enquanto, para transações não confirmadas, a carteira confia diretamente nas informações fornecidas por esse servidor principal.
Conforme explicado no aviso, depois de o utilizador transmitir uma transação, um servidor malicioso retém-na e não a encaminha para a rede Bitcoin. Em seguida, substitui-a no histórico da carteira por uma transação falsa e conflitante, cujo endereço de destino é alterado para o do atacante. A assinatura desta transação falsa é inválida, mas as versões antigas do Electrum não verificam as assinaturas de transações não confirmadas. Assim, a carteira mostra apenas a transação falsa, enquanto a verdadeira fica oculta.
Se o utilizador pensar que a transação ficou bloqueada e usar a funcionalidade «Replace-by-Fee» (RBF) para aumentar a taxa, o Electrum assinará uma nova transação válida em substituição da falsa, e o dinheiro será enviado ao atacante. O aviso refere que, num dos casos, a taxa da transação falsa foi definida como zero, o que os programadores acreditam ter sido uma tentativa de levar o utilizador a aumentá-la. Ambos os denunciantes também constataram que os últimos quatro caracteres do endereço do atacante foram deliberadamente escolhidos para serem iguais aos do endereço de destino original.
Primeira denúncia a 11 de outubro; vítima perdeu fundos após aumentar a taxa no dia 18
O aviso apresenta a seguinte cronologia: a 11 de outubro, o primeiro utilizador comunicou o problema em privado: após transmitir uma transação, surgiu outra no histórico da carteira e a transação original não foi enviada para a rede Bitcoin. Na altura, porém, os programadores não perceberam que o aumento da taxa podia ser usado como vetor de ataque; a 18 de outubro, um utilizador com a conta GitHub Raju-K12 denunciou que perdeu fundos depois de aumentar a taxa de uma transação substituída; a 23 de outubro, a correção foi identificada como versão 4.8.3; a 24 de outubro, o instalador foi disponibilizado e a vulnerabilidade foi divulgada publicamente.
Segundo a CoinDesk, o primeiro denunciante usava uma carteira multisig 2 de 3, associada a duas hardware wallets Trezor. O conteúdo correto do pagamento foi confirmado em ambos os dispositivos, mas, posteriormente, surgiu outra transação de saída no histórico. Este utilizador não comunicou qualquer perda.
A versão 4.8.3 verifica apenas as transações que gastam fundos de endereços do próprio utilizador; as transações recebidas continuam sem verificação
A correção verifica as assinaturas das entradas que gastam fundos de endereços do próprio utilizador antes de adicionar transações não confirmadas ao histórico da carteira. O aviso também esclarece que o âmbito da correção é limitado: as transações recebidas de terceiros continuam sem ser verificadas, porque o Electrum não dispõe de um motor de validação de consenso completo. Para as verificar, seria necessário analisar todas as transações não confirmadas anteriores, até chegar a uma transação já incluída na blockchain. As transações já incluídas na blockchain, por sua vez, já são verificadas por SPV.
Os programadores recomendam que os utilizadores atualizem para a versão 4.8.3. Quem ainda não puder atualizar deve verificar o endereço de destino e o montante sempre que assinar uma transação, quer aumente a taxa ou não. Os utilizadores que se ligam a servidores próprios ou de confiança não são afetados por este ataque. O aviso não identifica o servidor usado no ataque nem divulga o montante das perdas.
O artigo «Vulnerabilidade na carteira Electrum: servidor malicioso desvia bitcoins quando os utilizadores aceleram transações» foi publicado originalmente em .
【Análise complementar】
【A minha perspetiva complementar】
Esta vulnerabilidade expõe um risco estrutural fundamental das carteiras leves (SPV Wallet): a dependência excessiva de servidores externos para fornecer uma visão das transações não confirmadas. O atacante explorou a assimetria de informação e a ansiedade dos utilizadores perante uma «transação bloqueada», combinando habilmente estes fatores com o mecanismo RBF para transferir fundos. Isto demonstra que a segurança não exige apenas proteção contra a exposição de chaves privadas: é também necessário evitar que as aplicações cliente confiem cegamente nos dados devolvidos pelos nós. Mesmo com uma carteira multisig e hardware wallets, se a interface for manipulada, o utilizador pode autorizar uma transação maliciosa sem se aperceber.
【Impacto no mercado】
No ecossistema da Bitcoin (BTC) e das criptomoedas relacionadas, o impacto a curto prazo tende a ser neutro a ligeiramente negativo. Embora o protocolo da rede principal da Bitcoin não tenha sido comprometido e não exista uma crise ao nível do consenso, esta vulnerabilidade abala a confiança dos utilizadores numa carteira de software veterana e pode levar à transferência de fundos para carteiras de nó completo mais seguras ou para hardware wallets populares. Para as empresas cotadas nos EUA ou em Taiwan ligadas à blockchain, bem como para as entidades de custódia de criptomoedas, o impacto financeiro direto é limitado. No entanto, o incidente pode elevar indiretamente o nível de escrutínio do mercado sobre a segurança da custódia de ativos digitais e do software sujeito a requisitos de conformidade.
【O que acompanhar】
É importante acompanhar de perto os futuros relatórios de auditoria de segurança do Electrum e verificar se são descobertas técnicas de exploração semelhantes noutras carteiras leves. Deve também acompanhar-se a taxa de adoção da versão 4.8.3 pela comunidade e observar se os atacantes irão explorar a vulnerabilidade ainda não corrigida relativa às «transações recebidas» para desenvolver outras variantes de ataque.
【Alerta de risco】
Se o software da carteira não for atualizado atempadamente, os utilizadores poderão voltar a perder fundos ao transferir bitcoins ou ao acelerar transações com RBF. Recomenda-se que, em qualquer transação de blockchain, os utilizadores confirmem o estado real da transação na cadeia através de um explorador de blockchain independente e de confiança, em vez de dependerem apenas das informações sobre transações não confirmadas apresentadas pela interface da carteira.