O milhão de dólares BSC Token Hub Bridge Hack Análise PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.

A análise de hack do Million Dollars BSC Token Hub Bridge

Tempo de leitura: 4 minutos

Resumo:

Em 7 de outubro de 2022, houve uma exploração afetando a ponte nativa de cadeia cruzada chamada “BSC Token Hub”. O bug está no verificador de prova da ponte. Um total de 2 milhões de BNB foi retirado e a Binance pausou temporariamente a BSC Network para evitar mais danos. Os fundos retirados do BSC são estimados entre US$ 100 milhões e US$ 110 milhões.

Introdução à Binance Smart Chain e Token Hub Bridge:

A Binance Smart Chain (BSC) é uma rede baseada em Blockchain usada para executar aplicativos enraizados em contratos inteligentes. O BSC funciona em paralelo com o Binance Chain (BC) nativo da Binance, permitindo que os usuários aproveitem a capacidade de transação rápida do BC, bem como os recursos de contrato inteligente do BSC.

Confira nosso artigo para mais detalhes.

Hub de token BSC:

O BSC Token Hub é a ponte de cadeia cruzada entre BNB Beacon Chain (BEP2) e BNB Chain (BEP20 ou BSC). Confira o oficial documentação da Binance para mais detalhes.

Análise de vulnerabilidade e impacto:

Detalhes da transação de ataque:

Endereço do hacker: 0x489a8756c18c0b8b24ec2a2b9ff3d4d447f79bec

1º Txn Hash: 0xebf83628ba893hd35b496121fb8201666b8e09f3cbadf0e269162baa72efe3b8b

2º Txn Hash: 0x05356fd06ce56a9ec5b4eaf9c075abd740cae4c21eab1676440ab5cd2fe5c57a

Contrato de Hub de Token BSC: 0x0000000000000000000000000000000000001004

Hash Txn original (com altura de bloco de 110217401): 0x79575ff791606ef2c7d69f430d1fee1c25ef8d56275da94e6ac49c9c4cc5f433

O inseto:

O BSC Token Hub usa um contrato pré-compilado para validar árvores IAVL (Immutable AVL) ao realizar a verificação de transações de cadeia cruzada. O explorador aproveitou um bug na lógica de verificação de prova adaptando uma prova legítima para fazer a ponte mint 2M BNB para eles.

A causa raiz parece ser esta linha:

O milhão de dólares BSC Token Hub Bridge Hack Análise PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.

O problema é que lpath.Right pode não ser usado no cálculo do hash raiz da árvore.

Para corrigir isso, a linha deve mudar

Desde:

```
if !bytes.Equal(derivedRoot, lpath.Right) ...

para algo como:

""

Para:

```
expectedHash := lpath.Left
 if len(lpath.Left) == 0 {
   expectedHash = lpath.Right }
 if !bytes.Equal(derivedRoot, expectedHash) ...

""

O ataque:

1. O invasor usou o hash de um bloco enviado com sucesso que foi feito há 2 anos (bloco especificado: 110217401) para construir uma carga útil como um nó folha para verificar a árvore IAVL. Os detalhes da transação original podem ser encontrados SUA PARTICIPAÇÃO FAZ A DIFERENÇA.

O milhão de dólares BSC Token Hub Bridge Hack Análise PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.
O milhão de dólares BSC Token Hub Bridge Hack Análise PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.

2. O Atacante injetou um nó folha contendo como Chave o pacoteSequence atual e como Valor o hash da carga útil maligna (ou seja, cunhando 1M BNB para seu endereço). Em seguida, adicione um nó interno vazio à folha para satisfazer a prova de implementação.

O milhão de dólares BSC Token Hub Bridge Hack Análise PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.

3. O invasor definiu o caminho da esquerda como Right no hash do nó folha recém-criado para tornar o hash raiz igual ao hash raiz enviado com sucesso e, finalmente, construiu a prova de retirada para o bloco específico e enviou a transação.

O milhão de dólares BSC Token Hub Bridge Hack Análise PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.

4. Depois de enviar a transação com sucesso e receber $ 1M BNB. O atacante repetiu os passos novamente e ganhou mais 1 milhão de BNB. O total foi de 2 milhões de BNB, ou seja, $ 570 milhões.

O milhão de dólares BSC Token Hub Bridge Hack Análise PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.

O atacante tentou 17 vezes cunhar 1M BNB, mas falhou 15 vezes e cunhou apenas 2M BNB. A razão para isso era que eles tinham uma competição com outras transações legítimas que executavam o explorador tx usando o mesmo packageSequence.

Após a exploração:

Poucas horas após o ataque, o CEO da Binance CZ anunciou o incidente por meio de um tweet e interrompeu a rede BSC para evitar mais danos.

Algumas horas depois, a Binance corrigiu o problema com a versão mais recente v1.1.15. Ele bloqueou o fluxo de fundos dos invasores colocando o endereço do invasor na lista negra.

A Binance colocou na lista negra o endereço do invasor no recente commit.

O milhão de dólares BSC Token Hub Bridge Hack Análise PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.

Situação dos fundos:

Ativos atuais mantidos pelo invasor em diferentes cadeias:

O milhão de dólares BSC Token Hub Bridge Hack Análise PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.

O Fluxo de Fundos:

O milhão de dólares BSC Token Hub Bridge Hack Análise PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.

Fonte da imagem: https://twitter.com/BeosinAlert/status/1578290676793384961/photo/1

Referência / Crédito Adicional:

https://github.com/emilianobonassi/bsc-hack-analysis-2022-10-06


Segurança Web3 - Necessidade da hora

Por que QuillAudits para segurança Web3?

QuillAuditorias está bem equipada com ferramentas e experiência para fornecer soluções de segurança cibernética economizando a perda de milhões em fundos.

9 Visualizações

Carimbo de hora:

Mais de Quilhash