CRITICAL🇬🇧 English

CVE-2026-30921

OneUptime: RCE przez niebezpieczny Playwright sandbox w Synthetic Monitors

CVSS 9.9v3.1pub. 2026-03-10upd. 2026-03-12

Podatność w OneUptime (wersje przed 10.0.20) umożliwia nisko uprzywilejowanemu użytkownikowi projektu wykonanie dowolnego kodu na serwerze (RCE) poprzez przesłanie złośliwego kodu Playwright do usługi oneuptime-probe. Zagrożenie jest krytyczne, ponieważ atakujący może przejąć kontrolę nad hostem lub kontenerem bez potrzeby klasycznej eskapady z sandbox.

Pokaż oryginał (EN)

OneUptime is a solution for monitoring and managing online services. Prior to 10.0.20, OneUptime Synthetic Monitors allow low-privileged project users to submit custom Playwright code that is executed on the oneuptime-probe service. In the current implementation, this untrusted code is run inside Node's vm and is given live host Playwright objects such as browser and page. This creates a distinct server-side RCE primitive: the attacker does not need the classic this.constructor.constructor(...) sandbox escape. Instead, the attacker can directly use the injected Playwright browser object to reach browser.browserType().launch(...) and spawn an arbitrary executable on the probe host/container. This vulnerability is fixed in 10.0.20.

🤖 Analiza AI
Jak działa

Funkcja Synthetic Monitors pozwala użytkownikom projektu na przesyłanie własnego kodu Playwright, który jest następnie wykonywany przez usługę oneuptime-probe. Kod ten jest uruchamiany wewnątrz mechanizmu vm modułu Node.js, jednak do jego środowiska przekazywane są rzeczywiste obiekty hosta — w tym obiekt browser i page. Atakujący może bezpośrednio wykorzystać wstrzyknięty obiekt browser, wywołując metodę browser.browserType().launch() z dowolnymi argumentami, co skutkuje uruchomieniem wybranego przez napastnika pliku wykonywalnego na hoście lub w kontenerze. Nie jest wymagana klasyczna technika eskapady z sandbox (np. this.constructor.constructor), ponieważ dostęp do obiektów hosta jest przyznawany wprost.

Skutki

Atakujący z niskimi uprawnieniami w projekcie może wykonać dowolny kod na hoście lub w kontenerze, na którym działa usługa oneuptime-probe, co może prowadzić do pełnego przejęcia systemu, kradzieży danych oraz naruszenia integralności i dostępności usług.

Mitygacja

Należy zaktualizować OneUptime do wersji 10.0.20 lub nowszej, w której podatność została naprawiona. Szczegóły dostępne w referencjach producenta: https://github.com/OneUptime/oneuptime/security/advisories/GHSA-4j36-39gm-8vq8

Kogo dotyczy

OneUptime (Hackerbay) we wszystkich wersjach przed 10.0.20 korzystający z funkcji Synthetic Monitors

Uwagi

Podatność klasyfikowana jako CWE-749 (Exposed Dangerous Method or Function) — udostępnienie żywych obiektów hosta Playwright do niezaufanego kodu stanowi zasadniczą przyczynę błędu. Mechanizm vm w Node.js nie zapewnia pełnej izolacji, gdy do sandbox przekazywane są referencje do obiektów zewnętrznych.

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
  • Hackerbay Oneuptime

    APP
    Hackerbay
    < 10.0.20
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
Tagi
Container
CWE
Referencje

Powiązane podatności

CVE-2026-35053CRITICAL9.2PL ✓ten sam produkt

Brak uwierzytelnienia w endpointach workflow w OneUptime (RCE)

CVE-2026-34759CRITICAL9.2PL ✓ten sam produkt

Brak uwierzytelnienia w API powiadomień OneUptime — obejście autoryzacji

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

OneUptime: nieautoryzowany dostęp do endpointów powiadomień i zarządzania numerami

CVE-2026-33396CRITICAL9.9PL ✓ten sam produkt

RCE w OneUptime — command injection przez Playwright w Synthetic Monitor

CVE-2026-32306CRITICAL9.9PL ✓ten sam produkt

SQL Injection w OneUptime — nieautoryzowany dostęp do bazy i potencjalny RCE

CVE-2026-30921 — OneUptime: RCE przez niebezpieczny Playwright sandbox w Synthetic Monitors — CRITICAL 9.9 | CVEbaza.pl