{"schema_version":"1","view":"events","data":[{"id":3457,"advisory_id":"b8342daa-2d51-4985-a389-5c2df65ce704","group_id":"advisory:b8342daa-2d51-4985-a389-5c2df65ce704","revision":1,"source_id":"core-cve","source_url":"https://www.cve.org/CVERecord?id=CVE-2026-46650","source_published_at":"2026-09-21T21:16:12.297+00:00","published_at":"2026-10-24T21:35:46.512522+00:00","extraction_method":"structured","technologies":["core-cve","joplin"],"cve_ids":["CVE-2026-46650"],"event_types":["advisory"],"payload":{"kind":"advisory","title":"Joplin: Stored XSS in public share viewer via javascript: URL bypass in isAcceptedUrl","summary":"Joplin is an open source note-taking and to-do application that organises notes and lists into notebooks. Prior to 3.7.2, isAcceptedUrl() in packages/renderer/htmlUtils.ts uses an unanchored regular expression for internal resource URLs, allowing a javascript: URL containing a matching 32-character path fragment to pass validation and be emitted into an HTML note's link. A low-privileged Joplin Server user can publish the crafted HTML note as a public share. In the current build, ordinary left-click is blocked; demonstrated execution requires middle-click or Open in new tab in an older or non-hardened browser because current Chrome and Firefox block javascript: new-tab navigation. When execution succeeds, the script runs in the Joplin Server origin, can read page-visible content, and can make authenticated same-origin requests when the victim is signed in. This issue is fixed in version 3.7.2.","evidence":"cve:CVE-2026-46650","products":[{"name":{"value":"joplin","evidence":"/containers/cna/affected/0/product"},"prerequisites":[],"fixed_versions":[],"affected_versions":[]}],"severity":"medium","structured":{"id":"CVE-2026-46650","aliases":["CVE-2026-46650"],"metrics":[{"cvssV3_1":{"scope":"CHANGED","version":"3.1","baseScore":4.4,"attackVector":"NETWORK","baseSeverity":"MEDIUM","vectorString":"CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:N","integrityImpact":"LOW","userInteraction":"REQUIRED","attackComplexity":"HIGH","availabilityImpact":"NONE","privilegesRequired":"LOW","confidentialityImpact":"LOW"}}],"affected":[{"vendor":"laurent22","product":"joplin","versions":[{"status":"affected","version":"< 3.7.2"}]}],"modified":"2026-09-29T13:57:46.486Z","provider":"cve","references":["https://github.com/laurent22/joplin/security/advisories/GHSA-x9vj-jrqf-9wcm","https://github.com/laurent22/joplin/pull/15435","https://github.com/laurent22/joplin/commit/9fdc2d4adbd7b7326a2d0dcc32e12b705bfc285e"],"provider_metadata":{"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"id":"CVE-2026-46650","role":"CISA Coordinator","options":[{"Exploitation":"poc"},{"Automatable":"no"},{"Technical Impact":"partial"}],"version":"2.0.3","timestamp":"2026-09-29T13:57:39.474410Z"}}}],"references":[{"url":"https://github.com/laurent22/joplin/security/advisories/GHSA-x9vj-jrqf-9wcm","tags":["exploit"]}],"providerMetadata":{"orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","shortName":"CISA-ADP","dateUpdated":"2026-09-29T13:57:46.486Z"}}],"cna":{"orgId":"a0819718-46f1-4df5-94e2-005712e83aaa","shortName":"GitHub_M","dateUpdated":"2026-09-21T21:16:12.297Z"}}},"related_cves":[{"value":"CVE-2026-46650","evidence":"/cveMetadata/cveId"}],"security_relevant":true,"severity_evidence":"/containers/cna/metrics"},"priority":{"reasons":[],"severity":"medium","linked_cves":[],"fix_available":false,"known_exploited":false,"publisher_severity":"medium"},"context_update":false,"detail_url":"/events/3457"}],"next_after":3457,"next_before":3457}