Description
YosemiteCrew provides organization-based service and task management. In the source-reported affected main and dev snapshots, YosemiteCrew's service and PMS task-library/template routes omit organization and permission checks. `authorizeCognito` in `apps/backend/src/middlewares/auth.ts` sets the authenticated user's ID but does not provide the `withOrgPermissions()` and `requirePermission(...)` checks used by protected siblings. In `apps/backend/src/routers/service.router.ts`, `PATCH /fhir/v1/service/:id` and `DELETE /fhir/v1/service/:id` are authentication-only, while `GET /fhir/v1/service/:id` has no authentication middleware. The trace through `apps/backend/src/controllers/web/service.controller.ts` to `apps/backend/src/services/service.service.ts` passes a global record ID into `ServiceModel.findById(oid)` without an `organisationId` filter. In `apps/backend/src/routers/task.router.ts`, `PUT /v1/task/pms/library/:libraryId`, `POST /v1/task/pms/templates`, `PATCH /v1/task/pms/templates/:templateId` and `DELETE /v1/task/pms/templates/:templateId` likewise lack organization/role enforcement. Any registered platform user, including a patient/companion-app account, can modify or delete another organization's service catalogue and PMS task-library/template data, affecting bookings and billing; service records can additionally be read without authentication. An earlier security change protected create routes but left these sibling operations exposed. A fixed release cannot be established from the available evidence.
Published: 2026-10-28
Score: 8.3 High
EPSS: n/a
KEV: No
Impact: Authorization bypass enabling any authenticated user to read, modify or delete data belonging to other organizations
Action: Assess Impact
AI Analysis

Impact

The vulnerability resides in missing organization and permission checks on several service and PMS routes. Endpoints such as PATCH, DELETE, and PUT for service records and PMS libraries lack the required withOrgPermissions() and requirePermission(...) middleware, and a GET endpoint has no authentication at all. This omission allows any registered platform user—including patient‑ or companion‑app accounts—to view, modify, or delete data belonging to other organizations, directly affecting bookings and billing. The defect is a clear example of CWE‑639 (authorization bypass) and CWE‑862 (missing authorization).

Affected Systems

The affected application is YosemiteCrew, a service and task management platform. The flaw appears in the main snapshot and development snapshots of the backend. Specific routes impacted include service endpoints under /fhir/v1/service/:id and task‑library/template endpoints under /v1/task/pms. No specific version numbers are disclosed, but the issue exists in development snapshots that were publicly released at the time of the advisory.

Risk and Exploitability

A CVSS score of 8.3 indicates high severity. Although EPSS data is not available, the attack surface is wide: a simple authentication token is sufficient to reach the vulnerable endpoints, and some endpoints do not require authentication whatsoever. The lack of an organizationId filter in the data lookup chain further simplifies exploitation. Since the vulnerability is not listed in the CISA KEV catalog, there is no indication of active exploitation, but the potential impact for confidentiality, integrity, and availability is significant, especially for billing and service records. The likely attack vector is a network‑based HTTP request to the exposed endpoints, requiring only a valid user token for many actions.

Generated by OpenCVE AI on October 28, 2026 at 16:21 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Implement server‑side checks that validate the organization ID and required role for every service and PMS endpoint; this includes adding a before‑this middleware that rejects requests where the authenticated user's organization does not match the target resource's organization.
  • Add the missing requirePermission(...) checks and ensure that authorization tables are consulted for all CRUD operations on service and PMS data; these checks must guard against both PATCH and DELETE endpoints.
  • Until an official patch is available, intercept requests to the vulnerable routes with a custom firewall rule or API gateway rule that blocks all non‑admin users from performing modifications, or temporarily disable the PATCH/DELETE/PUT operations entirely.
  • After the implementation, perform a security audit of the route definitions to confirm that no other endpoints lack organization or permission validation.

Generated by OpenCVE AI on October 28, 2026 at 16:21 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Wed, 28 Oct 2026 15:45:00 +0000

Type Values Removed Values Added
Description YosemiteCrew provides organization-based service and task management. In the source-reported affected main and dev snapshots, YosemiteCrew's service and PMS task-library/template routes omit organization and permission checks. `authorizeCognito` in `apps/backend/src/middlewares/auth.ts` sets the authenticated user's ID but does not provide the `withOrgPermissions()` and `requirePermission(...)` checks used by protected siblings. In `apps/backend/src/routers/service.router.ts`, `PATCH /fhir/v1/service/:id` and `DELETE /fhir/v1/service/:id` are authentication-only, while `GET /fhir/v1/service/:id` has no authentication middleware. The trace through `apps/backend/src/controllers/web/service.controller.ts` to `apps/backend/src/services/service.service.ts` passes a global record ID into `ServiceModel.findById(oid)` without an `organisationId` filter. In `apps/backend/src/routers/task.router.ts`, `PUT /v1/task/pms/library/:libraryId`, `POST /v1/task/pms/templates`, `PATCH /v1/task/pms/templates/:templateId` and `DELETE /v1/task/pms/templates/:templateId` likewise lack organization/role enforcement. Any registered platform user, including a patient/companion-app account, can modify or delete another organization's service catalogue and PMS task-library/template data, affecting bookings and billing; service records can additionally be read without authentication. An earlier security change protected create routes but left these sibling operations exposed. A fixed release cannot be established from the available evidence.
Title YosemiteCrew: Missing organization authorization on service and PMS library/template routes
Weaknesses CWE-639
CWE-862
References
Metrics cvssV3_1

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


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-10-28T15:36:57.833Z

Reserved: 2026-07-07T19:41:00.004Z

Link: CVE-2026-59979

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-28T16:17:08.620

Modified: 2026-10-28T16:17:08.620

Link: CVE-2026-59979

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-28T16:30:15Z

Weaknesses
  • CWE-639

    Authorization Bypass Through User-Controlled Key

  • CWE-862

    Missing Authorization