StudioCMS is a server-side-rendered, Astro native, headless content management system. Prior to 0.3.1, the S3 storage manager's isAuthorized() function is declared async (returns Promise<boolean>) but is called without await in both the POST and PUT handlers. Since a Promise object is always truthy in JavaScript, !isAuthorized(type) always evaluates to false, completely bypassing the authorization check. Any authenticated user with the lowest visitor role can upload, delete, rename, and list all files in the S3 bucket. This vulnerability is fixed in 0.3.1.
History

Wed, 11 Mar 2026 20:30:00 +0000

Type Values Removed Values Added
Description StudioCMS is a server-side-rendered, Astro native, headless content management system. Prior to 0.3.1, the S3 storage manager's isAuthorized() function is declared async (returns Promise<boolean>) but is called without await in both the POST and PUT handlers. Since a Promise object is always truthy in JavaScript, !isAuthorized(type) always evaluates to false, completely bypassing the authorization check. Any authenticated user with the lowest visitor role can upload, delete, rename, and list all files in the S3 bucket. This vulnerability is fixed in 0.3.1.
Title StudioCMS S3 Storage Manager Authorization Bypass via Missing `await` on Async Auth Check
Weaknesses CWE-863
References
Metrics cvssV3_1

{'score': 7.6, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:H/A:L'}


cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-03-11T20:03:05.319Z

Reserved: 2026-03-10T22:02:38.854Z

Link: CVE-2026-32101

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-03-11T21:16:16.010

Modified: 2026-03-11T21:16:16.010

Link: CVE-2026-32101

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

No data.