PT-2020-16369 · Ethereum · Geth
Holiman
·
Publicado
2020-11-25
·
Atualizado
2025-08-08
·
CVE-2020-26241
CVSS v3.1
7.1
Alta
| Vetor | AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:L |
Nome do software vulnerável e versões afetadas
Versões do Geth anteriores à 1.9.17
Descrição
Trata-se de uma vulnerabilidade de consenso no Geth que pode ser usada para provocar uma divisão da cadeia, na qual os nós vulneráveis rejeitam a cadeia canônica. O contrato pré-compilado
dataCopy do Geth realizava uma cópia superficial ao ser invocado. Um invasor poderia implantar um contrato que escreve X em uma região de memória EVM R, depois chama 0x00..04 com R como argumento, em seguida sobrescreve R com Y e, finalmente, invoca o opcode RETURNDATACOPY. Quando esse contrato é invocado, um nó em conformidade com o consenso colocaria X na pilha EVM, enquanto o Geth colocaria Y.Recomendações
Atualize para a versão 1.9.17 ou superior para resolver o problema. Como solução temporária, considere restringir o uso do contrato
dataCopy até que um patch seja aplicado. Evite usar o opcode RETURNDATACOPY em conjunto com o contrato dataCopy para minimizar o risco de exploração.Correção
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Enumeração de Fraquezas
Identificadores relacionados
Produtos afetados
Geth