CVE-2026-30957 OneUptime Synthetic Monitor RCE via exposed Playwright browser object
A low-privileged user can execute arbitrary commands on the probe server by injecting code into Synthetic Monitors that accesses exposed Playwright objects.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-30957?
CVE-2026-30957 is a critical code injection vulnerability in oneuptime, published on 10 Mar 2026. Any signed-in user can exploit it over the network, with no action from the victim.
Official description
OneUptime is a solution for monitoring and managing online services. Prior to 10.0.21, OneUptime Synthetic Monitors allow a low-privileged authenticated project user to execute arbitrary commands on the oneuptime-probe server/container. The root cause is that untrusted Synthetic Monitor code is executed inside Node's vm while live host-realm Playwright browser and page objects are exposed to it. A malicious user can call Playwright APIs on the injected browser object and cause the probe to spawn an attacker-controlled executable. This is a server-side remote code execution issue. It does not require a separate vm sandbox escape. This vulnerability is fixed in 10.0.21.
Weakness: CWE-749
Which versions are affected by CVE-2026-30957?
2 open source packages ship an affected version, including @oneuptime/common. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
@oneuptime/common npm | All versions | 10.0.21 |
@oneuptime/common npm | All versions | 10.0.21 |
Products include Hackerbay Oneuptime.
How do I fix CVE-2026-30957?
Upgrade @oneuptime/common to 10.0.21 or later.
Upgrade, and never evaluate templates, expressions or code built from user input. More about Code injection.
Is CVE-2026-30957 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-30957 exists.
Other vulnerabilities in oneuptime
- CVE-2026-33396 Code injection in oneuptime
- CVE-2026-32306 OneUptime ClickHouse SQL Injection via Aggregate Query Parameters
- CVE-2026-30956 OneUptime has authorization bypass via client‑controlled is-multi-tenant-query header
- CVE-2026-30887 OneUptime Affected by Unsandboxed Code Execution in Probe Allows Any Project Member to Achieve RCE
- CVE-2026-30921 OneUptime Synthetic Monitor RCE via exposed Playwright browser object
Sources
Also known as GHSA-jw8q-gjvg-8w4q.