CVE-2026-48084 in Appointment Booking Softwareinfo

Summary

by MITRE • 08/07/2026

OpenReception's appointment booking software provides an end-to-end encrypted appointment booking platform. Versions prior to 1.0.2 don't throttle failed passphrase login attempts. An attacker can submit unlimited wrong passphrase guesses against any known email address, capped only by the Argon2 verification cost (about 100 milliseconds per attempt on the tested host, giving 10 attempts per second sustained). The same backend implements a working per-account throttle on the WebAuthn challenge endpoint, which returns HTTP 429 after roughly 19 attempts. The passphrase branch simply does not invoke that throttle, leaving a supported high-value login path unprotected against credential stuffing and dictionary attacks. The asymmetry confirms this is an oversight rather than a design choice. The throttle infrastructure exists, is wired into the same auth backend, and works on the WebAuthn path. The passphrase branch in `/api/auth/login` was not updated to record failed attempts. Combined with the application's minimum-passphrase policy (12 characters, no entropy or dictionary checks), accounts using common base patterns such as `Spring2026!XX` or words from a leak corpus are realistically reachable in days on a single CPU, hours on a small GPU farm. Version 1.0.2 patches the issue.

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

Analysis

by VulDB Data Team • 08/07/2026

This vulnerability in OpenReception's appointment booking software represents a critical authentication weakness that undermines the security of the end-to-end encrypted platform. The flaw exists in versions prior to 1.0.2 where the passphrase login endpoint lacks proper rate limiting mechanisms for failed authentication attempts. While the WebAuthn challenge endpoint properly implements throttling with HTTP 429 responses after approximately 19 failed attempts, the passphrase authentication path completely bypasses this security control, creating an exploitable gap in the authentication infrastructure.

The technical implementation reveals a clear oversight in the authentication flow design where the same backend system that supports rate limiting for WebAuthn operations fails to apply the same protective measures to passphrase validation. The Argon2 verification cost parameters create a significant attack surface with approximately 100 milliseconds per attempt, allowing attackers to execute roughly 10 failed login attempts per second continuously against any known email address. This computational efficiency combined with the absence of account-level throttling creates a pathway for systematic credential stuffing and dictionary attacks that would otherwise be mitigated by proper rate limiting controls.

From an operational perspective, this vulnerability directly violates fundamental security principles outlined in the OWASP Authentication Top 10 and aligns with CWE-307 - Improper Restriction of Excessive Authentication Attempts. The application's minimum passphrase policy requiring only 12 characters without entropy checks or dictionary validation creates a particularly dangerous combination with the lack of rate limiting. Attackers can systematically target accounts using common password patterns such as `Spring2026!XX` or other leaked credentials from compromised databases, making account compromise achievable within days on standard hardware or hours with modest GPU resources.

The security implications extend beyond simple credential theft to encompass potential data breaches and unauthorized access to encrypted appointment information. This vulnerability demonstrates a classic attacker technique from the MITRE ATT&CK framework's credential access category where weak authentication controls enable adversaries to perform automated password guessing attacks. The asymmetric protection between WebAuthn and passphrase authentication pathways indicates this was an implementation oversight rather than a deliberate design choice, as evidenced by the existing throttle infrastructure being properly wired into the same backend system but only utilized for one authentication path.

The remediation in version 1.0.2 addresses the core issue by implementing consistent rate limiting across all authentication paths within the `/api/auth/login` endpoint. This fix ensures that failed passphrase attempts are properly tracked and throttled, creating uniform protection against credential stuffing attacks. The patch resolves the fundamental architectural inconsistency while maintaining the application's intended functionality for legitimate users. Organizations should prioritize upgrading to version 1.0.2 or later to eliminate this vulnerability and ensure comprehensive authentication protection across all supported login methods.

Responsible

GitHub M

Reservation

05/20/2026

Disclosure

08/07/2026

Moderation

accepted

CPE

ready

EPSS

0.00000

KEV

no

Activities

low

Sources

Might our Artificial Intelligence support you?

Check our Alexa App!