Qué es y cómo funciona la falla
La biblioteca create-ecdh es una implementación de crypto.createECDH de Node.js compatible con navegadores. En versiones 4.0.4 e inferiores, su implementación JavaScript (usada en navegadores o en Node.js sin el módulo nativo) no validaba las claves públicas recibidas de una contraparte durante el intercambio de claves ECDH (ECDH.prototype.computeSecret o ECDH.prototype.setPublicKey).
Esto permite a un atacante enviar puntos de curva inválidos o pertenecientes a subgrupos pequeños. Al multiplicar estos puntos por la clave privada estática del servidor, el atacante puede recuperar la clave privada módulo factores pequeños y, mediante el Teorema Chino del Resto, reconstruirla por completo. Para las curvas ed25519 y curve25519, también se aceptaban puntos de bajo orden, lo que podía forzar un secreto compartido predecible.
Productos y versiones afectadas
create-ecdhversiones 4.0.4 y anteriores.- La vulnerabilidad solo afecta a la implementación JavaScript (
browser.js). En Node.js moderno, donde la biblioteca re-exporta la implementación nativa, no está afectado.
Impacto real
Un atacante que pueda enviar claves públicas a una parte que reutilice una clave privada estática puede recuperar esa clave privada, comprometiendo la confidencialidad de las comunicaciones establecidas mediante ECDH.
¿Se está explotando?
La vulnerabilidad tiene un CVSS de 5.9 (gravedad media). Según datos de Shodan, actualmente hay 0 hosts expuestos en internet detectados con esta vulnerabilidad, lo que sugiere un volumen bajo de objetivos directos.
Qué hacer
La vulnerabilidad está corregida en la versión 4.0.5 de create-ecdh. Se recomienda actualizar a esa versión o superior de forma inmediata. El INCIBE-CERT de España clasifica la severidad de este CVE como P (Prioritaria).
| CVE | CVE-2026-129319 |
|---|---|
| Severidad | MEDIUM |
| CVSS | 5.9 / 10 |
| CWE | CWE-20 |
| Exposición (Shodan) | sin hosts expuestos detectados actualmente |