Múltiplas vulnerabilidades zero-day nomeadas 'BitForge' na implementação de protocolos criptográficos amplamente usados, como GG-18, GG-20 e Lindell 17, afetaram provedores populares de carteira de criptomoedas, incluindo Coinbase, ZenGo, Binance e muitos outros.
Essas vulnerabilidades poderiam permitir que invasores roubassem ativos digitais armazenados nas carteiras afetadas em segundos sem a necessidade de interação com o usuário ou o vendedor.
As falhas foram descobertas pela equipe de pesquisa de criptografia da Fireblocks em maio de 2023, que coletivamente as nomeou 'BitForge'.
Hoje, os analistas divulgaram publicamente o BitForge na apresentação do BlackHat "Small Leaks, Billions Of Dollars: Practical Cryptographic Exploits That Undermine Leading Crypto Wallets", pelo qual, nesse momento, Coinbase e ZenGo já aplicaram correções para resolver o problema.
No entanto, a Fireblocks afirma que a Binance e dezenas de outros provedores de carteira permanecem vulneráveis ao BitForge, com a Fireblocks criando um verificador de status para projetos verificarem se estão expostos a riscos devido a implementações impróprias do protocolo de computação multi-parte (MPC).
A primeira falha (
CVE-2023-33241
) descoberta pela Fireblocks afeta os esquemas de assinatura de limiar GG18 e GG20 (TSS), que são considerados pioneiros e também fundamentais para a indústria de carteiras MPC, permitindo que várias partes gerem chaves e co-assinem transações.
Os analistas da Fireblocks descobriram que, dependendo dos parâmetros de implementação, é possível para um invasor enviar uma mensagem especialmente criada e extrair pedaços de chave em pedaços de 16 bits, recuperando a chave privada inteira da carteira em 16 repetições.
A falha vem de uma falta de verificação do módulo Paillier do invasor (N) e do status de sua criptografia com base na existência de pequenos fatores ou biprimes.
"Se explorada, a vulnerabilidade permite que um agente de ameaça interagindo com os signatários no protocolo TSS roube seus pedaços secretos e, finalmente, obtenha a chave secreta mestra", lê o relatório da Fireblocks.
"A gravidade da vulnerabilidade depende dos parâmetros de implementação, então diferentes escolhas de parâmetros dão origem a diferentes ataques com diferentes graus de esforço/recursos necessários para extrair a chave completa."
A vulnerabilidade descoberta no protocolo Lindell17 2PC (
CVE-2023-33242
) é de natureza semelhante, permitindo que um invasor extraia a chave privada inteira após aproximadamente 200 tentativas de assinatura.
A falha reside na implementação do protocolo 2PC, em vez do protocolo em si, e se manifesta por meio de um manuseio inadequado de abortos por carteiras, o que as obriga a continuar assinando operações que inadvertidamente expõem bits da chave privada.
O ataque que explora essa falha é "assimétrico", o que significa que pode ser explorado corrompendo o cliente ou o servidor.
No primeiro cenário, o invasor corrompe o cliente para fazê-lo enviar comandos para o servidor em seu nome, o que revelará um pouco da chave secreta do servidor.
A Fireblocks diz que 256 tentativas desse tipo são necessárias para reunir dados suficientes para reconstruir a participação secreta inteira do servidor.
No entanto, como não há limite em vigor, o invasor pode cutucar o servidor com muitos pedidos de sucesso rápido, para que o ataque possa ser realizado em um curto período de tempo.
O segundo cenário atinge a chave secreta do cliente, usando um servidor comprometido para recuperá-la por meio de mensagens especialmente criadas.
Novamente, são necessárias 256 solicitações para extração completa da chave.
Os analistas também publicaram dois exploits de prova de conceito (PoC) para cada um dos protocolos no GitHub.
A Coinbase disse ao BleepingComputer que corrigiu as falhas em sua solução Wallet as a Service (WaaS) após as falhas serem divulgadas, agradecendo aos pesquisadores por sua divulgação responsável.
"Gostaríamos de agradecer à Fireblocks por identificar e divulgar de maneira responsável este problema.
Embora os clientes e fundos da Coinbase nunca estivessem em risco, manter um modelo criptográfico totalmente sem confiança é um aspecto importante de qualquer implementação de MPC", disse Jeff Lunglhofer, diretor de segurança da informação na Coinbase.
"Definir um alto padrão de segurança para a indústria protege o ecossistema e é crucial para a adoção mais ampla dessa tecnologia."
Publicidade
O curso Python Básico da Solyd oferece uma rápida aproximação à linguagem Python com diversos projetos práticos. Indo do zero absoluto até a construção de suas primeiras ferramentas. Tenha também suporte e certificado gratuitos. Saiba mais...