Description
Novu provides an API for sending notifications through multiple channels. Prior to 3.18.0, Novu's @novu/js In-App Inbox and the @novu/react Inbox component accept a notification call-to-action redirect.url from the v1 cta.data object and pass it through apps/api/src/app/inbox/utils/notification-mapper.ts and packages/js/src/ui/components/Notification/DefaultNotification.tsx to the navigate function in packages/js/src/ui/context/InboxContext.tsx without validating its URL scheme. An authenticated organization member or environment API-key holder can store a javascript: redirect with target _self in an in-app workflow. When a recipient using a Chromium-based browser clicks the notification, window.open executes the redirect in the current inbox-hosting origin, which can expose session material and permit authenticated actions in a customer application or the self-hosted Novu dashboard. This issue is fixed in version 3.18.0.
Published: 2026-09-22
Score: 5.1 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Cross‑Site Scripting
Action: Immediate Patch
AI Analysis

Impact

Novu’s In‑App Inbox and React component allow malicious javascript: URLs to be stored in a notification’s call‑to‑action redirect.url field without verifying the URL scheme. An authenticated organization member or API‑key holder can embed a javascript: link that points to target _self. When a user in a Chromium‑based browser clicks the notification, the code runs in the inbox‑hosting origin, enabling the attacker to read session tokens or perform authenticated actions in the customer’s application or self‑hosted Novu dashboard.

Affected Systems

Novu (novuhq:novu) versions older than 3.18.0, specifically the @novu/js In‑App Inbox and the @novu/react Inbox component libraries that process notification call‑to‑action URLs.

Risk and Exploitability

The vulnerability is a stored cross‑site scripting flaw that requires the attacker to create a malicious notification and rely on a user’s interaction with the In‑App Inbox. The CVSS score of 5.1 indicates medium severity, no EPSS data is available, and the vulnerability is not listed in the CISA KEV catalog. Because the exploit is user‑dependent and the code runs in the current origin, the risk is moderate but could result in session hijacking or unauthorized actions against the victim’s account.

Generated by OpenCVE AI on September 22, 2026 at 18:05 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Update Novu to version 3.18.0 or later.
  • If an upgrade is not immediately possible, configure the In‑App Inbox to reject or sanitize javascript: scheme URLs, allowing only http and https protocols.
  • Restrict or monitor the usage of organization API keys to prevent malicious storage of redirect URLs.

Generated by OpenCVE AI on September 22, 2026 at 18:05 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-8gr3-5j6f-25gp Novu: Stored XSS in In-App Inbox via notification redirect.url javascript: scheme
History

Tue, 22 Sep 2026 19:15:00 +0000

Type Values Removed Values Added
First Time appeared Novu
Novu novu
Vendors & Products Novu
Novu novu

Tue, 22 Sep 2026 17:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Tue, 22 Sep 2026 16:00:00 +0000

Type Values Removed Values Added
Description Novu provides an API for sending notifications through multiple channels. Prior to 3.18.0, Novu's @novu/js In-App Inbox and the @novu/react Inbox component accept a notification call-to-action redirect.url from the v1 cta.data object and pass it through apps/api/src/app/inbox/utils/notification-mapper.ts and packages/js/src/ui/components/Notification/DefaultNotification.tsx to the navigate function in packages/js/src/ui/context/InboxContext.tsx without validating its URL scheme. An authenticated organization member or environment API-key holder can store a javascript: redirect with target _self in an in-app workflow. When a recipient using a Chromium-based browser clicks the notification, window.open executes the redirect in the current inbox-hosting origin, which can expose session material and permit authenticated actions in a customer application or the self-hosted Novu dashboard. This issue is fixed in version 3.18.0.
Title Novu: Stored XSS in In-App Inbox via notification redirect.url javascript: scheme
Weaknesses CWE-79
References
Metrics cvssV4_0

{'score': 5.1, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-09-22T15:59:27.761Z

Reserved: 2026-08-17T20:49:21.598Z

Link: CVE-2026-75510

cve-icon Vulnrichment

Updated: 2026-09-22T15:59:24.621Z

cve-icon NVD

Status : Deferred

Published: 2026-09-22T16:17:53.950

Modified: 2026-09-24T21:25:27.050

Link: CVE-2026-75510

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-22T19:00:12Z

Weaknesses
  • CWE-79

    Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')