Falha da Coldcard é associada a perdas de US$ 88,6 milhões em Bitcoin
- Cyber Security Brazil
- há 2 dias
- 4 min de leitura

Uma falha na geração de chaves de carteiras de hardware Coldcard foi associada a uma série de transferências suspeitas que movimentaram 1.367,05 bitcoins, avaliados em cerca de US$ 88,6 milhões, a partir de 4.585 endereços. A vulnerabilidade afetava diferentes modelos do dispositivo, fabricado pela empresa canadense Coinkite.
A primeira movimentação identificada ocorreu em 30 de julho, quando 1.196 endereços foram esvaziados em apenas 41 minutos. A operação transferiu 1.082,65 BTC, avaliados em aproximadamente US$ 70,2 milhões naquele momento.
Posteriormente, a Galaxy Research identificou outras duas ondas possivelmente relacionadas à falha, elevando o total observado. A empresa afirmou que as duas primeiras ondas podem ter sido realizadas pelo mesmo operador devido às semelhanças nos padrões das transações, mas alertou que a terceira não deve ser automaticamente atribuída ao mesmo invasor.
A Galaxy também ressaltou que as conclusões são baseadas em análise da blockchain. Até o momento, não houve confirmação computacional de que todos os endereços identificados tenham sido gerados por dispositivos Coldcard com entropia insuficiente.
A origem do problema remonta a um erro de integração de firmware introduzido em março de 2021. Em vez de utilizar o gerador físico de números aleatórios do microcontrolador STM32, responsável por fornecer entropia para a criação das palavras-semente, o sistema encaminhava a operação para um gerador pseudoaleatório determinístico em software.
Segundo a análise da Block, um atacante capaz de descobrir ou limitar suficientemente o identificador único do dispositivo, o estado dos temporizadores e o histórico anterior de chamadas ao gerador poderia reproduzir possíveis sequências de números aleatórios sem ter acesso físico à carteira.
Os candidatos a seed poderiam então ser testados por meio da derivação dos respectivos endereços e da comparação com dados públicos da blockchain. Esse processo permitiria identificar carteiras reais e, posteriormente, tentar movimentar os fundos armazenados nelas.
A falha estava relacionada à configuração de produção da Coldcard. O parâmetro MICROPY_HW_ENABLE_RNG era definido como zero porque a Coinkite utilizava sua própria implementação para acessar o gerador de números aleatórios do hardware.
No entanto, a biblioteca libngu verificava apenas se o parâmetro existia, e não se estava ativado. Como consequência, o firmware era vinculado ao gerador alternativo Yasmarang, disponível no MicroPython.
Esse mecanismo era inicializado com dados como o identificador exclusivo do chip e registradores de temporização, sem coletar nova entropia após a inicialização. Como os valores utilizados podiam ser parcialmente previsíveis, o espaço de possíveis seeds era consideravelmente menor do que o esperado.
A Coinkite estima que a entropia efetiva era de aproximadamente 40 bits nos dispositivos Coldcard Mk3 e de cerca de 72 bits nos modelos Mk4, Mk5 e Q. Uma seed BIP-39 padrão com 12 palavras deveria oferecer até 128 bits de entropia.
A Block, porém, não apresentou uma estimativa única sobre o custo prático do ataque. A análise define limites condicionais inferiores a 2^40,7 e 2^73,3 possibilidades, mas ressalta que o segundo número não equivale necessariamente a 73 bits reais de segurança criptográfica.
Nenhum benchmark público de força bruta foi divulgado. Nos modelos mais recentes, um processo adicional de reinicialização do gerador aumenta o número de candidatos, mas a viabilidade do ataque depende de informações disponíveis sobre o identificador do dispositivo, o tempo de inicialização, chamadas anteriores ao gerador e o custo de derivação dos endereços.
A exposição depende da versão do firmware utilizada no momento em que a seed foi criada, e não apenas da versão atualmente instalada no dispositivo.
Nos modelos Mk2 e Mk3, a Coinkite lista as versões 4.0.1 a 4.1.9 do Mk3 como afetadas, com correção na versão 4.2.0. A empresa não menciona especificamente o Mk2, enquanto a Block considera que os modelos Mk2 e Mk3 com versões entre 4.0.0 e 4.1.9 seguiram o caminho vulnerável.
Nos dispositivos Mk4 e Mk5, todas as versões anteriores à 5.6.0 são consideradas afetadas. No modelo Q, o problema está presente em versões anteriores à 1.5.0Q.
Compilações experimentais ou de borda anteriores à versão 6.6.0X nos modelos Mk4 e Mk5 e anteriores à 6.6.0QX no Coldcard Q também estão incluídas na lista.
A Coinkite distribuiu em 31 de julho atualizações emergenciais de firmware para todos os modelos e canais de lançamento afetados. A instalação do novo software, contudo, não corrige uma seed que já tenha sido gerada com entropia insuficiente.
A recomendação para proprietários potencialmente expostos é criar uma nova seed em um dispositivo com firmware atualizado e transferir os bitcoins para os novos endereços. Restaurar a seed antiga em outro dispositivo ou em uma versão corrigida do firmware preserva a vulnerabilidade.
A empresa afirma que seeds criadas com pelo menos 50 lançamentos de dados justos, independentes e realizados de forma privada não estão expostas exclusivamente por causa dessa falha. Quando não houver certeza sobre a quantidade, aleatoriedade ou privacidade dos lançamentos, a orientação é migrar os fundos.
Uma passphrase BIP-39 forte e exclusiva cria uma carteira separada que não pode ser acessada apenas com as palavras da seed. Mesmo nesses casos, a Coinkite recomenda substituir a seed potencialmente vulnerável.
Configurações multisig podem reduzir o risco apenas quando o número necessário de assinaturas não depende exclusivamente de dispositivos afetados. Produtos como TAPSIGNER, OPENDIME e SATSCARD utilizam bases de código diferentes e não foram impactados.
Nenhum responsável pelas transferências foi identificado. Na primeira onda, a Galaxy observou que os endereços foram movimentados com uma taxa de 30 satoshis por byte virtual e sem endereços de troco, um padrão não encontrado em outras transações de Bitcoin analisadas nos 30 dias anteriores.
A empresa advertiu, entretanto, que esse padrão identifica a operação, mas não comprova o furto. Uma transferência realizada pelo proprietário legítimo das moedas poderia apresentar características semelhantes.
A atividade continuava em andamento durante a análise. A Galaxy informou ter enviado cerca de 600 endereços suspeitos de serem controlados pelos invasores a investigadores federais, empresas de compliance e especialistas em segurança cibernética.
A divulgação ocorre poucas semanas após a pesquisa Ill Bloom, da Coinspect, detalhar outra vulnerabilidade de geração pseudoaleatória em carteiras de software antigas. Essa falha separada foi associada ao desvio de mais de US$ 5 milhões em endereços das redes Bitcoin, Ethereum, Tron, Rootstock e Polygon desde maio.

