CVE-2026-54505: TREK: Stored cross-user HTML injection via trip title in the Journey suggestion banner

Published Aug 20, 2026
·
Updated

TREK is a collaborative travel planner. Prior to 3.1.0, when the Journey add-on is enabled, TREK interpolates the unescaped activeSuggestion.title value into journey.frontpage.suggestionText through client/src/i18n/TranslationContext.tsx and renders the result with dangerouslySetInnerHTML in client/src/pages/JourneyPage.tsx. A trip owner can store HTML in a qualifying trip title, and GET /api/journeys/suggestions returns that title through getSuggestions(userId) to a collaborator who opens the authenticated Journey page. The markup is inserted as live DOM in the collaborator's session, enabling content spoofing and UI redress, although the default Content Security Policy blocks inline handlers and script execution. This issue is fixed in version 3.1.0.

Affected Software

1 affected component
TREK TREK<3.1.0

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade TREK Journey add-on to a version that resolves this vulnerability.

    Fixed in 3.1.0

Event History

Aug 20, 2026
CVE Published
via MITRE·09:44 PM
Data Sourced
via MITRE·09:44 PM
DescriptionWeakness

Frequently Asked Questions

1

Who is exposed to this issue?

Collaborators who open the authenticated Journey page are exposed when the Journey add-on is enabled and a trip owner has created a qualifying trip with HTML in its title. The affected suggestion is returned by the journey suggestions API and rendered in the collaborator's session.

2

What must an attacker be able to do to exploit it?

The attacker must be a trip owner able to store HTML in a qualifying trip title. A collaborator must then open the authenticated Journey page so that the suggestion banner renders the title.

3

Does this allow JavaScript execution?

The injected markup is inserted as live DOM, enabling content spoofing and UI redress. The default Content Security Policy blocks inline event handlers and script execution.

4

What should be done if patching is not immediately possible?

Disable the Journey add-on to prevent the affected suggestion-banner path from being used. Also review qualifying trip titles created by trip owners for stored HTML and remove unsafe markup.

5

How can I determine whether an instance is affected?

Instances running a version prior to 3.1.0 are affected when the Journey add-on is enabled. Check whether qualifying trip titles containing HTML are returned by GET /api/journeys/suggestions and displayed on the authenticated Journey page.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203