CVE-2026-48079
OpenReception's logout page clears local access_token before server-side revocation, leaving duplicated tokens valid until expiry
Description
OpenReception's appointment booking software provides an end-to-end encrypted appointment booking platform. Prior to version 1.0.2, when a user navigates to the `/logout` page, the page's server-side load handler deletes the `access_token` cookie before calling `/api/auth/logout` via an internal `event.fetch()`. The internal fetch consequently runs without the auth cookie, so `apiAuthHandle` rejects it, the logout handler never executes, and `SessionService.revokeSession()` is never called for the current session. The DB session row remains valid until its natural expiry (one week by default). The user sees a successful logout (cookie gone, UI returns to login), but any party still holding a copy of the now-deleted access token can continue making authenticated API calls until the session naturally expires. The root cause is a simple ordering mistake. The same auth subsystem implements the correct order in `/api/auth/logout`: revoke the current DB session first, then delete the cookie. The page-level wrapper does the opposite. Version 1.0.2 initiates server-side logout before removing authentication cookies and first appears in version 1.0.2. Version 2.0.0 later replaces this with a race-free client-side logout flow.
INFO
Published Date :
Aug. 6, 2026, 10:17 p.m.
Last Modified :
Oct. 23, 2026, 9:10 p.m.
Remotely Exploit :
Yes !
Source :
[email protected]
Affected Products
The following products are affected by CVE-2026-48079
vulnerability.
Even if cvefeed.io is aware of the exact versions of the
products
that
are
affected, the information is not represented in the table below.
CVSS Scores
| Score | Version | Severity | Vector | Exploitability Score | Impact Score | Source |
|---|---|---|---|---|---|---|
| CVSS | 134c704f-9b21-4f2e-91b3-4a467353bcc0 | |||||
| CVSS 3.1 | HIGH | [email protected] | ||||
| CVSS 3.1 | HIGH | MITRE-CVE |
Solution
- Update to version 1.0.2 or later.
- Ensure session revocation happens before cookie deletion.
- Test the logout functionality thoroughly.
References to Advisories, Solutions, and Tools
Here, you will find a curated list of external links that provide in-depth
information, practical solutions, and valuable tools related to
CVE-2026-48079.
CWE - Common Weakness Enumeration
While CVE identifies
specific instances of vulnerabilities, CWE categorizes the common flaws or
weaknesses that can lead to vulnerabilities. CVE-2026-48079 is
associated with the following CWEs:
Common Attack Pattern Enumeration and Classification (CAPEC)
Common Attack Pattern Enumeration and Classification
(CAPEC)
stores attack patterns, which are descriptions of the common attributes and
approaches employed by adversaries to exploit the CVE-2026-48079
weaknesses.
We scan GitHub repositories to detect new proof-of-concept exploits. Following list is a collection of public exploits and proof-of-concepts, which have been published on GitHub (sorted by the most recently updated).
Results are limited to the first 15 repositories due to potential performance issues.
The following list is the news that have been mention
CVE-2026-48079 vulnerability anywhere in the article.
The following table lists the changes that have been made to the
CVE-2026-48079 vulnerability over time.
Vulnerability history details can be useful for understanding the evolution of a vulnerability, and for identifying the most recent changes that may impact the vulnerability's severity, exploitability, or other characteristics.
-
CVE Translated by [email protected]
Oct. 23, 2026
Action Type Old Value New Value Added Translation Title: appointment-booking-software de open-reception, Description: El software de reserva de citas de OpenReception proporciona una plataforma de reserva de citas cifrada de extremo a extremo. Antes de la versión 1.0.2, cuando un usuario navega a la página ’/logout’, el gestor de carga del lado del servidor de la página elimina la ’cookie’ ’access_token’ antes de llamar a ’/api/auth/logout’ a través de un ’event.fetch()’ interno. La ’fetch’ interna, en consecuencia, se ejecuta sin la ’cookie’ de autenticación, por lo que ’apiAuthHandle’ la rechaza, el gestor de cierre de sesión nunca se ejecuta y ’SessionService.revokeSession()’ nunca se llama para la ’sesión’ actual. La fila de la ’sesión’ de la base de datos permanece válida hasta su caducidad natural (una semana por defecto). El usuario ve un cierre de sesión exitoso (’cookie’ eliminada, la interfaz de usuario vuelve al inicio de ’sesión’), pero cualquier parte que aún conserve una copia del ’token’ de acceso ahora eliminado puede seguir realizando llamadas a la API autenticadas hasta que la ’sesión’ expire naturalmente. La causa raíz es un simple error de orden. El mismo subsistema de autenticación implementa el orden correcto en ’/api/auth/logout’: revocar primero la ’sesión’ actual de la base de datos, luego eliminar la ’cookie’. El envoltorio a nivel de página hace lo contrario. La versión 1.0.2 inicia el cierre de ’sesión’ del lado del servidor antes de eliminar las ’cookies’ de autenticación y aparece por primera vez en la versión 1.0.2. La versión 2.0.0 más tarde reemplaza esto con un flujo de cierre de ’sesión’ del lado del ’cliente’ sin condiciones de carrera. -
CVE Modified by 134c704f-9b21-4f2e-91b3-4a467353bcc0
Aug. 07, 2026
Action Type Old Value New Value Added Reference https://github.com/open-reception/appointment-booking-software/security/advisories/GHSA-hrhm-m2hm-7cjh Added SSVC {'id': 'CVE-2026-48079', 'role': 'CISA Coordinator', 'options': [{'exploitation': 'none'}, {'automatable': 'no'}, {'technicalImpact': 'total'}], 'version': '2.0.3', 'timestamp': '2026-08-07T17:10:37.562868Z'} -
New CVE Received by [email protected]
Aug. 06, 2026
Action Type Old Value New Value Added Affected [{'vendor': 'open-reception', 'product': 'appointment-booking-software', 'versions': [{'status': 'affected', 'version': '< 1.0.2'}]}] Added Description OpenReception's appointment booking software provides an end-to-end encrypted appointment booking platform. Prior to version 1.0.2, when a user navigates to the `/logout` page, the page's server-side load handler deletes the `access_token` cookie before calling `/api/auth/logout` via an internal `event.fetch()`. The internal fetch consequently runs without the auth cookie, so `apiAuthHandle` rejects it, the logout handler never executes, and `SessionService.revokeSession()` is never called for the current session. The DB session row remains valid until its natural expiry (one week by default). The user sees a successful logout (cookie gone, UI returns to login), but any party still holding a copy of the now-deleted access token can continue making authenticated API calls until the session naturally expires. The root cause is a simple ordering mistake. The same auth subsystem implements the correct order in `/api/auth/logout`: revoke the current DB session first, then delete the cookie. The page-level wrapper does the opposite. Version 1.0.2 initiates server-side logout before removing authentication cookies and first appears in version 1.0.2. Version 2.0.0 later replaces this with a race-free client-side logout flow. Added CVSS V3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N Added CWE CWE-613 Added Reference https://github.com/open-reception/appointment-booking-software/commit/2419f9e87a8abad72f31b1fedeb80c758b30322e Added Reference https://github.com/open-reception/appointment-booking-software/commit/f833dbf50059ff7d4ea42ce7bbb3a5cdcf7a6929 Added Reference https://github.com/open-reception/appointment-booking-software/security/advisories/GHSA-hrhm-m2hm-7cjh