
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2026-30957 is a critical server-side Remote Code Execution (RCE) vulnerability in OneUptime's Synthetic Monitor feature, titled "Synthetic Monitor RCE via exposed Playwright browser object." It affects all versions of the oneuptime and @oneuptime/common npm packages prior to 10.0.21, and was published on March 8, 2026, with NVD publication on March 10, 2026. A low-privileged authenticated project member can exploit this flaw to execute arbitrary commands on the oneuptime-probe server or container. It carries a CVSS v3.1 base score of 9.9 (Critical) (GitHub Advisory, OneUptime Advisory).
The root cause is classified as CWE-749 (Exposed Dangerous Method or Function): untrusted Synthetic Monitor JavaScript code is executed inside Node.js's vm module, but live host-realm Playwright browser and page objects are injected directly into the VM sandbox context (GitHub Advisory). The VMRunner.runCodeInNodeVM() function wraps these objects in proxies but only blocks a narrow set of property names (constructor, __proto__, prototype, mainModule), while still forwarding all other method calls with the real host this binding. Because Browser.browserType().launch() in Playwright 1.58.2 (pinned by the probe) accepts attacker-controlled executablePath, ignoreDefaultArgs, and args parameters and passes them to a child-process spawn path, an attacker can call browser.browserType().launch({ executablePath: "/bin/sh", ignoreDefaultArgs: true, args: ["-c", "id"] }) from within the sandboxed script to spawn arbitrary executables — no VM sandbox escape is required (OneUptime Advisory). The exploit is reachable via both one-shot monitor testing and normal scheduled monitor execution, and any project member has the access control permissions needed to create or edit monitors and monitor tests.
Successful exploitation grants an attacker arbitrary command execution on the oneuptime-probe server or container with the privileges of the probe process, resulting in full compromise of confidentiality, integrity, and availability of that component (OneUptime Advisory). Because the probe typically has access to internal services, Kubernetes metadata, database credentials, proxy credentials, and other cluster-local trust relationships, a successful attack can enable significant lateral movement within the hosting environment. The scope is marked as "Changed" in CVSS, reflecting that the impact extends beyond the vulnerable component itself to the broader infrastructure.
A detailed proof-of-concept (PoC) with step-by-step reproduction instructions and a specific JavaScript payload is publicly available in the official security advisory (OneUptime Advisory). The exploit requires only low privileges (ordinary project membership) and no user interaction, making it straightforward to weaponize. The EPSS score is approximately 0.112% (29th percentile), and as of the time of reporting there is no confirmed evidence of in-the-wild exploitation or threat actor attribution (GitHub Advisory). The vulnerability is not currently listed in the CISA Known Exploited Vulnerabilities (KEV) catalog.
browser.browserType().launch({
executablePath: "/bin/sh",
ignoreDefaultArgs: true,
args: ["-c", "id"],
timeout: 1000,
}).catch((err) => {
console.log(String(err));
});
return { data: { launched: true } };id) on the server; the output appears in the monitor test results under "Show More Details."id command with a reverse shell, data exfiltration command, or other payload to achieve persistent access or lateral movement within the probe's network environment (OneUptime Advisory)./bin/sh, bash, curl, wget, python) during Synthetic Monitor execution; monitor test result output containing OS command output (e.g., uid=, gid=) in the "Show More Details" field./bin/sh -c <command>) spawned by the oneuptime-probe Node.js process; unexpected network connections originating from the probe container to external IPs.The vulnerability is fixed in OneUptime version 10.0.21, released March 8, 2026; all users should upgrade immediately (OneUptime Release). As an interim workaround, restrict Synthetic Monitor creation and modification permissions to trusted users only (e.g., ProjectOwner or ProjectAdmin roles), preventing untrusted project members from injecting malicious code. Additionally, monitor probe servers for suspicious process execution originating from Node.js processes, and consider network-segmenting probe containers to limit the blast radius of any successful exploitation (GitHub Advisory).
The vulnerability received coverage from The Hacker Wire, which published an article specifically on the RCE in OneUptime Synthetic Monitors (The Hacker Wire), and SecurityOnline.info noted it alongside other critical OneUptime flaws in a piece titled "Maximum 10.0 CVSS Flaws in OneUptime Allow Full Account Takeovers and RCE" (SecurityOnline). The advisory was also highlighted in PoC-focused security digests such as Tony Harris's weekly PoC roundups for the weeks of March 16 and March 23, 2026. Community reaction focused on the design-level nature of the flaw — that no VM sandbox escape was needed because dangerous capabilities were exposed by design — which was noted as a particularly instructive case of insecure sandbox architecture.
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."