A Beta9 tenant can attach a volume when deploying a function, endpoint, or task queue. The gateway builds the host path by joining the shared volumes root, the workspace name, and the volume identifier from the stub configuration. Nothing checks that the identifier names a volume that workspace owns. Parent-directory segments in the identifier collapse the joined path to the worker's filesystem root, and the worker bind-mounts that path into the sandbox read-write unless the volume was explicitly marked read-only. A tenant with a workspace token can therefore read and write the worker's files, including other tenants' volumes stored on that machine. Confirmed against gateway 0.1.769 and worker 0.1.745. Fixed in gateway 0.1.776 and worker 0.1.756: volume identifiers and mount paths are validated before a mount is built, including for stubs saved before the check existed, and the gateway rejects a volume that does not exist or is not owned by the workspace.
Fix
Patch, vendor advisory and mitigation references on NVD 2
- https://github.com/beam-cloud/beta9/pull/1897 patch
- https://github.com/beam-cloud/beta9/commit/a28bf12cf0007c792a25d8ed282b4e8bf6f30393 patch
Every line above is quoted from NVD, CISA, Microsoft, the vendor's own advisory or DISA; nothing is generated.
Change history 1
- First seenCVSS 9.9 · beam-cloudNVD modified 2026-11-01 12:51
Affected (CPE criteria) 0
NVD has not attached CPE configurations yet.
References 7
- https://github.com/beam-cloud/beta9 product
- https://github.com/beam-cloud/beta9/pull/1897 patch
- https://github.com/beam-cloud/beta9/commit/a28bf12cf0007c792a25d8ed282b4e8bf6f30393 patch
- https://github.com/beam-cloud/beta9/releases/tag/gateway-0.1.776 release-notes
- https://github.com/beam-cloud/beta9/releases/tag/worker-0.1.756 release-notes
- https://github.com/beam-cloud/beta9/releases/tag/gateway-0.1.769 technical-description
- https://github.com/beam-cloud/beta9/releases/tag/worker-0.1.745 technical-description