CVE-2026-55591: Signal K Server SSRF in remote connection endpoints

CVE-2026-55591 · Severity: medium · CVSS 5.8 · Published 2026-09-15

Signal K Server is an open-source data server for marine use. In versions up to 2.27.0, a security flaw allows unauthenticated users to force the server to make network requests to internal or external destinations. This can be used to scan private networks, access sensitive cloud metadata (like AWS credentials), or bypass security controls on internal services.

Technologies: signalk-server (npm). Vendors: npm.

Quick answers

Is CVE-2026-55591 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-55591 being exploited in the wild.
How severe is CVE-2026-55591?
Medium severity, with a CVSS score of 5.8, published 15 September 2026.
Which products and versions are affected?
signalk-server (npm) <= 2.27.0, SEMVER:introduced=0,fixed=2.28.0.
Is there a fix for CVE-2026-55591?
Yes. signalk-server (npm): upgrade to 2.28.0 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-55591 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2026-55591?
Check whether you run signalk-server (npm) 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

  • signalk-server (npm): upgrade to 2.28.0 or later
    npm install signalk-server@2.28.0

Technical details

A Server-Side Request Forgery (SSRF) exists in the `makeRemoteRequest()` function within `src/serverroutes.ts`. The function fails to validate the `host`, `port`, and `path` parameters, allowing requests to loopback addresses, RFC 1918 private ranges, and cloud metadata services (169.254.169.254). Furthermore, when security is not explicitly configured, the `addAdminMiddleware` defaults to a no-op, making the `testSignalKConnection`, `requestAccess`, and `checkAccessRequest` endpoints accessible without authentication. Attackers can also bypass TLS verification via the `selfsignedcert` parameter or perform path traversal via the `requestId` parameter in the `checkAccessRequest` endpoint. The vulnerability is patched in version 2.28.0.

Affected products

  • Signal K signalk-server <= 2.27.0

Identifiers

  • CVE-2026-55591
  • GHSA-q59x-jc9f-gfqf

Timeline

  • 2026-06-16: advisory: GitHub Advisory published
  • 2026-06-18: disclosed
  • 2026-06-16: patched: Version 2.28.0 released

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.