Description
Trilium is an open-source hierarchical note-taking application. In versions up to and including 0.103.0, the default-on "Safe import" filter sanitizes HTML only for text notes and excludes the mindMap note type, whose JSON content is stored without sanitization, allowing an attacker-supplied import archive to embed a payload that renders as arbitrary HTML. A mind map node can carry a dangerouslySetInnerHTML property that the Mind Elixir library assigns directly to a node's innerHTML, so a malicious note survives Safe import and executes script as soon as the victim opens the imported mind map. On the desktop client the Electron renderer runs with Node integration enabled, so the injected JavaScript escalates from cross-site scripting to full remote code execution on the victim's machine. This issue is fixed in version 0.104.0.
Published: 2026-08-27
Score: 9.3 Critical
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

Trilium’s Safe import filter sanitizes HTML only for text notes; it does not process Mind Map notes, which are stored as raw JSON content. An attacker can embed a mindMap node with a dangerouslySetInnerHTML property that the Mind Elixir library writes directly to the page’s innerHTML, creating an uncontrolled cross‑site scripting flaw (CWE‑79) that permits arbitrary JavaScript execution. Because the desktop Electron client runs with Node integration enabled, the injected script gains full access to the underlying operating system, elevating the XSS into remote code execution (CWE‑94).

Affected Systems

All releases of TriliumNext’s Trilium application up to and including version 0.103.0 are affected. The vulnerability exists in the import logic shared by the application, but only the desktop Electron client’s renderer provides the privilege escalation that turns XSS into RCE.

Risk and Exploitability

The CVSS score of 9.3 indicates critical severity. EPSS information is not available, and the vulnerability is not listed in CISA KEV, but the high score and the ability to execute code at the system level keep the risk high. Exploitation requires a user to open a malicious import archive – a scenario that can be delivered via social engineering or local file interaction. Once the archive is imported, the script executes with full desktop privileges, allowing an attacker to run arbitrary code on the victim’s machine.

Generated by OpenCVE AI on August 28, 2026 at 07:13 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade Trilium to version 0.104.0 or later, which contains the fix for this issue.
  • Restrict or disable importing of untrusted archives by validating file types or sandboxing the import process.
  • On the Electron desktop client, disable Node integration or restrict renderer permissions so that injected scripts cannot access the operating system.

Generated by OpenCVE AI on August 28, 2026 at 07:13 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 28 Aug 2026 06:45:00 +0000

Type Values Removed Values Added
First Time appeared Triliumnext
Triliumnext trilium
Vendors & Products Triliumnext
Triliumnext trilium

Thu, 27 Aug 2026 18:00:00 +0000

Type Values Removed Values Added
Description Trilium is an open-source hierarchical note-taking application. In versions up to and including 0.103.0, the default-on "Safe import" filter sanitizes HTML only for text notes and excludes the mindMap note type, whose JSON content is stored without sanitization, allowing an attacker-supplied import archive to embed a payload that renders as arbitrary HTML. A mind map node can carry a dangerouslySetInnerHTML property that the Mind Elixir library assigns directly to a node's innerHTML, so a malicious note survives Safe import and executes script as soon as the victim opens the imported mind map. On the desktop client the Electron renderer runs with Node integration enabled, so the injected JavaScript escalates from cross-site scripting to full remote code execution on the victim's machine. This issue is fixed in version 0.104.0.
Title Trilium: Note Import to RCE via Mind Elixir dangerouslySetInnerHtml
Weaknesses CWE-79
CWE-94
References
Metrics cvssV4_0

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


Subscriptions

Triliumnext Trilium
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-08-27T19:21:21.331Z

Reserved: 2026-06-09T19:11:53.484Z

Link: CVE-2026-53578

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-27T20:17:48.860

Modified: 2026-08-27T20:17:48.860

Link: CVE-2026-53578

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-28T07:15:05Z

Weaknesses
  • CWE-79

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

  • CWE-94

    Improper Control of Generation of Code ('Code Injection')