Ainda há especialistas; eles analisaram como a Binance foi hackeada desta vez na blockchain Ethereum, e acho que agora entendi o que aconteceu
O hack desta vez aconteceu na etapa da assinatura, não na chave privada
No Ethereum, há um recurso chamado 7702 que permite que uma carteira comum assine uma autorização e transfira a administração da conta para um contrato inteligente
É como se você estivesse redigindo uma procuração dizendo: a partir de hoje, o programa de outra pessoa ficará responsável por administrar a conta e, sempre que entrar dinheiro nela, irá transferi-lo para fora
Depois de assinar a autorização, você deixa de controlar a conta
Essa autorização entra em vigor em um número específico
Cada carteira tem um contador chamado nonce, que aumenta em um a cada transação enviada
A autorização está vinculada a um número específico e só entra em vigor quando a conta chega a esse número; depois, é invalidada após ser usada uma vez
Os atacantes não sabiam a que número a carteira da Binance havia chegado naquele momento, pois ela enviava transações constantemente
Por isso, fizeram a Binance assinar 50 autorizações consecutivas de uma só vez, uma após a outra, na esperança de acertar o número correto
Basta que uma das 50 autorizações corresponda ao número atual para que entre em vigor
E foi exatamente isso que aconteceu
O que é realmente mais preocupante é que foi a própria Binance que assinou essas 50 autorizações
É possível ver os números consecutivos na blockchain, o que indica que foram assinadas de uma só vez, em um período extremamente curto
A Blockaid acredita que o ocorrido se parece mais com um uso indevido da chave do que com seu roubo
A chave privada ainda está nas mãos da Binance, mas os atacantes fizeram o sistema de assinatura acreditar que essas 50 transações mereciam ser assinadas
Assim que a autorização entrou em vigor, aquela carteira deixou de ser uma carteira comum
Mas tornou-se uma porta de entrada para o contrato dos atacantes, que tinha uma única função: retirar e transferir todas as moedas e todo o ETH, deixando apenas 1 ETH
Foi mantido 1 ETH para que a conta continuasse podendo enviar transações; se alguém lhe enviasse mais fundos, eles seriam retirados da mesma forma
Não foi um roubo pontual, mas uma retirada contínua de fundos
Ao mesmo tempo, os fundos saíam das hot wallets da Binance em várias blockchains
Isso significa que os atacantes não obtiveram uma carteira específica, mas sim uma capacidade de assinatura que lhes permitia afetar várias carteiras ao mesmo tempo
Nos últimos dez anos, os roubos em plataformas de negociação ocorreram devido ao vazamento de chaves privadas ou frases de recuperação, ou ao envolvimento de funcionários internos
Desta vez, porém, nada foi roubado; foi o próprio sistema que assinou
Depois do 7702, uma única assinatura passou a poder fazer muito mais do que apenas uma transferência. Uma após a outra, na esperança de acertar o número correto

Basta que uma das 50 autorizações corresponda ao número atual para que entre em vigor
E foi exatamente isso que aconteceu
O que é realmente mais preocupante é que foi a própria Binance que assinou essas 50 autorizações
É possível ver os números consecutivos na blockchain, o que indica que foram assinadas de uma só vez, em um período extremamente curto
A Blockaid acredita que o ocorrido se parece mais com um uso indevido da chave do que com seu roubo
A chave privada ainda está nas mãos da Binance, mas os atacantes fizeram o sistema de assinatura acreditar que essas 50 transações mereciam ser assinadas
Assim que a autorização entrou em vigor, aquela carteira deixou de ser uma carteira comum
Mas tornou-se uma porta de entrada para o contrato dos atacantes, que tinha uma única função: retirar e transferir todas as moedas e todo o ETH, deixando apenas 1 ETH
Foi mantido 1 ETH para que a conta continuasse podendo enviar transações; se alguém lhe enviasse mais fundos, eles seriam retirados da mesma forma
Não foi um roubo pontual, mas uma retirada contínua de fundos
