/

CVE-2026-65825

Severity:

HIGH RISK

(7.5)

Online PIN Brute Force (CWE-307) in OpenReception Booking

CVE-2026-65825

Deferred

Vulnerability type

Category:

Brute-Force Authentication

CWE:

CWE-307

Impact:

Unauthorized access and account impersonation

Severity:

HIGH RISK

(7.5)

CVSS version:

3.1

Catch this CVE while code is being written

Detect vulnerable code directly in pull requests, so CVEs are fixed before merge.

Summary

OpenReception versions 2.1.0 and earlier allow a returning client's six-digit booking PIN to be guessed through repeated online attempts. A successful guess can disclose the client's booking access token, enabling access to appointment data and actions within the appointment tunnel, including adding or cancelling appointments.

OpenReception versions 2.1.0 and earlier allow a returning client's six-digit booking PIN to be guessed through repeated online attempts. A successful guess can disclose the client's booking access token, enabling access to appointment data and actions within the appointment tunnel, including adding or cancelling appointments.

Affected context

The vulnerability occurs in OpenReception's returning-client appointment booking flow when a six-digit PIN can be tested online without sufficient throttling or lockout protection. The issue can cross tenant boundaries because state belonging to one tenant may remove an authentication protection applied to another tenant, allowing a valid token for a victim's appointment tunnel to be obtained.

The vulnerability occurs in OpenReception's returning-client appointment booking flow when a six-digit PIN can be tested online without sufficient throttling or lockout protection. The issue can cross tenant boundaries because state belonging to one tenant may remove an authentication protection applied to another tenant, allowing a valid token for a victim's appointment tunnel to be obtained.

Exploit preconditions

  • Attack surface: Online returning-client booking and appointment-tunnel access
  • Required access: Network access to the booking service; possession of a target client's identifier or other information needed to initiate the PIN verification flow may be required
  • Trigger point: Repeated online verification attempts against the six-digit booking PIN
  • Why exploitation is possible: The PIN has a limited search space and the service does not sufficiently restrict repeated guesses, while cross-tenant state handling can remove an authentication safeguard for a different tenant
  • Attack surface: Online returning-client booking and appointment-tunnel access
  • Required access: Network access to the booking service; possession of a target client's identifier or other information needed to initiate the PIN verification flow may be required
  • Trigger point: Repeated online verification attempts against the six-digit booking PIN
  • Why exploitation is possible: The PIN has a limited search space and the service does not sufficiently restrict repeated guesses, while cross-tenant state handling can remove an authentication safeguard for a different tenant

Why this happens

The underlying issue is insufficient protection for a short authentication secret used in an online verification process. Without effective rate limiting, attempt monitoring, lockout, or equivalent defenses, an attacker can systematically test PIN values. The resulting authentication bypass maps to CWE-307, Improper Restriction of Excessive Authentication Attempts. The cross-tenant state interaction further indicates that authentication state is not being isolated consistently between tenants.

The underlying issue is insufficient protection for a short authentication secret used in an online verification process. Without effective rate limiting, attempt monitoring, lockout, or equivalent defenses, an attacker can systematically test PIN values. The resulting authentication bypass maps to CWE-307, Improper Restriction of Excessive Authentication Attempts. The cross-tenant state interaction further indicates that authentication state is not being isolated consistently between tenants.

Potential impact

  • An attacker may obtain a client's booking access token.
  • The attacker could access the client's appointment tunnel and its encrypted appointment data.
  • The attacker may act as the client when adding, cancelling, or modifying appointments.
  • Cross-tenant authentication state could enable unauthorized access across tenant boundaries.
  • The incident could undermine tenant isolation and appointment confidentiality.
  • An attacker may obtain a client's booking access token.
  • The attacker could access the client's appointment tunnel and its encrypted appointment data.
  • The attacker may act as the client when adding, cancelling, or modifying appointments.
  • Cross-tenant authentication state could enable unauthorized access across tenant boundaries.
  • The incident could undermine tenant isolation and appointment confidentiality.

General mitigation guidance

Mitigation generally focuses on protecting low-entropy authentication factors

and enforcing strict tenant isolation.

Common defensive patterns include:

  • Apply strong per-account, per-tenant, and per-client rate limits to PIN verification.
  • Use progressive delays, bounded retries, temporary lockouts, and abuse detection for repeated failures.
  • Avoid relying on a six-digit PIN alone for sensitive operations; use a higher-entropy or additional authentication factor where appropriate.
  • Ensure authentication state, tokens, and authorization decisions are explicitly scoped to the correct tenant and appointment.
  • Bind issued tokens to the intended client, tenant, and booking context, and invalidate them when verification state changes.
  • Minimize token privileges and require authorization checks for every appointment operation.
  • Avoid revealing whether a PIN, client, tenant, or booking exists through response differences.
  • Monitor and alert on distributed or cross-tenant guessing activity.

Mitigation generally focuses on protecting low-entropy authentication factors

and enforcing strict tenant isolation.

Common defensive patterns include:

  • Apply strong per-account, per-tenant, and per-client rate limits to PIN verification.
  • Use progressive delays, bounded retries, temporary lockouts, and abuse detection for repeated failures.
  • Avoid relying on a six-digit PIN alone for sensitive operations; use a higher-entropy or additional authentication factor where appropriate.
  • Ensure authentication state, tokens, and authorization decisions are explicitly scoped to the correct tenant and appointment.
  • Bind issued tokens to the intended client, tenant, and booking context, and invalidate them when verification state changes.
  • Minimize token privileges and require authorization checks for every appointment operation.
  • Avoid revealing whether a PIN, client, tenant, or booking exists through response differences.
  • Monitor and alert on distributed or cross-tenant guessing activity.

How teams detect issues like this

Organizations can look for:

  • Static analysis and code review findings involving PIN or OTP verification without retry limits, lockout, or throttling.
  • Authentication handlers that compare short secrets without account, tenant, or client-scoped attempt tracking.
  • Authorization logic that reads or clears authentication state using tenant identifiers supplied by the request.
  • Tokens issued without explicit tenant, client, booking, audience, or operation scope.
  • Automated tests that verify rate limits, lockout behavior, token binding, and cross-tenant isolation.
  • Policy enforcement requiring abuse controls and authorization checks for all low-entropy authentication flows.
  • Security monitoring for repeated failed PIN attempts, broad identifier enumeration, and successful access following high-volume failures.

Organizations can look for:

  • Static analysis and code review findings involving PIN or OTP verification without retry limits, lockout, or throttling.
  • Authentication handlers that compare short secrets without account, tenant, or client-scoped attempt tracking.
  • Authorization logic that reads or clears authentication state using tenant identifiers supplied by the request.
  • Tokens issued without explicit tenant, client, booking, audience, or operation scope.
  • Automated tests that verify rate limits, lockout behavior, token binding, and cross-tenant isolation.
  • Policy enforcement requiring abuse controls and authorization checks for all low-entropy authentication flows.
  • Security monitoring for repeated failed PIN attempts, broad identifier enumeration, and successful access following high-volume failures.

Sources

SourceLink
github.comgithub.com/open-reception/appointment-booking-software/security/advisories/GHSA-v4q4-xmqf-gmq8

Frequently asked

questions

Yes. The described attack uses the online booking service, although the attacker

may need information required to start the returning-client verification flow.

Not necessarily. The important prerequisite is access to the relevant online

booking workflow and enough client or booking information to submit PIN guesses.

Protect PIN verification with strict, tenant-aware rate limits, progressive

delays, bounded retries, and monitoring. Authentication tokens should also be

narrowly scoped and bound to the intended tenant, client, and booking.

Treat short PINs as low-entropy credentials, test them against automated guessing,

enforce tenant isolation in authentication state, and require authorization checks

for every operation performed with a booking token.

Yes. The described attack uses the online booking service, although the attacker

may need information required to start the returning-client verification flow.

Not necessarily. The important prerequisite is access to the relevant online

booking workflow and enough client or booking information to submit PIN guesses.

Protect PIN verification with strict, tenant-aware rate limits, progressive

delays, bounded retries, and monitoring. Authentication tokens should also be

narrowly scoped and bound to the intended tenant, client, and booking.

Treat short PINs as low-entropy credentials, test them against automated guessing,

enforce tenant isolation in authentication state, and require authorization checks

for every operation performed with a booking token.

Find out what's already
exploitable in your codebase.