Description
Joplin is an open source note-taking and to-do application that organises notes and lists into notebooks. Prior to 3.7.2, Joplin Server's GET /api/login_with_code/:id endpoint accepts a nine-digit SSO authentication code with a ten-minute lifetime without applying limiterLoginBruteForce. An unauthenticated attacker who targets a user during an active SSO login can make unlimited guesses, and a correct code returns a full session token that permits access to and modification of the user's notes, notebooks, and account settings. This issue is fixed in version 3.7.2.
Published: 2026-09-21
Score: 9.1 Critical
EPSS: < 1% Very Low
KEV: No
Impact: Unauthorized Remote Access
Action: Immediate Patch
AI Analysis

Impact

The vulnerability exists in the Joplin Server GET /api/login_with_code/:id endpoint, which receives a nine‑digit SSO authentication code that expires after ten minutes. The endpoint does not enforce any login‑brute‑force limiting, so an unauthenticated attacker can repeatedly query the endpoint with guessed codes until a correct one is found. Upon a successful guess the attacker receives a full session token that grants read and write access to the user’s notes, notebooks, and account settings, effectively allowing the attacker to impersonate the user and tamper with private data.

Affected Systems

Joplin Server versions earlier than 3.7.2 built by Laurent22 are affected. The issue is tied to the SSO login flow in these releases; any deployment that exposes the unprotected GET /api/login_with_code/:id endpoint is vulnerable.

Risk and Exploitability

With a CVSS score of 9.1 the vulnerability is considered critical. No EPSS score is available, but the lack of rate limiting and the short, ten‑minute code lifetime give an attacker a feasible attack window. The vulnerability is not listed in the CISA KEV catalog, yet the straightforward brute‑force attack path (unauthenticated request, unlimited guesses, obtain session token) presents a high exploitation likelihood for determined adversaries.

Generated by OpenCVE AI on September 21, 2026 at 22:27 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade Joplin Server to version 3.7.2 or newer, which implements a proper limiter on the login_with_code endpoint.
  • If an upgrade is not immediately possible, disable the GET /api/login_with_code/:id endpoint or add custom rate limiting to cap the number of attempts per minute.
  • Block or restrict access to the Joplin API from untrusted networks and monitor for brute‑force patterns to detect and mitigate ongoing attempts.

Generated by OpenCVE AI on September 21, 2026 at 22:27 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Mon, 28 Sep 2026 21:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Tue, 22 Sep 2026 19:45:00 +0000

Type Values Removed Values Added
First Time appeared Laurent 22
Laurent 22 joplin
Vendors & Products Laurent 22
Laurent 22 joplin

Mon, 21 Sep 2026 21:00:00 +0000

Type Values Removed Values Added
Description Joplin is an open source note-taking and to-do application that organises notes and lists into notebooks. Prior to 3.7.2, Joplin Server's GET /api/login_with_code/:id endpoint accepts a nine-digit SSO authentication code with a ten-minute lifetime without applying limiterLoginBruteForce. An unauthenticated attacker who targets a user during an active SSO login can make unlimited guesses, and a correct code returns a full session token that permits access to and modification of the user's notes, notebooks, and account settings. This issue is fixed in version 3.7.2.
Title Joplin: SSO Auth Code Login Missing Rate Limiting — 9-Digit Numeric Code Brute-Forceable via Unprotected Endpoint
Weaknesses CWE-307
References
Metrics cvssV4_0

{'score': 9.1, 'vector': 'CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N'}


Subscriptions

Laurent 22 Joplin
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-09-28T20:18:49.471Z

Reserved: 2026-05-15T20:11:54.585Z

Link: CVE-2026-46649

cve-icon Vulnrichment

Updated: 2026-09-28T20:18:07.656Z

cve-icon NVD

Status : Deferred

Published: 2026-09-21T21:17:03.323

Modified: 2026-09-28T21:17:17.733

Link: CVE-2026-46649

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-22T19:16:41Z

Weaknesses
  • CWE-307

    Improper Restriction of Excessive Authentication Attempts