PT-2026-42028 · Npm+1 · @Libp2P/Kad-Dht+1
Publicado
2026-05-19
·
Atualizado
2026-06-11
·
CVE-2026-45783
CVSS v3.1
7.5
Alta
| Vetor | AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
Nome do Software Vulnerável e Versões Afetadas
libp2p versões anteriores a 16.2.6
Descrição
Um peer remoto não autenticado pode causar a exaustão do armazenamento em disco de qualquer nó
@libp2p/kad-dht operando em modo servidor. Isso ocorre quando um invasor envia um fluxo ilimitado de mensagens PUT VALUE usando chaves manipuladas que ignoram a validação de conteúdo. O problema decorre de dois defeitos: a função verifyRecord() aceita silenciosamente chaves que são divididas em menos de três partes delimitadas por barras, e o loop de mensagens RPC carece de limites de mensagens por fluxo, orçamentos de bytes por peer ou limitação de taxa, reiniciando o tempo limite de inatividade após cada mensagem bem-sucedida.Detalhes técnicos incluem:
- Endpoints de API: A vulnerabilidade afeta a camada RPC do DHT que processa mensagens
PUT VALUE. - Parâmetros ou Variáveis Vulneráveis: A variável
keydentro doLibp2pRecordé usada para ignorar a validação se contiver menos de dois caracteres/. - Nomes de Funções: A função
verifyRecord()falha ao não rejeitar chaves inválidas, e o loop RPC empackages/kad-dht/src/rpc/index.tspermite o processamento ilimitado de mensagens.
Isso pode levar ao preenchimento do datastore do nó vítima até que o disco do host seja exaurido, tornando o nó indisponível. Isso afeta nós IPFS, nós de bootstrap do libp2p e qualquer aplicação que exponha um endpoint DHT público.
Recomendações
Atualize para a versão 16.2.6.
Como mitigação temporária, restrinja o acesso ao endpoint DHT público ou desative o modo servidor definindo
clientMode: true para evitar o processamento de fluxos de entrada.Exploit
Correção
Resource Exhaustion
RCE
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Identificadores relacionados
Produtos afetados
@Libp2P/Kad-Dht
Js-Libp2P