CVE-2026-48081
OpenReception vulnerable to stored click-triggered XSS via javascript: tenant links rendered into patient-facing footer
OpenReception's appointment booking software provides an end-to-end encrypted appointment booking platform. Prior to version 1.0.2, a TENANT_ADMIN can store javascript: URLs in the tenant links configuration (website, imprint, privacyStatement). These values are returned to the patient-facing landing page via /api/public, hydrated into the SvelteKit Button component, and rendered as <a href="javascript:..."> elements without URL-scheme filtering. A patient who clicks any such link executes the attacker's JavaScript inside the patient browser origin, where patient form data is read before client-side encryption is applied. This breaks the project's central trust claim that the server is an untrusted relay and that administrators cannot read patient data. Patient-side encryption happens after form input, so JavaScript executing in the patient origin can read or alter the plaintext before encryption is performed. Version 1.0.2 fixes the issue.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- High
- User interaction
- Required
What an attacker can affect
- Confidentiality
- High
- Integrity
- High
- Availability
- None
Exploit likelihood
What each source reports
CVE List Score used
8.1
OpenReception vulnerable to stored click-triggered XSS via javascript: tenant links rendered into patient-facing footer
OpenReception's appointment booking software provides an end-to-end encrypted appointment booking platform. Prior to version 1.0.2, a TENANT_ADMIN can store javascript: URLs in the tenant links configuration (website, imprint, privacyStatement). These values are returned to the patient-facing landing page via /api/public, hydrated into the SvelteKit Button component, and rendered as <a href="javascript:..."> elements without URL-scheme filtering. A patient who clicks any such link executes the attacker's JavaScript inside the patient browser origin, where patient form data is read before client-side encryption is applied. This breaks the project's central trust claim that the server is an untrusted relay and that administrators cannot read patient data. Patient-side encryption happens after form input, so JavaScript executing in the patient origin can read or alter the plaintext before encryption is performed. Version 1.0.2 fixes the issue.
- Record
CVE-2026-48081- CVSS 3.1
- 8.1 High
CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:C/C:H/I:H/A:N - Weakness
- CWE-79
- Updated
- 2026-11-02
EUVDEUVD-2026-54154
8.1
OpenReception's appointment booking software provides an end-to-end encrypted appointment booking platform. Prior to version 1.0.2, a TENANT_ADMIN can store javascript: URLs in the tenant links configuration (website, imprint, privacyStatement). These values are returned to the patient-facing landing page via /api/public, hydrated into the SvelteKit Button component, and rendered as <a href="javascript:..."> elements without URL-scheme filtering. A patient who clicks any such link executes the attacker's JavaScript inside the patient browser origin, where patient form data is read before client-side encryption is applied. This breaks the project's central trust claim that the server is an untrusted relay and that administrators cannot read patient data. Patient-side encryption happens after form input, so JavaScript executing in the patient origin can read or alter the plaintext before encryption is performed. Version 1.0.2 fixes the issue.
- Record
EUVD-2026-54154- CVSS 3.1
- 8.1 High
CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:C/C:H/I:H/A:N - Updated
- 2026-11-02
NVD
8.1
OpenReception's appointment booking software provides an end-to-end encrypted appointment booking platform. Prior to version 1.0.2, a TENANT_ADMIN can store javascript: URLs in the tenant links configuration (website, imprint, privacyStatement). These values are returned to the patient-facing landing page via /api/public, hydrated into the SvelteKit Button component, and rendered as <a href="javascript:..."> elements without URL-scheme filtering. A patient who clicks any such link executes the attacker's JavaScript inside the patient browser origin, where patient form data is read before client-side encryption is applied. This breaks the project's central trust claim that the server is an untrusted relay and that administrators cannot read patient data. Patient-side encryption happens after form input, so JavaScript executing in the patient origin can read or alter the plaintext before encryption is performed. Version 1.0.2 fixes the issue.
- Record
CVE-2026-48081- CVSS 3.1
- 8.1 High
CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:C/C:H/I:H/A:N - Weakness
- CWE-79
- Updated
- 2026-11-02
OSV
8.1
OpenReception vulnerable to stored click-triggered XSS via javascript: tenant links rendered into patient-facing footer
OpenReception's appointment booking software provides an end-to-end encrypted appointment booking platform. Prior to version 1.0.2, a TENANT_ADMIN can store javascript: URLs in the tenant links configuration (website, imprint, privacyStatement). These values are returned to the patient-facing landing page via /api/public, hydrated into the SvelteKit Button component, and rendered as <a href="javascript:..."> elements without URL-scheme filtering. A patient who clicks any such link executes the attacker's JavaScript inside the patient browser origin, where patient form data is read before client-side encryption is applied. This breaks the project's central trust claim that the server is an untrusted relay and that administrators cannot read patient data. Patient-side encryption happens after form input, so JavaScript executing in the patient origin can read or alter the plaintext before encryption is performed. Version 1.0.2 fixes the issue.
- Record
CVE-2026-48081- CVSS 3.1
- 8.1 High
CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:C/C:H/I:H/A:N - Weakness
- CWE-79
- Updated
- 2026-11-02
Affected products
History
| Recorded | Changed | Sources |
|---|---|---|
| first indexed | CVE List, EUVD, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-48081 is a high vulnerability (CVSS 8.1) in Open-reception Appointment-booking-software, published August 6, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.24%, the 15th percentile. No source names a fixed version.
References
github.com/open-reception/appointment-booking-software/security/advisories/GHSA-xpr7-wx69-mp36
github.com/open-reception/appointment-booking-software/commit/98a107d4b4eaeab5cbb96ee0a28c2342b853eee0
github.com/CVEProject/cvelistV5/tree/main/cves/2026/48xxx/CVE-2026-48081.json
nvd.nist.gov/vuln/detail/CVE-2026-48081