{"id":"CVE-2026-61704","sourceIdentifier":"security-advisories@github.com","published":"2026-08-20T17:18:51.940","lastModified":"2026-10-18T20:10:00.110","vulnStatus":"Deferred","cveTags":[],"descriptions":[{"lang":"en","value":"Link Preview JS extracts web links information. Prior to 4.0.4, the resolveDNSHost mitigation in index.ts validates one resolved IP address but fetches the original hostname, allowing an attacker-controlled DNS server to return a public address during validation and a loopback or internal address during the final connection. This DNS rebinding condition bypasses the SSRF protection and can cause the server-side preview fetch to reach internal HTTP resources. Redirect handling is affected by the same validation-to-fetch mismatch. This issue is fixed in version 4.0.4."},{"lang":"es","value":"Link Preview JS extrae información de enlaces web. Antes de la versión 4.0.4, la mitigación resolveDNSHost en index.ts valida una dirección IP resuelta pero obtiene el nombre de host original, permitiendo que un servidor DNS controlado por un atacante devuelva una dirección pública durante la validación y una dirección de bucle invertido o interna durante la conexión final. Esta condición de revinculación de DNS elude la protección SSRF y puede hacer que la obtención de la vista previa del lado del servidor alcance recursos HTTP internos. El manejo de redirecciones se ve afectado por la misma falta de coincidencia entre validación y obtención. Este problema está solucionado en la versión 4.0.4."}],"affected":[{"source":"security-advisories@github.com","affectedData":[{"vendor":"OP-Engineering","product":"link-preview-js","versions":[{"version":"< 4.0.4","status":"affected"}]}]}],"metrics":{"cvssMetricV31":[{"source":"security-advisories@github.com","type":"Secondary","cvssData":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","baseScore":7.5,"baseSeverity":"HIGH","attackVector":"NETWORK","attackComplexity":"LOW","privilegesRequired":"NONE","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"HIGH","integrityImpact":"NONE","availabilityImpact":"NONE"},"exploitabilityScore":3.9,"impactScore":3.6}],"ssvcV203":[{"source":"134c704f-9b21-4f2e-91b3-4a467353bcc0","ssvcData":{"timestamp":"2026-08-25T15:03:06.178339Z","id":"CVE-2026-61704","options":[{"exploitation":"none"},{"automatable":"yes"},{"technicalImpact":"partial"}],"role":"CISA Coordinator","version":"2.0.3"}}]},"weaknesses":[{"source":"security-advisories@github.com","type":"Secondary","description":[{"lang":"en","value":"CWE-918"}]}],"references":[{"url":"https://github.com/OP-Engineering/link-preview-js/commit/6ee25043dd60b097eb70b4ce049aac94b28239e3","source":"security-advisories@github.com"},{"url":"https://github.com/OP-Engineering/link-preview-js/commit/f3a3dd84adbb9d32d06a933f44ff3eaa837f9a12","source":"security-advisories@github.com"},{"url":"https://github.com/OP-Engineering/link-preview-js/pull/181","source":"security-advisories@github.com"},{"url":"https://github.com/OP-Engineering/link-preview-js/releases/tag/4.0.4","source":"security-advisories@github.com"},{"url":"https://github.com/OP-Engineering/link-preview-js/security/advisories/GHSA-cpjf-6666-r8fx","source":"security-advisories@github.com"}]}