CryptoTimes

Falha faz com que nós da Ethereum processem transações em versões distintas do software

27 ago 2021, 14:01 - atualizado em 27 ago 2021, 14:01
ethereum
A preocupação é que a falha possa resultar em ataques de gasto duplo, quando criptomoedas são gastas, mas a transação é substituída pelo blockchain alternativo (Imagem: Ethereum)

Clientes ou “nós são softwares que se conectam a outros clientes de ponto a ponto. Já que todos esses clientes se comunicam, formam uma rede, em que cada cliente é um nó. Esses software são responsáveis pela verificação e transmissão de blocos à rede Ethereum.

Go Ethereum (Geth) é uma dentre três implementações originais (junto com as linguagens de programação C++ e Python) do protocolo Ethereum. É fundamental na operação de contratos autônomos e aplicações sem a interferência externa, atrasos, censura ou fraude.

Uma falha nas versões anteriores do cliente Geth da rede Ethereum acabou separando nós que operavam essas versões da rede principal — numa espécie de bifurcação (“fork”).

A falha impactou versões antigas dos clientes Geth, mais especificamente a versão 1.10.7 e as anteriores. Totalizam quase 75% de todos os nós da Ethereum e 73% dos clientes Geth ainda estão executando versões antigas.

Isso significa que cerca de 54% dos nós da Ethereum estão operando uma grande falha de infraestrutura.

A preocupação é que isso possa resultar em ataques de gasto duplo (do inglês “double spending attacks”) — quando criptomoedas são gastas, mas a transação é substituída pelo blockchain alternativo.

A equipe do The Block Research identificou um endereço que se aproveitou da falha, fundado por um cliente do Tornado Cash.

A falha, que pode impactar outros blockchains compatíveis com a Ethereum Virtual Machine (EVM), também foi explorada no Binance Smart Chain (BSC) por outro endereço e no Huobi Eco Chain por um terceiro endereço. O blockchain Polygon parece não ter sido afetado.

EVM é um sistema que define quais são as regras computacionais para a validação de bloco em bloco.

CONTINUA DEPOIS DA PUBLICIDADE

O impacto da bifurcação

Embora uma parte dos nós tenha se dividido da rede, ainda parece não ter tido enormes ramificações. Parece que grande parte dos mineradores está executando versões atualizadas da Ethereum, ou seja, a taxa de hashes está fornecendo suporte ao blockchain mais longo (e antigo).

Em relação aos nós que estão operando versões anteriores do Geth, são incapazes de acessar a rede principal. Como consequência, embora exista a possibilidade de haver invasões, a rede parece estável.

Martin Swende, líder de segurança da Ethereum Foundation, tuitou:

Hoje, uma falha de consenso atingiu a rede principal da Ethereum, explorando a falha de consenso que havia sido consertada na  v1.10.8 do Geth. Felizmente, grande parte dos mineradores já atualizou [seu software] e o blockchain correto também é o mais longo (canônico).

Tim Beiko, um dos principais desenvolvedores da Ethereum, complementou, dizendo que três pools de mineração parecem estar minerando com a versão errada da Geth, incluindo Flexpool, BTC.com e Binance Pool.

Ele afirmou que Flexpool havia informado sobre o problema, então estava ciente da falha e que seus desenvolvedores estão entrando em contato com outros dois pools.

Encontrando a falha em uma auditoria

Essa falha foi encontrada em uma auditoria na Telos EVM, versão da Ethereum Virtual Machine executada no blockchain Telos, de acordo com um comunicado de imprensa.

Guido Vranken, auditor da Sentnl, responsável pela auditoria, havia encontrado a falha, chamando-a de “problema de alta gravidade”.

Depois que desenvolvedores da Ethereum foram informados sobre o problema, lançaram, em 24 de agosto, um pacote para consertá-lo. Porém, isso só ajuda aqueles que atualizaram seus nós.

O vetor exato de ataque será fornecido em outro momento para dar tempo para que operadores de nós e projetos dependentes de montantes [“downstreams”] atualizem seus nós e software.

Todas as versões do Geth que fornecem suporte à bifurcação drástica London estão vulneráveis (a falha é mais antiga que London), então todos os usuários devem executar a atualização.