PT-2021-24273 · Nervos · Ckb

Publicado

2021-07-25

·

Atualizado

2022-01-06

·

CVE-2021-45699

CVSS v2.0

7.8

Alta

VetorAV:N/AC:L/Au:N/C:N/I:N/A:C
**Nome do software vulnerável e versões afetadas:
Versões do crate ckb anteriores à 0.40.0
Descrição:
A vulnerabilidade permite que invasores remotos realizem um ataque de 51% contra a blockchain Nervos CKB, provocando uma incapacidade de alocar memória para o HashMap de comportamentos inadequados. No protocolo de sincronização do ckb, um HashMap chamado ‘misbehavior’ mantém uma pontuação das violações do protocolo por parte de um peer, indexada pelo PeerIndex, e as entradas nunca são removidas dele. Um invasor remoto pode manipular esse HashMap para que ele cresça indefinidamente, resultando em desempenho degradado e, por fim, em um erro de pânico devido à falha na alocação ou ao encerramento pelo sistema operacional. Isso poderia ser explorado para criar uma negação de serviço direcionada ou em toda a rede, a fim de reduzir o poder de hash da rede como parte de um ataque de 51%.
Recomendações:
Para versões anteriores à 0.40.0, atualize para a versão 0.40.0 ou posterior para resolver o problema. Como solução temporária, considere implementar medidas para limitar o crescimento do HashMap “misbehavior”, como remover entradas após um determinado período de inatividade ou implementar limitação de taxa em novas conexões. Restrinja o acesso ao protocolo de sincronização ckb para minimizar o risco de exploração. Evite usar a solicitação SendHeaders para blocos não consecutivos até que o problema seja resolvido.

Correção

Resource Exhaustion

Allocation of Resources Without Limits

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

Enumeração de Fraquezas

Identificadores relacionados

CVE-2021-45699
GHSA-2969-8HH9-57JC
GHSA-48VQ-8JQV-GM6F
RUSTSEC-2021-0108

Produtos afetados

Ckb