CVE-2026-55511
KrytyczneCVSS 9.1Streszczenie
Yamcs przed wersjami 5.12.8 i 5.13.2 pozwala użytkownikowi z uprawnieniem SystemPrivilege.ControlArchiving na utworzenie nazwy kolumny StreamSQL z podwójnym cudzysłowem, która jest interpolowana do generowanego kodu Java. Poprzez endpoint POST /api/archive/{instance}:executeSql możliwe jest wykonanie dowolnego kodu Java w procesie serwera Yamcs, co może ujawnić dane misji i poświadczenia oraz umożliwić manipulację telemetrią lub odmowę usługi. Problem został naprawiony w wersjach 5.12.8 i 5.13.2.
Ocena ryzyka
Atakujący może przejąć kontrolę nad serwerem Yamcs, co prowadzi do naruszenia poufności danych misji, kradzieży poświadczeń, manipulacji telemetrią oraz przerwania działania usługi.
Rekomendacja
Zaleca się natychmiastową aktualizację Yamcs do wersji 5.12.8 lub 5.13.2 oraz ograniczenie dostępu do endpointu executeSql tylko dla zaufanych użytkowników.
Oryginalny opis (angielski, źródło NVD)
Yamcs is a mission control framework. Prior to 5.12.8 and 5.13.2, Yamcs allows a user with SystemPrivilege.ControlArchiving to create a double-quoted StreamSQL column name that is interpolated into generated Java source by Expression.fillCode_InputDefVars and Expression.sanitizeName. A sum aggregate reaches yamcs-core/src/main/java/org/yamcs/yarch/streamsql/CompilableAggregateExpression.java and yamcs-core/src/main/java/org/yamcs/yarch/streamsql/funct/SumExpression.java through SelectExpression.compile, where Janino SimpleCompiler.cook compiles the injected source. POST /api/archive/{instance}:executeSql can therefore execute arbitrary Java in the Yamcs server process, exposing mission data and credentials and permitting telemetry tampering or denial of service. This issue is fixed in versions 5.12.8 and 5.13.2.

