Um atacante explorou uma falha de software na base de código Elements utilizada pela Liquid Network em 6 de setembro, cunhando aproximadamente 4 000 Liquid Bitcoin (LBTC) sem lastro e convertendo quase tudo em BTC real através do mecanismo normal de levantamento da Liquid. Mais tarde, o atacante devolveu 3 400 BTC, mas cerca de 598,5 BTC — avaliados em aproximadamente 47 milhões de dólares aos valores indicados — permanecem em endereços sob o seu controlo, sem qualquer acordo público que confirme tratar-se de uma recompensa pela deteção de um erro.
A exploração drenou cerca de 3 998,5 BTC da carteira de reserva multisig da Liquid, ou aproximadamente 95% do saldo de bitcoin da carteira na altura. Os levantamentos deixaram cerca de 197 BTC na carteira de reserva antes da devolução parcial. A Blockstream, empresa responsável pela Liquid Network e pelo software Elements, afirmou que continua a negociar com o atacante e procura recuperar os BTC restantes.
O incidente coloca o foco nas verificações de software que ligam os LBTC emitidos aos BTC detidos na reserva da Liquid. O acordo de custódia multisig 11 de 15 da Liquid não foi violado, segundo o relato do incidente. Em vez disso, o sistema autorizou levantamentos depois de LBTC fraudulentos entrarem no processo de peg-out e serem tratados como válidos.
LBTC falsos passaram por uma rota normal de peg-out
O atacante começou por cunhar LBTC sem que os BTC correspondentes fossem depositados na reserva da Liquid. Esse saldo contrafeito foi depois submetido ao processo padrão de peg-out da rede, que normalmente queima LBTC e liberta uma quantidade equivalente de BTC da carteira de reserva controlada pela federação.
Os levantamentos ocorreram em duas transações. A primeira movimentou aproximadamente 2,5 BTC, aparentemente servindo como teste da exploração. Uma segunda transferência levantou então cerca de 3 996 BTC. Em conjunto, as transações removeram quase todo o saldo da reserva disponível para o sistema de peg-out.
O mecanismo de peg-out da Liquid foi concebido para permitir que os detentores de LBTC troquem os seus ativos da cadeia lateral por Bitcoin nativo. O processo requer aprovações de uma federação de operadores que utiliza um acordo multisig 11 de 15. Pelo menos 11 signatários autorizados têm de aprovar um levantamento antes de os BTC poderem sair da reserva.
Neste caso, os signatários parecem ter aprovado transações que cumpriam os requisitos formais de levantamento, enquanto o sistema subjacente não conseguiu rejeitar LBTC inválidos. O episódio demonstra que um limiar multisig pode proteger o acesso a uma carteira de reserva sem provar, por si só, que todos os ativos apresentados para resgate foram criados validamente.
A Blockstream afirmou que o exploit não envolveu chaves privadas multisig divulgadas. A empresa afirmou também que a chave de autorização de peg-out utilizada pela SideSwap, um serviço relacionado com a Liquid, não foi roubada. Em vez disso, o atacante explorou a vulnerabilidade do Elements para criar LBTC inválidos e utilizou depois o fluxo previsto de queima e levantamento para obter BTC reais.
O contacto on-chain levou a uma devolução parcial
Depois de movimentar os fundos, o atacante colocou uma mensagem numa transação de Bitcoin através de OP_RETURN, um campo que pode armazenar uma pequena quantidade de dados arbitrários na blockchain. A mensagem dizia: “somos white hats. contactem-nos on-chain.”
A Blockstream respondeu enviando 1 000 satoshis para um endereço associado ao atacante e solicitando contacto. As comunicações prosseguiram posteriormente através de mensagens OP_RETURN de Bitcoin, assinaturas PGP e notas encriptadas.
O atacante afirmou que a maior parte dos fundos seria devolvida assim que fosse implementada uma correção e solicitou que os nós bridge fossem atualizados antes do reembolso. Após uma mensagem assinada afirmar que os nós bridge tinham sido corrigidos, o atacante devolveu 3 400 BTC à carteira multisig da Liquid a 7 de setembro.
Os aproximadamente 598,5 BTC restantes foram transferidos para outro endereço controlado pelo atacante. As mensagens públicas visíveis on-chain não incluíam um acordo que concedesse ao atacante autorização para manter esses fundos ou que os definisse como uma recompensa de segurança. A atualização mais recente da Blockstream sobre o incidente trata o saldo como ativos recuperáveis e afirma que as discussões continuam.
Esta distinção coloca o episódio numa categoria diferente da de uma vulnerabilidade divulgada convencional e de uma recompensa paga por um bug. Os investigadores de segurança demonstram habitualmente exploits com fundos limitados ou coordenam a divulgação antes de assumirem o controlo de ativos apoiados pelos utilizadores. Neste caso, o atacante obteve o controlo de quase 4 000 BTC antes de iniciar as comunicações e reteve uma parte substancial após o reembolso parcial.
Correção urgente visa peg-outs inválidos
A Blockstream planeou uma versão urgente do Elements, a v23.3.4, para corrigir a vulnerabilidade. É esperado que os operadores da Functionary, que ajudam a gerir a infraestrutura de federação da Liquid, modifiquem o comportamento da rede para que os peg-outs inválidos sejam rejeitados antes de o serviço normal ser retomado.
A Liquid ainda não tinha regressado totalmente às operações normais na atualização mais recente, e a Blockstream ainda não tinha definido um calendário confirmado para a restauração completa ou a recuperação dos BTC em falta. A resposta será provavelmente acompanhada de perto por instituições e serviços que utilizam a cadeia lateral para liquidação e emissão de ativos.
Lançada em 2018, a Liquid é uma cadeia lateral da Bitcoin concebida para uma liquidação mais rápida e confidencial entre as entidades participantes. Também suporta ativos emitidos, incluindo stablecoins e títulos tokenizados. O número de entidades envolvidas na governação e nas operações da Liquid aumentou de 23 para 87, enquanto o valor dos ativos do mundo real emitidos na rede ultrapassou os 5 mil milhões de dólares, de acordo com os números fornecidos.
A exploração não indica que a própria Bitcoin tenha sido comprometida. Os BTC levantados vieram da reserva da federação da Liquid, onde as bitcoins são mantidas para garantir os LBTC em circulação na cadeia lateral. No entanto, a perda demonstra como uma falha no processo de validação de ativos pode comprometer a cobertura de uma ponte, mesmo quando as chaves de assinatura da carteira de reserva permanecem seguras.
O próximo teste operacional da Liquid será saber se o seu software corrigido e os procedimentos da federação conseguem restabelecer a confiança de que cada LBTC resgatado corresponde a BTC efetivamente mantidos em reserva. A recuperação dos 598,5 BTC restantes reduziria o défice direto da reserva, enquanto a forma como for tratado o alegado estatuto de white hat do atacante moldará a forma como o incidente será visto em toda a comunidade de segurança.
Preocupado com ataques a pontes e os riscos das cadeias laterais? Aprofunde os seus conhecimentos de segurança com este guia sobre falhas de segurança em criptomoedas agora.
Aviso legal: O conteúdo desta página é fornecido apenas para fins informativos gerais e não representa as opiniões nem aconselhamento financeiro da Toobit. Não oferecemos quaisquer garantias quanto à exatidão ou integralidade destas informações e não seremos responsabilizados por quaisquer erros, omissões ou consequências resultantes da sua utilização. O investimento em ativos digitais envolve riscos; os utilizadores devem avaliar de forma independente a sua situação financeira e os riscos envolvidos. Para mais informações, consulte os nossos Termos de Serviço e Aviso de Risco.
