Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Unauthenticated network file read (C:H) whose stolen signing secret realistically enables cookie forgery and account takeover (I:H); no availability impact and scope unchanged within the app.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
4DescriptionCVE.org
OpenChamber 1.11.7 contains a path traversal vulnerability in the file-serving endpoints /api/fs/read, /api/fs/stat, and /api/fs/raw that allows unauthenticated remote attackers to read arbitrary files by supplying the allowOutsideWorkspace=true query parameter alongside an absolute path, bypassing the workspace boundary check in resolveReadPathFromContext. Attackers can exploit the vacuous isPathWithinRoot guard to read sensitive files such as the JWT signing secret, SSH private keys, API credentials, and environment variables, enabling full authentication bypass by forging session cookies on password-protected deployments.
AnalysisAI
Unauthenticated arbitrary file read in OpenChamber 1.11.7 lets remote attackers pull any file off the host by setting the allowOutsideWorkspace=true query parameter with an absolute path against the /api/fs/read, /api/fs/stat, and /api/fs/raw endpoints. Because the workspace boundary check in resolveReadPathFromContext relies on a vacuous isPathWithinRoot guard, attackers can harvest the JWT signing secret, SSH private keys, and API credentials, then forge session cookies to fully bypass authentication on password-protected deployments. Reported by VulnCheck with an upstream fix committed; no public exploit identified at time of analysis.
Technical ContextAI
OpenChamber is a self-hosted Node.js/Electron workspace application whose web server exposes file-serving endpoints intended to stay confined to a project workspace directory. The root cause is CWE-22 (Improper Limitation of a Pathname to a Restricted Directory / path traversal): the resolveReadPathFromContext logic is supposed to reject paths outside the workspace root, but the isPathWithinRoot guard is effectively vacuous - when the client supplies allowOutsideWorkspace=true together with an absolute path, the boundary check is skipped entirely rather than validating the resolved path against the root. The fix (commit f1b9506) replaces implicit trust of the allowOutsideWorkspace flag with an explicit, cryptographically minted 'outside file grant' (mintOutsideFileGrant) scoped to stat/read/raw operations, and hardens the Docker/desktop deployment path so LAN exposure requires a UI password. The affected CPE is cpe:2.3:a:bohdan_triapitsyn:openchamber:*, indicating a single-vendor application rather than a widely embedded library.
RemediationAI
Upstream fix available (PR/commit); released patched version not independently confirmed - apply the vendor fix from commit f1b9506132faf6c564a2694c7f33b94421a49b4a (https://github.com/openchamber/openchamber/commit/f1b9506132faf6c564a2694c7f33b94421a49b4a), which replaces the allowOutsideWorkspace trust path with signed, scope-limited outside-file grants, or upgrade to the first tagged release that incorporates it once published. Until you can deploy the fixed build, do not expose OpenChamber to untrusted networks: bind the service to loopback (127.0.0.1) instead of 0.0.0.0 and place any remote access behind a VPN or an authenticating reverse proxy, accepting the trade-off that legitimate LAN/remote users lose direct access. Set a strong OPENCHAMBER_UI_PASSWORD (the hardened docker-compose now refuses to start Docker exposure without one) - note this raises the bar but does NOT by itself stop the file read, since the endpoints are reachable pre-authentication, so network restriction is the primary control. After patching, rotate any secrets that may have been exposed (JWT signing secret, SSH keys, API credentials) and invalidate existing sessions, since stolen signing material remains usable regardless of the code fix.
More in Openchamber
View allUnauthenticated remote code execution in OpenChamber 1.11.7 lets remote attackers run arbitrary OS commands by POSTing t
Unauthenticated remote shutdown of OpenChamber 1.11.7 is possible by sending a single POST request to /api/system/shutdo
Same weakness CWE-22 – Path Traversal
View allSame technique Authentication Bypass
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-53936
GHSA-9wgq-4cmq-jhvv