Vulnerability · Published Aug 1, 2025 · Assigned by GitHub_M

CVE-2025-54590webfinger.js is vulnerable to Blind SSRF attacks through localhost

Medium 6.9

In plain English

A medium-severity server-side request forgery in webfinger.js from silverbucket. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.7% (higher than 54% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS 4.0)6.9Medium
Exploit odds (30 days)0.7%top 46.2% of all CVEs
Exploited in the wildNo reportsCISA SSVC: poc
Attack toolingNoneno public tooling known

Official description

webfinger.js is a TypeScript-based WebFinger client that runs in both browsers and Node.js environments. In versions 2.8.0 and below, the lookup function accepts user addresses for account checking. However, the ActivityPub specification requires preventing access to localhost services in production. This library does not prevent localhost access, only checking for hosts that start with "localhost" and end with a port. Users can exploit this by creating servers that send GET requests with controlled host, path, and port parameters to query services on the instance's host or local network, enabling blind SSRF attacks. This is fixed in version 2.8.1.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
npmwebfinger.js2.8.1GHSA-8xq3-w9fx-74rv

Affected products (as reported)

VendorProductVersions
silverbucket webfinger.js < 2.8.1

Weakness: CWE-918 · Vector: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N

References