Junglewise Threat Intelligence

CVE-2026-55559: Yamcs remote code execution via YAML injection in instance template

CVE-2026-55559 · Severity: critical · CVSS 9.8 · Published 2026-08-28

Executive brief

Yamcs, a spacecraft operations and telemetry system, allows unauthenticated users with no privileges (or users with the CreateInstances privilege) to execute arbitrary commands on the host server. An attacker can inject malicious YAML code through template arguments when creating or updating instances, which is then parsed and instantiated as a service, allowing execution of arbitrary processes with the privileges of the Yamcs service account. This includes access to secret keys, database credentials, and command/telemetry data for all instances on the server.

Technical details

The vulnerability is a YAML injection in the template processing engine (VarStatement.java). Template arguments (`templateArgs`) sent to POST `/api/instances` or PATCH `/api/instances/{instance}` are substituted into a template without escaping YAML-special characters (newlines, colons, quotes). The rendered config is then parsed as YAML and services are instantiated by class name via reflection. An attacker crafts a `templateArgs` value that closes an enclosing YAML string quote, injects a new `services:` entry pointing to `org.yamcs.ProcessRunner`, and comments out trailing syntax. The ProcessRunner executes arbitrary commands via `ProcessBuilder.start()`. The API endpoint requires the `CreateInstances` privilege, but by default (no `security.yaml`), the guest user is a superuser with unauthenticated API access. Attack vector is network; no user interaction required. Patched in versions 5.12.8 and 5.13.2.

Affected products

  • Yamcs yamcs-core 5.13.0 through 5.13.1; 5.12.7 and earlier

Timeline

  • 2026-08-28: disclosed: GHSA-73mf-m39p-wpm9 published
  • 2026-08-28: patched: Patched in versions 5.12.8 and 5.13.2

References