PT-2020-14176 · Tendermint · Tendermint

Melekes

·

Publicado

2020-07-02

·

Atualizado

2021-12-20

·

CVE-2020-15091

CVSS v3.1

6.5

Média

VetorAV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Nome do software vulnerável e versões afetadas
Versões 0.33.0 a 0.33.5 do TenderMint
Descrição
A falha permite que proponentes de blocos incluam assinaturas para o bloco errado, o que pode ocorrer naturalmente se uma rede for iniciada, funcionar por algum tempo e, em seguida, reiniciada sem alterar o chainID. Um proponente de blocos mal-intencionado, mesmo com uma participação mínima, pode usar isso para interromper completamente a rede. O problema foi corrigido no TenderMint 0.33.6, que verifica todas as assinaturas do bloco com uma maioria de 2/3+ antes de criar um commit. Essa vulnerabilidade também pode levar a uma situação em que os proponentes possam alegar que todos os outros validadores assinaram um bloco ao incluir um CommitSig com dados de assinatura arbitrários, impactando potencialmente a lógica de incentivo em aplicativos que dependem do LastCommitInfo.
Recomendações
Para as versões 0.33.0 a 0.33.5 do TenderMint, atualize para a versão 0.33.6 para corrigir o problema. Como solução temporária, considere restringir a capacidade dos proponentes de blocos de incluir assinaturas para o bloco errado até que um patch esteja disponível. Evite usar a funcionalidade vulnerável nos endpoints da API afetados até que o problema seja resolvido.

Exploit

Correção

Improper Verification of Cryptographic Signature

Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾

Enumeração de Fraquezas

Identificadores relacionados

CVE-2020-15091
GHSA-6JQJ-F58P-MRW3
GO-2021-0090

Produtos afetados

Tendermint