Skip to main content

Yamcs Core CVE-2026-55521

| EUVDEUVD-2026-67838 HIGH
Missing Authorization (CWE-862)
2026-08-28 https://github.com/yamcs/yamcs GHSA-962x-ccwf-8x6p
8.8
CVSS 3.1 · Vendor: https://github.com/yamcs/yamcs
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Obtain any valid Yamcs credentials
  2. Delivery
    Send GET to /api/archive/{instance}/packet-index
  3. Exploit
    Enumerate telemetry metadata without privilege check
  4. Execution
    Send POST to /api/cop1/{instance}/{link}:disable
  5. Persist
    Bypass ControlLinks SystemPrivilege check
  6. Impact
    Disrupt satellite COP-1 telecommand uplink

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization checks on every request
MITRE ATT&CK

1 technique across 1 tactic: Privilege Escalation

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires a valid Yamcs user account with any level of access - including accounts with zero roles or privileges assigned. No administrative access, special configuration, or elevated permissions are needed; the CVSS PR:L reflects that even the most restricted authenticated user can exploit all three flaws. The Yamcs REST API must be network-reachable (default port 8090). Exploitation of Cop1Api endpoints is further dependent on the target Yamcs instance having configured COP-1-capable links; if no such links exist, the endpoint returns a 400 error but still confirms the authorization bypass. Exploitation of TimeApi is limited to instances where SimulationTimeService is active - production deployments using real hardware time services are unaffected by the time manipulation vector but remain vulnerable to the IndexesApi and Cop1Api flaws.

Impact

The CVSS 8.8 score with vector AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H accurately reflects real-world risk: network-reachable, low-complexity exploitation requiring only a valid user account (PR:L) with no other privileges. All three CIA pillars are independently impacted by separate code paths. POC exploit code is publicly available in the security advisory, lowering the bar to exploitation significantly. No EPSS score was provided, but the combination of low-complexity exploitation, published PoC, and a niche but operationally critical deployment context suggests targeted rather than widespread exploitation risk. CISA KEV absence is consistent with the specialized deployment footprint of spacecraft operations software - this is likely not mass-exploited, but any exploitation in context is high consequence. The CVSS vector and description are fully consistent: network-delivered REST API calls, no privilege escalation required beyond authentication.

Exploit ScenarioDerived

An attacker with any valid Yamcs credential - even a 'Guest' account created for read-only dashboard access - issues a series of unauthenticated-equivalent HTTP requests to the three vulnerable endpoints. Using the published PoC, they first enumerate historical telemetry packet indexes to map spacecraft data structures, then issue a POST to the COP-1 disable endpoint to halt satellite telecommand uplink, causing command transmission failures. The absence of a 403 response (instead returning 200 or 400) confirms the authorization bypass at each step without requiring any privilege escalation.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.4% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Aug 28, 2026

Missing function-level access control in Yamcs Core's REST API allows any authenticated user - including completely unprivileged 'Guest' accounts - to bypass the platform's RBAC system across three distinct API controllers. Affected endpoints in IndexesApi, Cop1Api, and TimeApi omit authorization checks entirely, enabling telemetry metadata exfiltration, disruption of COP-1 satellite telecommand protocols, and manipulation of global simulation time. Publicly available exploit code (curl-based PoC) confirms exploitability; the vulnerability is not currently listed in CISA KEV, though the spacecraft operations context elevates real-world impact severity.

RemediationAI

Upgrade org.yamcs:yamcs-core to version 5.12.8 (for 5.12.x deployments) or 5.13.2 (for 5.13.x deployments) - both are vendor-confirmed patched releases per the GitHub security advisory at https://github.com/yamcs/yamcs/security/advisories/GHSA-962x-ccwf-8x6p. If immediate patching is not possible, restrict network access to the Yamcs REST API (default port 8090) to trusted network segments or authenticated VPN only, eliminating exposure to untrusted authenticated users. Additionally, audit all existing user accounts and remove any accounts without legitimate role assignments, as the vulnerability requires only valid credentials to exploit. Note that API port restriction may impact legitimate operator workflows and automated test pipelines that depend on REST API access.

Affected VersionsENISA

yamcs < 5.12.8
yamcs 5.13.0, < 5.13.2

Affected Packages

maven org.yamcs:yamcs-core fix: 5.12.8, 5.13.2
euvd yamcs fix: 5.12.8, 5.13.2

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in maven, euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Yamcs (Yet Another Mission Control System) is an open-source spacecraft mission operations framework implementing REST and WebSocket APIs for telemetry, commanding, and simulation management. The platform models authorization through SystemPrivilege (administrative actions) and ObjectPrivilege (data access) enforced via ctx.checkSystemPrivilege() and ctx.user.hasObjectPrivilege() call patterns. CWE-862 (Missing Authorization) manifests here because three API controllers - IndexesApi.java, Cop1Api.java, and TimeApi.java - execute business logic without invoking these checks, unlike sibling controllers such as PacketsApi.java which correctly gate reads via ObjectPrivilegeType.ReadPacket. The affected Maven artifact is org.yamcs:yamcs-core. COP-1 (Communications Operation Procedure-1) is an ECSS/CCSDS telecommand protocol critical to satellite uplink reliability; its disruption has direct operational consequences for spacecraft commanding.

Know when the next one hits your stack

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (https://github.com/yamcs/yamcs) PRIMARY 8.8 HIGH
AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
vuln.today AI 8.8 HIGH

REST API over network (AV:N), any authenticated user sufficient (PR:L), no interaction needed (UI:N); all three CIA pillars impacted by independent code paths (C:H/I:H/A:H).

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (https://github.com/yamcs/yamcs).

CVSS VectorVendor: https://github.com/yamcs/yamcs

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

2
Patch available
Aug 28, 2026 - 21:17 EUVD
CVE Published
Aug 28, 2026 - 17:09 github-advisory
HIGH 8.8

DescriptionCVE.org

Summary

Multiple Missing Function Level Access Control vulnerabilities exist in the Yamcs Core API. These vulnerabilities allow any authenticated user, regardless of their assigned roles or privileges (e.g., an unprivileged "Guest"), to bypass intended access controls. An attacker can exploit these flaws to extract sensitive telemetry metadata, disrupt satellite communication link protocols (COP-1), and manipulate the global simulation time, severely impacting the confidentiality, integrity, and availability of the system.

Details

Yamcs utilizes a robust Role-Based Access Control (RBAC) model with SystemPrivilege and ObjectPrivilege to restrict administrative actions and data retrieval. However, three critical API controllers completely omit these authorization checks before executing internal business logic:

  1. IndexesApi.java (Information Disclosure): Unlike PacketsApi.java, which filters results using ctx.user.hasObjectPrivilege(ObjectPrivilegeType.ReadPacket, packetName), methods in IndexesApi (such as listPacketIndex and listEventIndex) directly retrieve and return archive records from the CcsdsTmIndex without verifying if the user has the required Object Privileges.
  2. Cop1Api.java (Denial of Service / Integrity): Modifying the COP-1 telecommand protocol state is an administrative action requiring SystemPrivilege.ControlLinks. However, endpoints in Cop1Api (e.g., disable, resume, initialize, updateConfig) process link state alterations without calling ctx.checkSystemPrivilege(...).
  3. TimeApi.java (Denial of Service / Integrity): The setTime method allows modification of the global SimulationTimeService (affecting all processors, telemetry, and tests in that instance). This endpoint fails to assert any system privileges before applying the requested simulation speed or time jumps.

PoC

Prerequisite: Obtain valid credentials for a completely unprivileged user (e.g., user_without_priv:password with no roles assigned).

PoC 1: Extracting Packet Indexes (IndexesApi)

bash
curl -s -X GET "http://localhost:8090/api/archive/simulator/packet-index" \
     -u "user_without_priv:password"

*Result:* Returns HTTP 200 OK with a full JSON array of packet indexes, bypassing Object Privilege checks and leaking system metadata.

PoC 2: Disabling COP-1 Protocol (Cop1Api)

bash
curl -s -X POST "http://localhost:8090/api/cop1/simulator/tc_sim:disable" \
     -u "user_without_priv:password" \
     -H "Content-Type: application/json" -d '{}'

*Result:* The server processes the request past the authorization layer. Depending on the link configuration, it will either successfully disable COP-1 or return 400 BadRequestException confirming the link does not support COP-1. The absence of a 403 Forbidden confirms the authorization bypass.

PoC 3: Manipulating Simulation Time (TimeApi)

bash
curl -s -X POST "http://localhost:8090/api/instances/simulator:setTime" \
     -u "user_without_priv:password" \
     -H "Content-Type: application/json" -d '{"speed": 10.0}'

*Result:* The server processes the request past the authorization layer. It changes the global simulation speed if the service is active, or returns 400 BadRequestException: Cannot set time for a non-simulation TimeService. The absence of a 403 Forbidden confirms the authorization bypass.

Impact

The vulnerability impacts instances of Yamcs exposing the REST API.

  • Confidentiality: Unprivileged users can enumerate all historical telemetry packet and event metadata.
  • Integrity & Availability: Attackers can disable critical satellite telecommand protocols (COP-1) causing command transmission failures. They can also manipulate the global simulation time, disrupting processors, automated tests, and all other users relying on the simulation environment.

PoC Images:

  • Check user permission

<img width="1218" height="951" alt="image" src="https://github.com/user-attachments/assets/fa7b1f1b-70fc-4796-805a-70acb84686d3" />

  • Check admin permission and access API:

<img width="1768" height="555" alt="image" src="https://github.com/user-attachments/assets/844364f7-5e26-4c15-8809-6512f10ffbab" />

  • Check user no permission - get response same with user admin:

<img width="1264" height="885" alt="image" src="https://github.com/user-attachments/assets/8773cef6-f940-48f7-a382-0eb87b8767d4" /> <img width="1243" height="358" alt="image" src="https://github.com/user-attachments/assets/3288f092-7114-48d6-9e5c-9aeaf20d95d4" />

Blast Radius

ecosystem impact
† from your stack dependencies † transitive graph · vuln.today resolves 4-path depth
  • 7 maven packages depend on org.yamcs:yamcs-core (7 direct, 0 indirect)

Ecosystem-wide dependent count for version 5.13.0.

Technical POC Analysis

CWE-862 (Missing Authorization).

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

Yamcs Core's REST API fails to enforce access controls, allowing even unprivileged system users (including guest accounts) to access and modify critical spacecraft telemetry and command systems. With no available patch and publicly available exploit code, this creates immediate operational risk to satellite missions.

Business Impact: Severe
Compensating Controls

Immediately restrict network access to Yamcs Core REST API endpoints using firewall rules or network segmentation. Implement strict IP whitelisting and request authentication logging on all API access. Disable or restrict guest account privileges where operationally feasible. Isolate Yamcs Core infrastructure on dedicated, restricted network segments with minimal external connectivity. Enable comprehensive request/response logging and monitoring for suspicious access patterns. Escalate patch availability requests to Yamcs vendor with mission-critical urgency indicator. Establish incident response procedures for potential exploitation attempts.

Threat Intelligence Overview

EPSS Score
0.4%
Top 71% exploitable
Prevalence
Low
specialized spacecraft mission operations software, limited to aerospace sector
Threat Intel
1
1 sources
Exploit
POC
Public exploit code exists
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA GitHub

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC Yes
EPSS 0.4%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Out-of-Cycle
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact
Very High
Technical Impact
Total

Priority Score

64
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +44
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy