Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain scoped OAuth MCP token (e.g. weather:read)
-
ExploitInvoke get_trip_summary tool
-
ExecutionMissing trips:read scope check bypassed
-
ImpactExfiltrate trip data and member emails
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V14 - Data Protection Data exposure prevention
MITRE ATT&CK
2 techniques across 2 tactics: Collection, Discovery The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires a valid, already-issued scoped OAuth MCP token for a TREK instance running a version prior to 3.3.0; the token can hold any scope (e.g. weather:read) and does NOT need trips:read, because get_trip_summary was registered without enforcing that scope. Exploitation is limited to trips accessible to the token's own user - cross-user trip authorization remains enforced - so an attacker cannot read arbitrary users' trips, only defeat the intended least-privilege scope boundary for the consenting user's own trips and their collaborators' email addresses. It requires that MCP/OAuth token functionality be deployed and in use. |
| Impact | This is a low-severity, authenticated information-disclosure issue that is a real but low-priority hardening fix rather than a widespread threat. All exploitation signals are modest and mutually consistent: the CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N, base 4.3) requires an already-issued, authenticated OAuth MCP token (PR:L), delivers only limited confidentiality impact (C:L) and no integrity or availability impact. No EPSS score, CISA KEV listing, or public POC was provided, so exploitation status is 'no public exploit identified at time of analysis' - nothing suggests active or automatable mass exploitation. The core weakness is a missing scope check (CWE-200) that defeats the consented least-privilege boundary, but crucially the description confirms cross-user trip authorization is still enforced, so a token cannot reach trips outside its own user. The main risk nuance is third-party exposure: member email addresses of collaborators are leaked to an MCP client the user never authorized for trip data. No data is missing or conflicting; the CVSS vector, description, and CWE all align. |
| Exploit ScenarioDerived | A user connects an MCP client (e.g., a weather add-on) and grants it only a narrow scope such as weather:read. That client - or a malicious/over-curious integration holding the token - invokes get_trip_summary and receives trip metadata, itinerary days, accommodations, and collaborators' email addresses for every trip the user can access, despite never being granted trips:read. No public exploit code is known, and exploitation requires a valid scoped token, so the practical attacker is a rogue or compromised MCP integration rather than an anonymous remote actor. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 24, 2026
Scoped OAuth MCP tokens issued by TREK before 3.3.0 can pull complete trip summaries - trip metadata, itinerary days, accommodations, and the email addresses of trip members - through the get_trip_summary tool even when the token was never granted the trips:read scope. The issue is an authenticated (CVSS PR:L), low-severity least-privilege bypass: an MCP client holding only an unrelated capability such as weather:read receives data it was never consented to read, defeating the OAuth scope boundary for the token owner's own trips and those of their collaborators. Cross-user trip authorization still holds, so the flaw is not a path to arbitrary users' trips, and no public exploit code was identified at time of analysis; vendor fix is TREK 3.3.0.
RemediationAI
Upgrade to TREK 3.3.0 (Vendor-released patch: 3.3.0), which adds the missing required-scope enforcement so get_trip_summary demands trips:read, as delivered in PR https://github.com/liketrek/TREK/pull/1520 and commit https://github.com/liketrek/TREK/commit/19064b39176660f3be3a2df198c87949504046e2; details are in advisory https://github.com/liketrek/TREK/security/advisories/GHSA-qvw8-w937-vcmq and the release notes at https://github.com/liketrek/TREK/releases/tag/v3.3.0. If patching must wait, revoke and re-issue all existing MCP OAuth tokens so that tokens are re-consented only with the scopes their clients genuinely need, and delete or disable narrow-scope tokens such as weather:read that were never intended to read trips - the trade-off is that legitimate integrations must be reauthorized and will lose access until reissued. Additionally, suspend MCP token issuance (or disable the MCP tool surface for untrusted clients) until 3.3.0 is deployed, accepting that this breaks MCP-based automation for all users; as a lower-impact compensating control on self-hosted deployments, restrict MCP endpoints to trusted networks or known client IPs, which reduces reachability but does not fix the underlying scope bypass for allowed clients. Because only the token owner's own trips and their collaborators' member email addresses were exposed, rotate or notify affected collaborator contacts if token issuance was untrusted.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
TREK exposes an MCP (Model Context Protocol) server whose tools live in server/src/mcp/tools/trips.ts and are reachable by OAuth-issued, scope-limited MCP tokens. The get_trip_summary tool was registered for scoped tokens without a required-scope declaration, so no trips:read check was performed before it called into server/src/services/tripService.ts and returned trip summary content. This is a classic CWE-200 exposure of sensitive information caused by missing authorization enforcement on a delegated-scope endpoint rather than a memory-safety or injection flaw: the trust boundary that failed is the OAuth consent/least-privilege boundary between the scopes a user approved and the data a tool can actually reach. Because the underlying per-user trip authorization logic is untouched, the exposure scope is bounded to trips already accessible to the token's user, but the leaked fields include third-party contact information (member email addresses), which makes it a privacy issue for collaborators as well as a scoping bug.
Know when Trek gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
Network-reachable MCP endpoint (AV:N/AC:L), but a valid scoped OAuth token is required (PR:L); only limited data disclosure (C:L), no integrity or availability impact, and no scope change.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
1DescriptionCVE.org
TREK is a collaborative travel planner. Prior to 3.3.0, the get_trip_summary tool in server/src/mcp/tools/trips.ts is registered for scoped OAuth MCP tokens without requiring trips:read and returns core trip summary data regardless of the delegated scopes. A token granted only an unrelated capability, such as weather:read, can receive trip metadata, member email addresses from server/src/services/tripService.ts, itinerary days, and accommodations for every trip accessible to the token's user. Cross-user trip authorization remains enforced, but the missing scope check defeats the consented least-privilege boundary and exposes trip content and third-party contact information to an MCP client that was not authorized to read it. This issue is fixed in version 3.3.0.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
Server-side request forgery in TREK before 3.3.0 allows an authenticated user (CVSS PR:L) to persist an attacker-control
TREK, a collaborative travel-planning web application, authorizes the DELETE /api/trips/:tripId/collab/notes/:noteId/fil
Share-link token theft in TREK versions 3.0.0 through 3.0.x allows any ordinary authenticated user to exfiltrate private
Authentication bypass in TREK collaborative travel planner (versions prior to 2.7.2) allows authenticated attackers with
Path traversal in the liketrek TREK Public Journey Photo Proxy controller allows remote attackers - without authenticati
Improper authentication in liketrek TREK up to version 3.0.22 allows a remote unauthenticated attacker to bypass the OID
Server-side request forgery in TREK (versions prior to 3.4.0) allows an authenticated user to reach internal services or
Incorrect authorization in liketrek TREK's Journey Photo Proxy (all versions through 3.0.22) enables remote unauthentica
Server-Side Request Forgery in TREK, a collaborative travel planner, allows any authenticated user to pivot the server i
Authentication bypass in liketrek TREK up to v3.0.22 allows a remote attacker with valid credentials to circumvent two-f
TREK, a self-hosted collaborative travel planner, returns complete trip itinerary data - day plans, assignments, notes,
SQL injection in liketrek TREK's Journey Entry Update endpoint allows authenticated remote attackers to manipulate under
EUVD-2026-86339
NVD
CVE.org
EPSS
GitHub
Exploit-DB