Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
ReconAuthenticate to TREK as any user
-
DeliveryObtain file-edit permission on an accessible trip
-
ExploitEnumerate or guess target reservation_id from a private trip
-
InstallSubmit crafted file-link or upload request with foreign reservation_id
-
C2Server stores unvalidated foreign key
-
ExecutegetFileLinks() or FILE_SELECT joins foreign reservation
-
ImpactResponse leaks reservation_title from private trip
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Object-level authorization, IDOR prevention
|
| Exploitation Conditions | Exploitation requires a valid TREK user account with file-edit permission on at least one trip accessible to the attacker - no admin or owner role is needed, only the file-edit grant on any trip (PR:L per CVSS). The attacker must supply a valid reservation_id, place_id, or assignment_id belonging to a target trip; if these identifiers are sequential integers they may be brute-forced, but UUID-based identifiers would require prior knowledge or leakage from another source. Disclosed information is limited to reservation_title fields only; full reservation content, authentication tokens, files, and other trip data are not exposed via this path. Standard multi-user TREK deployment with no special configuration is sufficient for exploitation - no non-default feature flag or specific infrastructure mode is required. |
| Impact | The CVSS 4.3 base score (AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N) accurately represents the limited blast radius: the attack is network-accessible with no special configuration and low complexity, but requires a valid authenticated session with file-edit rights on at least one trip (PR:L). Scope is unchanged (S:U) and impact is restricted to confidentiality at a low level - only reservation_title strings are disclosed, not full reservation content, credentials, or files. No CISA KEV listing is present and no public POC has been identified, placing real-world exploitation priority below actively exploited vulnerabilities of similar score. In multi-tenant deployments the privacy boundary violation is meaningful: itinerary details from private trips leak to unauthorized co-users. The risk is moderate for privacy-sensitive deployments and low for single-user or small trusted-team instances. No conflicting signals between CVSS and description text are apparent. |
| Exploit ScenarioDerived | An authenticated TREK user who has been granted file-edit access to their own trip enumerates or guesses a valid reservation_id belonging to a different user's private trip, then submits a POST /api/trips/:tripId/files/:id/link request embedding that foreign identifier. When the server subsequently executes getFileLinks() or FILE_SELECT for any file on the attacker's trip, the ORM join returns the private trip's reservation_title in the JSON response, revealing itinerary details without any elevated privileges or special tooling beyond a standard HTTP client. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 20, 2026
Insecure direct object reference in TREK collaborative travel planner before 3.1.3 allows any authenticated user with file-edit permission on any accessible trip to disclose reservation titles from private trips they do not own. By supplying attacker-controlled reservation_id, place_id, or assignment_id values to three file management API endpoints, the server joins the foreign reservation record in subsequent FILE_SELECT or getFileLinks() database queries and returns reservation_title in the response, crossing private trip boundaries. No public exploit code has been identified at time of analysis; vendor-released patch is confirmed in version 3.1.3.
RemediationAI
Upgrade TREK to version 3.1.3 or later; the fix was delivered via commit 03cdb4d27689922460ba87085d04b426d4d40d26 (PR #1324) and applies findForeignLinkTarget() validation to reservation_id, place_id, and assignment_id inputs across all three affected file endpoints. The vendor advisory is at https://github.com/liketrek/TREK/security/advisories/GHSA-r4cp-666p-8f69 and the release is at https://github.com/liketrek/TREK/releases/tag/v3.1.3. If immediate upgrade is not feasible, restrict network access to the affected endpoints (POST /api/trips/:tripId/files/:id/link, POST /api/trips/:tripId/files, PUT /api/trips/:tripId/files/:id) to trusted internal network segments via reverse-proxy ACLs or firewall rules; this trade-off disables remote file-management functionality for all users but eliminates the cross-trip disclosure path. No code-free workaround fully closes the vulnerability without restricting endpoint access.
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 is a self-hostable Node.js collaborative trip planning application (CPE: cpe:2.3:a:mauriceboe:trek). The vulnerability is rooted in CWE-639 (Authorization Bypass Through User-Controlled Key): the file upload (POST /api/trips/:tripId/files), file update (PUT /api/trips/:tripId/files/:id), and file-link (POST /api/trips/:tripId/files/:id/link) endpoints accept user-supplied reservation_id, place_id, and assignment_id foreign keys without invoking findForeignLinkTarget() to verify that the referenced object belongs to the same trip as the file being modified. Because the ORM joins on these unvalidated identifiers in FILE_SELECT and getFileLinks(), reservation metadata from arbitrary trips leaks into the API response of the requesting user, violating the trip-level isolation boundary the application intends to enforce.
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
Requires authenticated file-edit access (PR:L); only reservation titles disclosed across trip boundary (C:L); no integrity or availability impact; scope unchanged.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
1DescriptionCVE.org
TREK is a collaborative travel planner. Prior to 3.1.3, TREK file upload, update, and link actions accept attacker-controlled reservation_id, place_id, and assignment_id values without using findForeignLinkTarget() to verify that the referenced object belongs to the file's trip. An authenticated user with file-edit permission on any accessible trip can submit a foreign reservation identifier through POST /api/trips/:tripId/files/:id/link, POST /api/trips/:tripId/files, or PUT /api/trips/:tripId/files/:id. Subsequent reads through FILE_SELECT or getFileLinks() join the foreign reservation and return reservation_title, disclosing reservation existence and titles across private trip boundaries. This issue is fixed in version 3.1.3.
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
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
Malicious file upload attacks exploit insufficient validation when web applications accept user-provided files.
Server-side request forgery in TREK before 3.3.0 allows an authenticated user (CVSS PR:L) to persist an attacker-control
Authentication bypass in TREK collaborative travel planner (versions prior to 2.7.2) allows authenticated attackers with
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
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-63642
NVD
CVE.org
EPSS
Vulnrichment
GitHub
Exploit-DB