Vulnerability · Published May 14, 2026 · Assigned by GitHub_M

CVE-2026-44522Note Mark: Arbitrary File Write via Path Traversal in Asset Names Leading to Remote Code Execution

High 8.6

In plain English

A high-severity improper input validation in note-mark from enchant97. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.6% (higher than 47% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS 4.0)8.6High
Exploit odds (30 days)0.6%top 52.9% of all CVEs
Exploited in the wildNo reportsCISA SSVC: poc
Attack toolingNoneno public tooling known

Official description

Note Mark is an open-source note-taking application. From 0.13.0 to before 0.19.4, the Note Mark application allows authenticated users to upload assets to notes via POST /api/notes/{noteID}/assets, where the asset filename is provided through the X-Name HTTP request header. This value is stored directly in the database without any sanitization or validation - no path separator filtering, no directory traversal sequence rejection, and no use of filepath.Base() to strip directory components. The unsanitized name is persisted as-is in the note_assets table (Name column, varchar(80)). When an administrator subsequently runs the data export CLI commands (note-mark migrate export-v1 or note-mark migrate export), the stored asset name is passed directly into filepath.Join() and path.Join() calls as part of the output file path argument to os.Create(). Since Go's filepath.Join() resolves ../ sequences during path normalization, an attacker-controlled asset name containing directory traversal sequences causes the export process to write files to arbitrary locations on the filesystem, completely outside the intended export directory. This vulnerability is fixed in 0.19.4.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
Gogithub.com/enchant97/note-mark/backend0.0.0-20260501152243-db3f72bff780GHSA-g49p-4qxj-88v3
Gogithub.com/enchant97/note-mark/backend0.0.0-20260501152243-db3f72bff780GO-2026-5389

Affected products (as reported)

VendorProductVersions
enchant97 note-mark >= 0.13.0, < 0.19.4

Weakness: CWE-20, CWE-22 · Vector: CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

References