Code injection in TriliumNext Trilium
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- Active
- Attack complexity
- Low
- Attack requirements
- None
- Impact type
- Code execution
- Confidentiality · integrity · availability
- High · High · High
- Fix status
- No fix listed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA. Impact type from CWE-1336.
Summary
Trilium is an open-source hierarchical note-taking application. In versions prior to 0.104.0, the default-on "Safe import" filter fails to neutralize the shareTemplate relation because that relation is not marked as dangerous, allowing an attacker-supplied import archive to plant a server-side template that leads to remote code execution. The relation is omitted from the built-in list of dangerous attributes, so unlike other code-loading relations it is not disabled on import, and when the victim later publishes the imported note the public share renderer feeds the linked EJS code note's raw bytes into ejs.render, which compiles them in the server's Node process. An unauthenticated request to the shared note then executes the attacker's JavaScript with full access to require, process, the filesystem, and the network. This issue is fixed in version 0.104.0.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- No
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| TriliumNext | Trilium | 0.104.0 | — | No fix listed | CNA |
- Trilium VendorTriliumNext Affected 0.104.0 Fixed in — No fix listed CNA
CPE configurations NVD · 1
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:triliumnotes:trilium:*:*:*:*:*:*:*:* | before 0.104.0 | Vulnerable | TriliumNext |
- cpe:2.3:a:triliumnotes:trilium:*:*:*:*:*:*:*:* Versions before 0.104.0 Vulnerable ·TriliumNext
Remediation
No fixed version listed by the sources yet.
Timeline
- 2026-10-02 Threatist record created from CVE-2026-47727
- 2026-10-14 CVSS score added · NVD
- 2026-10-16 EPSS moved to the below the 50th percentile
References
More TriliumNext Trilium vulnerabilities
- TI-2026-36250 Trilium: Malicious import with GeoMap marker title XSS leads to RCE on the desktop client CVSS 4.0CRITICAL 9.3
- TI-2026-38639 Trilium: Note Import to RCE via Mind Elixir dangerouslySetInnerHtml CVSS 4.0CRITICAL 9.3
- TI-2026-54012 Trilium unauthenticated share-search discloses password-protected and hidden shared notes CVSS 3.1HIGH 7.5
- TI-2026-38641 Trilium arbitrary file read and denial of service via file:// URLs in the automatic image-download feature CVSS 3.1HIGH 8.1
- TI-2026-38640 Trilium: Note Import to RCE via Book Note CVSS 4.0CRITICAL 9.3
- TI-2025-42139 Trilium Notes has a Timing Attack Vulnerability in /api/login/sync CVSS 3.1HIGH 7.4
Sources
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences