Description
OpenReception's appointment booking software provides an end-to-end encrypted appointment booking platform. Prior to version 1.0.2, a TENANT_ADMIN promotes themselves to platform-wide GLOBAL_ADMIN through a single PUT request. The role-update handler accepts the `GLOBAL_ADMIN` enum value from any tenant admin updating their own tenant's staff. No policy check enforces that "only an existing GLOBAL_ADMIN may grant GLOBAL_ADMIN", so the schema validation IS the authorization decision. After re-login, the JWT contains the new role and the formerly-tenant-scoped admin reaches every other tenant on the platform. On the hosted OpenReception service this is a scope-changed escalation: a single customer-side tenant administrator gains full platform-wide administrative control over all other tenants' configuration, users, staff records, operational metadata, and tenant lifecycle. Plaintext appointment contents remain subject to the E2E model unless chained with the staff-crypto poisoning issue (V-4) or with staff-passkey hijacking (V-1). On a single-tenant self-hosted deployment it is still a privilege escalation because TENANT_ADMIN should not be able to create new tenants, modify global configuration, or manage other administrators. The same handler also accepts updates targeted at any colleague within the tenant. A tenant admin can promote a separate collaborator account instead of themselves, leaving their own audit trail clean while the platform-wide breach happens through a separate identity. Version 1.0.2 fixes the issue.
Published: 2026-08-06
Score: 9.9 Critical
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

A TENANT_ADMIN in OpenReception's appointment booking software can promote themselves to a platform-wide GLOBAL_ADMIN by sending a single PUT request that updates the user’s role to the GLOBAL_ADMIN enum. Because the system performs only schema validation and imposes no policy check, anyone with tenant-administrator permissions can grant themselves global‑level privileges. Once re‑authenticated, the JSON Web Token contains the new role, enabling the former tenant‑scoped admin to access every other tenant’s configuration, users, staff records, operational metadata, and tenant lifecycle settings. The vulnerability exists prior to version 1.0.2 and allows an attacker to gain unrestricted administrative control across the entire platform.

Affected Systems

The vulnerability affects the open-reception:appointment‑booking‑software product in all releases before 1.0.2. Any deployment—whether hosted on the OpenReception service or a single‑tenant self‑hosted instance—is susceptible because the enterprise‑wide role update handler is reachable by any tenant administrator. Users should identify whether their installation uses a pre‑1.0.2 version and assess the scope of tenant‑admin accounts. A tenant administrator with this flaw can alter global configuration, create tenants, manage other administrators, and compromise the entire platform’s confidentiality, integrity, or availability.

Risk and Exploitability

The flaw carries a CVSS score of 9.9, indicating critical severity. Exploitation requires only that a tenant administrator has the ability to issue a role‑update request, which is typically available to users who can manage staff within their own tenant. The EPSS score is not available, so no current estimate of exploitation probability is provided, but the absence of a KEV listing does not mitigate the high potential impact. Once exploited, the attacker gains full platform ownership, and can perform any action that a legitimate GLOBAL_ADMIN can, including creating new tenants, editing global settings, and accessing all user data. The attack path is straightforward: send a validated PUT request to the role‑update endpoint, then re‑login to obtain a JWT reflecting the new role. The setting of the GLOBAL_ADMIN flag is the sole authorization decision, so the vulnerability is a classic example of improper privilege management (CWE‑269).

Generated by OpenCVE AI on August 7, 2026 at 00:18 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Update the OpenReception application to version 1.0.2 or later to deploy the vendor‑provided fix.
  • If a timely update is not yet possible, immediately restrict tenant‑admin access to the role‑update API or implement an additional server‑side policy check that permits role changes to GLOBAL_ADMIN only when the caller already holds a GLOBAL_ADMIN privilege.
  • Revoke any GLOBAL_ADMIN privileges that may have been granted inadvertently by reviewing audit logs and resetting the roles of affected accounts to their original tenant‑admin status, then require a re‑login to invalidate any compromised tokens.

Generated by OpenCVE AI on August 7, 2026 at 00:18 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Thu, 06 Aug 2026 22:15:00 +0000

Type Values Removed Values Added
Description OpenReception's appointment booking software provides an end-to-end encrypted appointment booking platform. Prior to version 1.0.2, a TENANT_ADMIN promotes themselves to platform-wide GLOBAL_ADMIN through a single PUT request. The role-update handler accepts the `GLOBAL_ADMIN` enum value from any tenant admin updating their own tenant's staff. No policy check enforces that "only an existing GLOBAL_ADMIN may grant GLOBAL_ADMIN", so the schema validation IS the authorization decision. After re-login, the JWT contains the new role and the formerly-tenant-scoped admin reaches every other tenant on the platform. On the hosted OpenReception service this is a scope-changed escalation: a single customer-side tenant administrator gains full platform-wide administrative control over all other tenants' configuration, users, staff records, operational metadata, and tenant lifecycle. Plaintext appointment contents remain subject to the E2E model unless chained with the staff-crypto poisoning issue (V-4) or with staff-passkey hijacking (V-1). On a single-tenant self-hosted deployment it is still a privilege escalation because TENANT_ADMIN should not be able to create new tenants, modify global configuration, or manage other administrators. The same handler also accepts updates targeted at any colleague within the tenant. A tenant admin can promote a separate collaborator account instead of themselves, leaving their own audit trail clean while the platform-wide breach happens through a separate identity. Version 1.0.2 fixes the issue.
Title OpenReception: Tenant admin self-promotes to GLOBAL_ADMIN
Weaknesses CWE-269
References
Metrics cvssV3_1

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


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-08-06T21:30:32.142Z

Reserved: 2026-05-20T18:40:45.833Z

Link: CVE-2026-48086

cve-icon Vulnrichment

No data.

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-07T00:30:06Z

Weaknesses
  • CWE-269

    Improper Privilege Management