Junglewise Threat Intelligence

@asymmetric-effort/specifyjs localhost bypass in SSRF check

Severity: medium · CVSS 4 · Published 2026-07-02

Technologies: Asymmetric Effort Specifyjs, @asymmetric-effort/specifyjs (npm). Vendors: Asymmetric Effort, npm.

Executive brief

@asymmetric-effort/specifyjs is a Node.js library used to prevent server-side request forgery (SSRF) attacks by validating URLs before fetching them. A flaw in its localhost exemption logic failed to recognize IPv6 loopback addresses, the 127.0.0.0/8 range, and 0.0.0.0, allowing attackers to bypass security controls and trigger requests to internal services.

Technical details

The vulnerability is a Server-Side Request Forgery (SSRF) bypass caused by incomplete localhost detection in the secureFetch function (core/src/shared/secure-fetch.ts:52-54). The code checked for localhost and 127.0.0.1 only, missing IPv6 localhost ([::1]), the full 127.0.0.0/8 loopback range, and 0.0.0.0. An unauthenticated network attacker can craft requests using these undetected localhost addresses to bypass SSRF protections and access internal services. The fix, released in v0.2.136, expands localhost detection to cover all valid loopback addresses and ranges.

Affected products

  • asymmetric-effort specifyjs < 0.2.136

Timeline

  • 2026-05-29: disclosed
  • 2026-05-29: patched: v0.2.136 released

References

Related threats