Token reuse in Joplin Server lets attackers reset user passwords
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- High
- Impact type
- Security bypass
- Confidentiality · integrity · availability
- Low · Low · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA. Impact type from CWE-640.
Summary
Joplin Server before 3.7.2 stores CSRF, account-confirmation, email-change and password-reset tokens without a purpose, so a token issued for one purpose is accepted for a password reset (CWE-640). An attacker who obtains a victim's CSRF or confirmation token through a separate disclosure can replace the victim's password and delete the victim's existing sessions and API applications. The attack is remote and needs a high-complexity setup, without privileges or user interaction.
Written with Claude Haiku 5.5 from the sources below · 2026-10-29
Description from the CNA
Joplin is an open source note-taking and to-do application that organises notes and lists into notebooks. Prior to Joplin Server 3.7.2, packages/server/src/models/TokenModel.ts stores CSRF, account-confirmation, email-change, and password-reset tokens without a purpose, and packages/server/src/models/UserModel.ts allows UserModel.resetPassword to accept any token returned by TokenModel.userFromToken. An attacker who obtains a victim's CSRF or confirmation token through a separate disclosure channel can submit it to the public password-reset endpoint, replace the victim's password, and cause the existing sessions and API applications to be deleted. This issue is fixed in Joplin Server 3.7.2.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
Remediation
Upgrade Joplin Server to version 3.7.2, which fixes this issue.
Written with Claude Haiku 5.5 from the sources below · 2026-10-29
- Fix · CNA joplin (laurent22) Fixed in 3.7.2
Timeline
- 2026-10-06 Threatist record created from CVE-2026-105785
- 2026-10-08 CISA SSVC decision points changed
- 2026-10-08 Priority changed: LOW → MEDIUM
References
More laurent22 vulnerabilities
- TI-2023-24472 Arbitrary code execution on click of PDF links in Joplin CVSS 3.1CRITICAL 9.0
- TI-2024-32950 Remote Code Execution on click of <a> Link in markdown preview CVSS 3.1CRITICAL 9.6
- TI-2024-27054 Joplin has a parsing error leading to Cross-site Scripting (XSS) CVSS 3.1CRITICAL 9.7
- TI-2026-34297 Joplin: SSO Auth Code Login Missing Rate Limiting — 9-Digit Numeric Code Brute-Forceable via Unprotected Endpoint CVSS 4.0CRITICAL 9.1
- TI-2025-17795 Cross-site Scripting (XSS) in Rich Text Editor allows arbitrary code execution in Joplin CVSS 3.1CRITICAL 9.6
- TI-2025-19991 Privilege escalation in Joplin server via user patch endpoint CVSS 3.1HIGH 8.8
Sources
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences