Quick answers
- Is CVE-2026-61704 exploited in the wild?
- No. Junglewise Threat Intelligence has no report of CVE-2026-61704 being exploited in the wild.
- How severe is CVE-2026-61704?
- High severity, with a CVSS score of 7.5, published 20 August 2026.
- Which products and versions are affected?
- link-preview-js (npm) SEMVER:introduced=0,fixed=4.0.4; OP-Engineering Link-Preview-Js <= 4.0.3.
- Is there a fix for CVE-2026-61704?
- Yes. link-preview-js (npm): upgrade to 4.0.4 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
- How is CVE-2026-61704 attacked?
- It is attacked over the network.
- Am I affected by CVE-2026-61704?
- Check whether you run link-preview-js (npm) or OP-Engineering Link-Preview-Js at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.
How to fix
- link-preview-js (npm): upgrade to 4.0.4 or later
npm install link-preview-js@4.0.4
Technical details
This vulnerability exists in link-preview-js versions up to 4.0.3 and is a bypass of the incomplete SSRF fix introduced in CVE-2026-43897. The root cause is a time-of-check/time-of-use (TOCTOU) vulnerability: the library calls resolveDNSHost to validate a single resolved IP address but later performs fetch() against the original hostname without binding the connection to that validated IP. An attacker controlling a DNS server can exploit this by returning a legitimate public IP during the validation phase, then returning a loopback (127.0.0.1) or internal address (10.x.x.x, 172.16.x.x, 192.168.x.x) during the actual fetch, achieving DNS rebinding. Attack vector is network-based, requires no authentication, and is triggered when the application processes a malicious URL. The fix is available in version 4.0.4 and later.
Affected products
- OP-Engineering link-preview-js <= 4.0.3
Identifiers
- CVE-2026-61704
- GHSA-cpjf-6666-r8fx
Timeline
- 2026-06-23: disclosed: Disclosed by GitHub Security Advisory GHSA-cpjf-6666-r8fx
- 2026-08-20: other: Published to National Vulnerability Database
- 2026-09-02: patched: Fixed in version 4.0.4