PT-2024-33278 · Unknown · Secp256K1-Node

Chalker

·

Publicado

2024-10-21

·

Atualizado

2024-10-28

·

CVE-2024-48930

CVSS v4.0

8.7

Alta

VetorAV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Nome do software vulnerável e versões afetadas
Versões do secp256k1-node anteriores à 5.0.1
Versões do secp256k1-node anteriores à 4.0.4
Versões do secp256k1-node anteriores à 3.8.1
Descrição
A vulnerabilidade afeta a versão baseada em elliptic do secp256k1-node, na qual a função loadCompressedPublicKey não possui uma verificação para garantir que a chave pública esteja na curva. Isso permite que um invasor utilize chaves públicas em curvas de baixa cardinalidade para extrair informações suficientes para restaurar totalmente a chave privada a partir de apenas 11 sessões ECDH, com um custo muito baixo em termos de poder de computação. Outras operações em chaves públicas também são afetadas, incluindo publicKeyVerify() retornando incorretamente true nessas chaves inválidas, e publicKeyTweakMul() também retornando resultados previsíveis, permitindo restaurar o tweak.
Recomendações
Para versões anteriores à 5.0.1, atualize para a versão 5.0.1 ou posterior.
Para versões anteriores à 4.0.4, atualize para a versão 4.0.4 ou posterior.
Para versões anteriores à 3.8.1, atualize para a versão 3.8.1 ou posterior.
Como solução temporária, considere desativar a função loadCompressedPublicKey até que um patch esteja disponível.
Restrinja o acesso às funções publicKeyVerify() e publicKeyTweakMul() para minimizar o risco de exploração.
Evite usar a função publicKeyTweakMul() com chaves públicas não confiáveis até que o problema seja resolvido.

Exploit

Correção

Information Disclosure

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

Enumeração de Fraquezas

Identificadores relacionados

CVE-2024-48930
GHSA-584Q-6J8J-R5PM

Produtos afetados

Secp256K1-Node