Skip to main content
VulnerabilityPublished

Signalk server: Signal K resources API path traversal can disclose the JWT signing secret and enable remote code

Affects signalk-serverSource GCVE Database

0

CVSS 9.8 Critical : upgrade to 2.34.0 as a priority.

Data as of 31 Oct 2026, 02:07 UTC

CVSS 3.1 base score
9.8Critical
How severe the flaw is on the 0–10 CVSS scale.
Patch
Available – fixed in 2.34.0, 1.5.3
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

What to do

Upgrade signalk-server to 2.34.0; @signalk/resources-provider to 1.5.3.

Affected software

ProductAffectedFixed in
npmsignalk-serverAffected
  • >=2.0.0 <2.34.0
Fixed in
  • 2.34.0
npm@signalk/resources-providerAffected
  • >=1.0.0 <1.5.3
Fixed in
  • 1.5.3

Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.

AI-suggested

A patch is available in signalk-server version 2.34.0 and resources-provider version 1.5.3 that fixes this vulnerability. Users should upgrade to these versions or later. The vendor recommends validating the resourceId parameter against a strict whitelist, canonicalizing file paths to prevent traversal, storing the JWT signing secret outside API-accessible directories with restricted permissions, and gating command execution provider types behind explicit opt-in. Deployments should disable allow_readonly or restrict readonly user tokens until patched.

Description

A path traversal vulnerability in the Signal K server's resources API allows unauthenticated or low-privileged users to read, write, and delete files outside the intended storage directory. This includes reading the security.json file containing the JWT signing secret, enabling attackers to forge admin JWT tokens and gain administrative access. With admin privileges, attackers can create providers that execute arbitrary shell commands, resulting in remote code execution with server privileges. The vulnerability affects all signalk-server versions prior to 2.34.0 and resources-provider versions prior to 1.5.3. The issue is patched in versions 2.34.0 and 1.5.3.

References

Community reviews

Loading reviews…