Home

Description

OneUptime is a solution for monitoring and managing online services. Prior to 10.0.18, OneUptime allows project members to run custom Playwright/JavaScript code via Synthetic Monitors to test websites. However, the system executes this untrusted user code inside the insecure Node.js vm module. By leveraging a standard prototype-chain escape (this.constructor.constructor), an attacker can bypass the sandbox, gain access to the underlying Node.js process object, and execute arbitrary system commands (RCE) on the oneuptime-probe container. Furthermore, because the probe holds database/cluster credentials in its environment variables, this directly leads to a complete cluster compromise. This vulnerability is fixed in 10.0.18.

PUBLISHED Reserved 2026-03-06 | Published 2026-03-09 | Updated 2026-03-10 | Assigner GitHub_M




CRITICAL: 10.0CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H

Problem types

CWE-94: Improper Control of Generation of Code ('Code Injection')

Product status

< 10.0.18
affected

References

github.com/...uptime/security/advisories/GHSA-h343-gg57-2q67 exploit

github.com/...uptime/security/advisories/GHSA-h343-gg57-2q67

cve.org (CVE-2026-30887)

nvd.nist.gov (CVE-2026-30887)

Download JSON