Falha na Electrum permite que servidores maliciosos roubem bitcoin por meio de aumento de taxas
Uma falha de segurança na carteira Electrum permitiu que servidores maliciosos induzissem usuários a autorizar pagamentos em bitcoin a atacantes no momento em que tentavam aumentar as taxas de transação. Os desenvolvedores confirmaram ao menos um caso com fundos roubados.
A Electrum divulgou a vulnerabilidade no sábado e afirmou que alguns servidores já exploravam a brecha. Em outubro, os desenvolvedores receberam dois relatos, entre eles o de um usuário que perdeu fundos depois de aprovar o que parecia ser um aumento rotineiro de taxa.
Diferentemente de um nó completo do Bitcoin, a Electrum obtém históricos de transações e transmite pagamentos por meio de servidores externos. Antes da correção, a carteira aceitava informações de servidores sobre transações não confirmadas sem validar as assinaturas. Um atacante que controlasse um servidor podia interceptar um pagamento antes de ele chegar à rede Bitcoin e substituir a transação no histórico da carteira por uma falsa, direcionando as moedas do usuário para um endereço sob seu controle. A Electrum não detectava as assinaturas inválidas e exibia o pagamento falso como pendente.
O recurso Replace-by-Fee do Bitcoin permite trocar transações não confirmadas por outras que paguem taxas maiores. Ao escolher o Replace-by-Fee, a Electrum podia assinar uma substituição válida da transação fraudulenta e enviar as moedas ao atacante. Uma das transações maliciosas relatadas tinha taxa zero, o que criava a impressão de pagamento travado. Os atacantes também criaram endereços de destino com os mesmos quatro caracteres finais dos endereços pretendidos, o que torna a conferência visual rápida menos confiável.
O primeiro relato chegou em 11 de outubro e envolvia uma carteira multifirma 2-de-3 com dois dispositivos de hardware Trezor. O usuário verificou o pagamento pretendido nos dois aparelhos, mas depois encontrou uma transação de saída diferente no histórico da carteira. Esse primeiro usuário não relatou prejuízo. Em 18 de outubro, um segundo usuário informou que o aumento da taxa sobre uma transação substituída havia resultado em fundos roubados.
Os desenvolvedores não revelaram o valor desviado nem identificaram os servidores maliciosos. A Electrum lançou a versão 4.8.3 em 24 de outubro em resposta à vulnerabilidade. A atualização introduziu a validação de assinaturas para transações não confirmadas que gastam moedas pertencentes à carteira do usuário. A correção saiu seis dias após o primeiro roubo relatado. Versões mais antigas continuam vulneráveis ao ataque por meio de servidores maliciosos.
Os desenvolvedores recomendam atualizar o software e conferir endereços de destino e valores antes de autorizar pagamentos. Usuários que se conectavam exclusivamente a servidores confiáveis, inclusive operados por eles próprios, não foram expostos ao ataque.