CRITICAL🇬🇧 English

CVE-2026-46562

Yamcs: RCE poprzez brak ClassFilter w silniku Nashorn JavaScript

CVSS 9.8v3.1pub. 2026-07-16upd. 2026-07-20

W framework'u Yamcs (mission control) przed wersją 5.12.7 możliwe jest wykonanie dowolnych poleceń systemowych poprzez dostarczenie złośliwego kodu JavaScript do silnika Nashorn ScriptEngine. W domyślnej konfiguracji podatność jest osiągalna bez uwierzytelnienia.

Pokaż oryginał (EN)

Yamcs is a mission control framework. Prior to 5.12.7, the Nashorn ScriptEngine used to evaluate user-supplied JavaScript algorithm text in yamcs-core/src/main/java/org/yamcs/algorithms/ScriptAlgorithmExecutorFactory.java was constructed without a ClassFilter, so a user with the ChangeMissionDatabase privilege could override an algorithm through the MdbOverrideApi.updateAlgorithm endpoint and supply JavaScript that reaches arbitrary Java classes (for example Java.type("java.lang.Runtime").getRuntime().exec(...)) to execute arbitrary OS commands as the Yamcs process; in the default configuration with no security.yaml the built-in guest user has superuser=true, making the issue reachable without authentication. This issue is fixed in versions 5.12.7 and 5.13.0, which disable algorithm editing by default.

🤖 Analiza AI
Jak działa

Silnik Nashorn ScriptEngine, używany do ewaluacji algorytmów JavaScript w komponencie ScriptAlgorithmExecutorFactory, był inicjalizowany bez obowiązkowego ClassFilter. Użytkownik z uprawnieniem ChangeMissionDatabase mógł nadpisać algorytm za pomocą endpoint'u MdbOverrideApi.updateAlgorithm i przekazać kod JavaScript odwołujący się do dowolnych klas Java (np. Java.type("java.lang.Runtime").getRuntime().exec(...)), co prowadziło do wykonania poleceń systemowych w kontekście procesu Yamcs. W domyślnej konfiguracji (brak pliku security.yaml) wbudowany użytkownik guest posiada flagę superuser=true, co oznacza, że atak nie wymaga żadnego uwierzytelnienia.

Skutki

Atakujący może wykonać dowolne polecenia systemowe (RCE) jako proces Yamcs, uzyskując pełną kontrolę nad systemem, w tym dostęp do danych, możliwość ich modyfikacji oraz zakłócenia działania infrastruktury.

Mitygacja

Należy zaktualizować Yamcs do wersji 5.12.7 lub 5.13.0, które domyślnie wyłączają edycję algorytmów. Do czasu wdrożenia patcha zaleca się skonfigurowanie pliku security.yaml w celu wyłączenia domyślnego konta guest z uprawnieniami superuser oraz ograniczenie dostępu do endpoint'u MdbOverrideApi.updateAlgorithm.

Kogo dotyczy

Yamcs w wersjach przed 5.12.7 oraz przed 5.13.0

Uwagi

Podatność jest szczególnie niebezpieczna w środowiskach z domyślną konfiguracją (brak security.yaml), gdzie wbudowany użytkownik guest ma uprawnienia superuser, co czyni atak możliwym bez jakiegokolwiek uwierzytelnienia.

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
  • Spaceapplications Yamcs

    APP
    Spaceapplications
    < 5.12.7
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
CWE
Referencje

Powiązane podatności

CVE-2026-44632CRITICAL9.1PL ✓ten sam produkt

RCE w Yamcs — wstrzyknięcie kodu Java przez silnik algorytmów

CVE-2026-46621CRITICAL9.1PL ✓ten sam produkt

Yamcs RCE przez niezabezpieczony silnik skryptów Python (Jython)

CVE-2023-45278CRITICAL9.1PL ✓ten sam produkt

Path Traversal w Yamcs umożliwia usunięcie dowolnych plików przez API

CVE-2023-45277HIGH7.5ten sam produkt

Yamcs 5.8.6 is vulnerable to directory traversal (issue 1 of 2). The vulnerability is in the storage functiona...

CVE-2026-55548MEDIUM4.3ten sam produkt

Yamcs to framework do obsługi misji kosmicznych. W wersjach przed 5.12.8 i 5.13.2 endpoint PacketsApi.exportPa...