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

VetorAV: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 key dentro do Libp2pRecord é 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 em packages/kad-dht/src/rpc/index.ts permite 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 👾

Enumeração de Fraquezas

Identificadores relacionados

CVE-2026-45783
GHSA-32MQ-HPPH-XFVR

Produtos afetados

@Libp2P/Kad-Dht
Js-Libp2P