CVE Catalog

CVE-2026-53983

HighCVSS 8.6
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.33%

25th percentile - higher than 25% of all known CVEs

Summary

Ground Station prior to 0.6.0 contains an unauthenticated blind server-side request forgery vulnerability in the orbital-source configuration path. An unauthenticated Socket.IO client can connect on port 7000, persist an attacker-supplied URL in the database, and trigger an orbital sync, causing outbound HTTP requests to attacker-chosen destinations, including cloud metadata (169.254.169.254). HTTP status codes and error messages are emitted to clients, providing an oracle for interpreting internal-service responses.

Risk Assessment

An attacker can use the server to scan internal networks, access cloud metadata or other sensitive services, potentially leading to data leakage or privilege escalation. The malicious URL persists in the database and re-fires every 24 hours.

Recommendation

Update Ground Station to version 0.6.0 or later. Enable authentication for Socket.IO and restrict outbound HTTP requests.

Other vulnerabilities in Ground Station

See all
Original NVD description (English source)

Ground Station prior to 0.6.0 contains an unauthenticated blind server-side request forgery vulnerability in the orbital-source configuration path that allows any unauthenticated Socket.IO client to cause the ground-station process to issue outbound HTTP requests to attacker-chosen destinations. Attackers can connect to the Socket.IO server on port 7000 without credentials due to disabled authentication enforcement and a wildcard CORS policy, then submit a data_submission event with submit-orbital-sources action to persist an attacker-supplied URL in the database, then trigger an orbital sync via the equally unauthenticated background_task:start event. The URL is stored with no scheme allowlist, no host validation, and no rejection of loopback, RFC1918, or link-local (cloud instance metadata at 169.254.169.254) addresses, and is passed directly to requests.get in _fetch_http_3le and _fetch_http_omm in backend/tlesync/source_adapters.py. HTTP status codes and error messages from the outbound request are emitted in the orbital_sync_state Socket.IO event to all connected clients, providing a serviceable oracle for interpreting internal-service and cloud-metadata responses even though the raw response body is not directly leaked. Because the malicious source persists in the database across restarts and re-fires every 24 hours on the scheduled sync cycle, the primitive gives durable long-term SSRF without the attacker needing to remain connected.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS