CVE-2025-69203 | Signal K Server Vulnerable to Access Request Spoofing

Exp

Signal K Server is a server application that runs on a central hub in a boat. Versions prior to 2.19.0 of the access request system have two related features that when combined by themselves and with an information disclosure vulnerability enable convincing social engineering attacks against administrators. When a device creates an access request, it specifies three fields: `clientId`, `description`, and `permissions`. The SignalK admin UI displays the `description` field prominently to the administrator when showing pending requests, but the actual `permissions` field (which determines the access level granted) is less visible or displayed separately. This allows an attacker to request `admin` permissions while providing a description that suggests readonly access. The access request handler trusts the `X-Forwarded-For` HTTP header without validation to determine the client's IP address. This header is intended to preserve the original client IP when requests pass through reverse proxies, but when trusted unconditionally, it allows attackers to spoof their IP address. The spoofed IP is displayed to administrators in the access request approval interface, potentially making malicious requests appear to originate from trusted internal network addresses. Since device/source names can be enumerated via the information disclosure vulnerability, an attacker can impersonate a legitimate device or source, craft a convincing description, spoof a trusted internal IP address, and request elevated permissions, creating a highly convincing social engineering scenario that increases the likelihood of administrator approval. Users should upgrade to version 2.19.0 to fix this issue.

Published: 2026-01-01 Last update: 2026-01-06 Assigner: [email protected] Source: [email protected]

Conclusion & alert: CVE-2025-69203 is rated Exploit Available (50/100): CVSS Medium severity, with low exploitation likelihood (EPSS 0.27%). Core evidence: 1 public exploit reference(s) are indexed (Exploit-DB). Mandatory action: Public exploits are available—assess exposure, apply mitigations, and prioritize patching.

Risk is dynamic; we continuously reassess and refresh what is shown on this page as upstream context changes.

Public exploit references (Exploit-DB) for CVE-2025-69203

EDB-ID Source Kind Published Link
nvd_ref exploit_tag Exploit-DB ↗

Exploit prediction scoring system (EPSS) score for CVE-2025-69203

EPSS lead: Daily EPSS estimates relative likelihood of exploitation; percentile ranks this CVE among scored vulnerabilities (higher = more severe relative rank).

# Date Old EPSS score New EPSS score Delta (New - Old)
1 2026-06-15 0.02% 0.27% +0.25%
2 2026-02-18 0.06% 0.02% -0.04%
3 2026-02-12 0.06%

Full EPSS history (4 records total)

Common vulnerability scoring system (CVSS) metrics for CVE-2025-69203

CVSS metrics for this CVE.

Base score Version Severity Vector Exploitability Impact Score source
6.3 3.1 MEDIUM
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:L Click to expand
Attack vector (AV:N)
Could be attacked over the internet or any normal routed network—not just someone sitting at the machine.
Attack complexity (AC:L)
Once they can reach the bug, pulling it off is straightforward—no weird race conditions or rare setup.
Privileges required (PR:N)
No account or special rights needed—anonymous or random user is enough.
User interaction (UI:R)
A real person has to do something—click, install, enable—otherwise it doesn’t land.
Scope (S:U)
Damage stays in the same “trust bubble” as the broken component—no big spill into unrelated systems.
Confidentiality (C:L)
Some sensitive info could get out, but not a total data dump.
Integrity (I:L)
Attackers could change some data, but it’s limited—not everything goes.
Availability (A:L)
Might cause slowdowns, glitches, or partial disruption—not a full brick.
2.8 3.4 [email protected]
8.8 3.1 HIGH
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H Click to expand
Attack vector (AV:N)
Could be attacked over the internet or any normal routed network—not just someone sitting at the machine.
Attack complexity (AC:L)
Once they can reach the bug, pulling it off is straightforward—no weird race conditions or rare setup.
Privileges required (PR:N)
No account or special rights needed—anonymous or random user is enough.
User interaction (UI:R)
A real person has to do something—click, install, enable—otherwise it doesn’t land.
Scope (S:U)
Damage stays in the same “trust bubble” as the broken component—no big spill into unrelated systems.
Confidentiality (C:H)
Serious risk that confidential data gets exposed in a big way.
Integrity (I:H)
They could widely tamper with or forge data—trust in the data is badly hurt.
Availability (A:H)
Could take the service down hard or make it unusable for people who depend on it.
2.8 5.9 [email protected]

Weakness enumeration for CVE-2025-69203

GitHub Security Advisory for CVE-2025-69203

GHSA-vfrf-vcj7-wvr8 · Severity: medium · Ecosystem: npm — Signal K Server Vulnerable to Access Request Spoofing

Affected software / configurations for CVE-2025-69203

Vendor Product Version Raw CPE
signalk signal_k_server < 2.19.0 cpe:2.3:a:signalk:signal_k_server:*:*:*:*:*:*:*:*
signalk signal_k_server 2.19.0 cpe:2.3:a:signalk:signal_k_server:2.19.0:beta1:*:*:*:*:*:*
signalk signal_k_server 2.19.0 cpe:2.3:a:signalk:signal_k_server:2.19.0:beta2:*:*:*:*:*:*
signalk signal_k_server 2.19.0 cpe:2.3:a:signalk:signal_k_server:2.19.0:beta3:*:*:*:*:*:*
signalk signal_k_server 2.19.0 cpe:2.3:a:signalk:signal_k_server:2.19.0:beta4:*:*:*:*:*:*

References for CVE-2025-69203

cvelogic Threat Intelligence