
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2026-32103 is an Insecure Direct Object Reference (IDOR) vulnerability in StudioCMS, an Astro-native headless content management system, that enables an authenticated admin to perform a complete account takeover of the highest-privileged (owner) account via a flawed password reset mechanism. The vulnerability affects all StudioCMS versions up to and including 0.4.2 (npm package studiocms), and was disclosed on March 11, 2026. It carries a CVSS v3.1 base score of 7.2 (High) per Feedly/NVD, or 6.8 (Moderate) per the GitHub Advisory (GitHub Advisory, StudioCMS Advisory).
The root cause is a missing role hierarchy check and absent caller identity validation in the POST /studiocms_api/dashboard/create-reset-link endpoint (CWE-639: Authorization Bypass Through User-Controlled Key; CWE-640: Weak Password Recovery Mechanism). The handler in packages/studiocms/frontend/pages/studiocms_api/dashboard/create-reset-link.ts correctly verifies that the caller holds admin privileges, but then accepts an arbitrary userId from the JSON request body without comparing it to the caller's own session identity or checking whether the target user outranks the caller. The generated password reset token (a signed JWT) is returned directly in the HTTP response body, which can then be submitted to POST /studiocms_api/dashboard/reset-password to set an arbitrary new password for the targeted account — including the owner account (StudioCMS Advisory).
Successful exploitation allows any authenticated admin-level user to fully take over the owner account — the highest-privileged account in a StudioCMS instance — by resetting its password without the owner's knowledge or consent. This grants the attacker complete control over all content, user management, and system configuration within the CMS. While the vulnerability requires existing admin credentials (limiting the initial attack surface), the integrity impact is critical since it enables privilege escalation beyond the attacker's assigned role, and there is no confidentiality or availability impact beyond the account takeover itself (StudioCMS Advisory, GitHub Advisory).
A detailed proof-of-concept (PoC) exploit is publicly available in the GitHub security advisory, providing step-by-step HTTP requests that demonstrate the full attack chain from token generation to password reset (StudioCMS Advisory). The EPSS score is approximately 0.019–0.024%, indicating a low current probability of exploitation in the wild, and there is no evidence of active in-the-wild exploitation or threat actor attribution at this time. The vulnerability is not listed in the CISA KEV catalog. Exploitation requires authenticated admin-level access, which limits opportunistic exploitation but makes it a significant insider threat or post-compromise escalation vector.
/studiocms_api/dashboard/verify-session with the admin session cookie to confirm the attacker's permissionLevel is admin and retrieve the admin's user UUID.2450bf33-0135-4142-80be-9854f9a5e9f1)./studiocms_api/dashboard/create-reset-link with the admin session cookie and the owner's UUID in the JSON body: {"userId": "<owner-uuid>"}. The server returns a signed JWT reset token, a reset record id, and the target userId in the response body./studiocms_api/dashboard/reset-password using the id, userId, and token from the previous response, along with a new attacker-chosen password: {"id": "<id>", "userid": "<owner-uuid>", "token": "<jwt>", "password": "pwned1234@@", "confirm_password": "pwned1234@@"}. The server responds with {"message": "User password updated successfully"}./studiocms_api/dashboard/create-reset-link where the userId in the request body does not match the authenticated caller's own user ID; POST requests to /studiocms_api/dashboard/reset-password shortly after, originating from an admin session.verify-session → create-reset-link (targeting owner UUID) → reset-password within a short time window from the same admin session (StudioCMS Advisory).The vulnerability is fixed in StudioCMS version 0.4.3 (npm package studiocms). All users running version 0.4.2 or earlier should upgrade immediately. The fix enforces role hierarchy checks in the create-reset-link endpoint to prevent admins from generating reset tokens for higher-privileged accounts, and validates that reset token generation requests are scoped appropriately. No configuration-based workaround is available; upgrading to 0.4.3 is the only remediation (GitHub Advisory, StudioCMS Advisory).
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."