Skip to main content

NoteGen EUVDEUVD-2026-104316

| CVE-2026-111935 LOW
External Control of File Name or Path (CWE-73)
2026-10-19 VulnCheck GHSA-4fc4-j7c3-c9rg
2.1
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Gain write access to victim sync target
  2. Delivery
    Plant absolute/file:// path in synced conversation
  3. Exploit
    Victim client syncs malicious attachment
  4. Execution
    image_inspect reads local image file
  5. Impact
    Local image bytes exfiltrated to AI provider

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V5 - File Handling File name/path control
Exploitation Conditions

Exploitation requires that the attacker already has write access to the victim's configured sync target so they can inject or modify synced conversation data, and the victim must use NoteGen's chat image analysis feature so that image_inspect processes the attacker-controlled attachment. The malicious sourceUrl must be an absolute filesystem path or a file:// URL (pre-patch the value was passed through new URL() and read directly, or read with BaseDirectory.AppData only when relative). Limiting factors: the attacker needs write access to the sync backend (PR:L / authenticated-equivalent), a specific crafted path must survive the sync-merge flow (AT:P, AC:H), the leak only triggers when the victim's client syncs and runs image analysis (UI:P passive interaction), and impact is confined to disclosing local image file contents to the AI provider - no integrity, availability, or non-image file read. The patch rejects anything that is not a relative path confined to the conversation-assets directory.

Impact

All signals converge on LOW real-world priority. The vendor CVSS 4.0 base score is 2.1, driven by a demanding chain: AV:N but AC:H (high complexity), AT:P (a specific attack requirement must be met), PR:L (the attacker already needs write access to the victim's sync target), UI:P (passive victim interaction), and only VC:L confidentiality impact with no integrity or availability impact. There is no EPSS score provided, no CISA KEV listing, and no public exploit code referenced - exploitation status is 'no public exploit identified at time of analysis'. The impact is also bounded: image_inspect leaks the contents of local image files to the configured AI/OCR provider, not arbitrary text files or credentials, so this is an image-only information-disclosure primitive rather than full arbitrary local file read. The single most limiting factor is the precondition that the attacker must already control or have write access to the victim's sync remote, making this a targeted, post-compromise-of-sync scenario rather than a broadly exploitable flaw. No signals conflict: low score, no KEV, no POC, a niche product, and a constrained impact all agree this is a real but low-priority issue to patch during normal maintenance.

Exploit ScenarioDerived

An attacker who already has write access to the victim's configured NoteGen sync target (e.g. a shared or compromised sync backend) injects a conversation record whose image attachment sourceUrl is an absolute path or a file:// URL pointing at a local image on the victim's machine. When the victim's NoteGen client syncs and the chat image analysis feature (image_inspect) processes the attachment, it reads that local file and transmits its bytes to the AI/OCR provider, disclosing the image. No public exploit code is referenced, though the source-level root cause is confirmed in the patched chat-image-context.ts.

Monitor Track and reassess. Why: LOW severity (CVSS 0.1-3.9).
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 19, 2026

Local image file disclosure in NoteGen through 0.38.3 allows authenticated attackers with write access to the victim's configured sync target to plant absolute paths or file:// URLs in synced conversation data, causing the chat image analysis (image_inspect) flow to read local images and send them to the configured AI provider. Exploitation requires the crafted sourceUrl to survive sync merging and the victim to use the image-analysis feature, and impact is limited to confidentiality of local image files. The issue is rated low severity (CVSS 4.0 score 2.1; independently assessed CVSS 3.1 vector with low confidentiality impact), and no public exploit was identified at time of analysis.

RemediationAI

Vendor reports a patch is available, but the provided data identifies upstream fix commits rather than a tagged patched release: upgrade to a NoteGen build containing commits 6840c13c4fcb71a79b7df838d19a026830d64b96 and 64e671eb58f56ad6ebec0d99d32f6037f9319979, and confirm the reader in src/lib/chat-image-context.ts rejects non-relative paths outside conversation-assets. If upgrading is delayed, restrict write access to the sync backend to trusted users (trade-off: limits collaboration and shared sync workflows), disable or avoid chat image analysis/image_inspect for synced conversations (trade-off: loses image-based AI context), and audit synced sourceUrl/attachment values for absolute paths or file:// URLs (trade-off: manual effort that may not catch all future merges). Track remediation details in GitHub issue 1296 and the VulnCheck advisory.

Affected VersionsENISA

NoteGen 0 ≤0.38.3

Affected Packages

euvd notegen no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

NoteGen is a Tauri-based note application that syncs conversation data and uses chat image attachments for AI image analysis. The vulnerable flow parsed an attachment sourceUrl with new URL() in src/lib/chat-image-context.ts and read it directly when the resulting path was absolute, falling back to BaseDirectory.AppData only for relative paths. Because conversation data can be merged from a configured remote sync target, src/lib/sync/conversation-sync.ts treats attachment.url / message.image as lower-trust input, but the pre-patch reader did not enforce confinement to the app's conversation-assets directory. This is CWE-73 external control of file path: an attacker who can write to the sync backend can supply an absolute filesystem path or file:// URL so image_inspect reads a local image and forwards its bytes to the AI provider. The fix normalizes separators, requires the value to start with conversation-assets/, rejects empty, '.' and '..' path segments, and always reads through BaseDirectory.AppData.

Know when Notegen gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (VulnCheck) PRIMARY 2.1 LOW
CVSS:4.0/AV:N/AC:H/AT:P/PR:L/UI:P/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N
vuln.today AI 2.6 LOW

Malicious data arrives over the network sync channel (AV:N) but the attacker must already hold write access to the sync target (PR:L) and craft a path that survives the merge (AC:H); only image contents leak (C:L, I:N, A:N).

3.1 AV:N/AC:H/PR:L/UI:R/S:U/C:L/I:N/A:N
4.0 AV:N/AC:H/AT:P/PR:L/UI:P/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
High
Attack Requirements
Present
Privileges Required
Low
User Interaction
Passive
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

NoteGen through 0.38.3 contains an external control of file path vulnerability in chat image analysis that allows attackers to read local image files via unvalidated synced sourceUrl paths. Attackers with write access to the victim's sync target can plant absolute paths or file:// URLs, causing image_inspect to send local images to the AI provider.

Threat Intelligence Overview

EPSS Score
0.3%
Top 84% exploitable
Prevalence
Low
niche open-source Tauri note-taking app, small user base
Social Media
1
Sightings
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity LOW
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
LOW severity (CVSS 0.1-3.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Defer
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Low
Technical Impact
Partial

Priority Score

10
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +10
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy