Podatność w komponencie Script Runner platformy OpenC3 COSMOS pozwala uwierzytelnionemu użytkownikowi na ominięcie kontroli uprawnień API i wykonanie nieautoryzowanych działań administracyjnych. Zagrożenie jest krytyczne, ponieważ atakujący może uzyskać dostęp do sekretów, zmodyfikować konfigurację systemu oraz odczytywać i zapisywać pliki w usługach wewnętrznych.
▸ Pokaż oryginał (EN)
OpenC3 COSMOS provides the functionality needed to send commands to and receive data from one or more embedded systems. Prior to version 7.0.0-rc3, the Script Runner widget allows users to execute Python and Ruby scripts directly from the openc3-COSMOS-script-runner-api container. Because all the docker containers share a network, users can execute specially crafted scripts to bypass the API permissions check and perform administrative actions, including reading and modifying data inside the Redis database, which can be used to read secrets and change COSMOS settings, as well as read and write to the buckets service, which holds configuration, log, and plugin files. These actions are normally only available from the Admin Console or with administrative privileges. Any user with permission to create and run scripts can connect to any service in the docker network. This issue has been patched in version 7.0.0-rc3.
Widget Script Runner umożliwia użytkownikom uruchamianie skryptów Python i Ruby bezpośrednio z kontenera openc3-COSMOS-script-runner-api. Ponieważ wszystkie kontenery Docker współdzielą tę samą sieć wewnętrzną, spreparowany skrypt może nawiązać bezpośrednie połączenia z dowolnymi usługami w tej sieci, omijając mechanizmy weryfikacji uprawnień API. W ten sposób możliwy jest dostęp do bazy danych Redis (odczyt sekretów, zmiana ustawień COSMOS) oraz do usługi bucket przechowującej pliki konfiguracyjne, logi i wtyczki. Działania te normalnie wymagają uprawnień administracyjnych lub dostępu do Admin Console.
Atakujący z uprawnieniami do tworzenia i uruchamiania skryptów może odczytać wrażliwe dane (sekrety, konfigurację), modyfikować ustawienia całego systemu COSMOS oraz odczytywać i nadpisywać pliki konfiguracyjne, logi i wtyczki — bez posiadania uprawnień administracyjnych.
Należy zaktualizować OpenC3 COSMOS do wersji 7.0.0-rc3 lub nowszej (w tym 7.0.0). Patche dostępne w referencjach producenta na GitHub: https://github.com/OpenC3/cosmos/releases/tag/v7.0.0-rc3
OpenC3 COSMOS w wersjach poprzedzających 7.0.0-rc3
Podatność dotyczy środowisk kontenerowych Docker, w których kontenery OpenC3 COSMOS współdzielą sieć wewnętrzną. Exploit wymaga posiadania konta z uprawnieniami do tworzenia i uruchamiania skryptów (PR:L), jednak skutki są krytyczne ze względu na brak izolacji między kontenerami (CWE-250 — wykonywanie operacji z nadmiernymi uprawnieniami).
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:NOpenc3 Cosmos
APPOpenc37.0.0< 7.0.0
Powiązane podatności
SQL Injection w komponencie TSDB OpenC3 COSMOS (CVE-2026-42087)
Path Traversal w endpoincie /script-api/scripts/ OpenC3 COSMOS
RCE w komponencie Plugin Management OpenC3 COSMOS poprzez spreparowany plik .txt
OpenC3 COSMOS — hardcoded credentials w koncie Service Account
OpenC3 COSMOS: Obejście uwierzytelnienia przez słabe wymagania haseł