PT-2021-24273 · Nervos · Ckb
Publicado
2021-07-25
·
Atualizado
2022-01-06
·
CVE-2021-45699
CVSS v2.0
7.8
Alta
| Vetor | AV: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 👾
Identificadores relacionados
Produtos afetados
Ckb