Severity by source
AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H
Primary rating from GitHub Advisory · only source for this CVE.
CVSS VectorGitHub Advisory
Lifecycle Timeline
6DescriptionGitHub Advisory
Notesnook is a note-taking app. Prior to version 3.3.11 on Web/Desktop and 3.3.17 on Android/iOS, a stored XSS in the Web Clipper rendering flow can be escalated to remote code execution in the desktop app. The root cause is that the clipper preserves attacker-controlled attributes from the source page’s root element and stores them inside web-clip HTML. When the clip is later opened, Notesnook renders that HTML into a same-origin, unsandboxed iframe using contentDocument.write(...). Event-handler attributes such as onload, onclick, or onmouseover execute in the Notesnook origin. In the desktop app, this becomes RCE because Electron is configured with nodeIntegration: true and contextIsolation: false. Version 3.3.11 Web/Desktop and 3.3.17 on Android/iOS patch the issue.
AnalysisAI
Remote code execution via stored XSS in Notesnook Web Clipper affects all platforms prior to version 3.3.11 (Web/Desktop) and 3.3.17 (Android/iOS). Attackers can inject malicious HTML attributes into clipped web content that execute JavaScript in the application's security context when victims open the clip. On Electron desktop builds, unsafe Node.js integration (nodeIntegration: true, contextIsolation: false) escalates this XSS to full RCE with system-level access. CVSS 9.6 (Critical) reflects network-based attack requiring no authentication but user interaction. No public exploit identified at time of analysis, though attack methodology is detailed in vendor advisory.
Technical ContextAI
Notesnook's Web Clipper feature saves external webpage content as HTML notes. The vulnerability (CWE-79: Cross-site Scripting) exists in the clipper's sanitization logic, which preserves attacker-controlled attributes from the source page's root HTML element without proper filtering. When rendering saved clips, the application uses contentDocument.write() to inject this HTML into an unsandboxed, same-origin iframe. Event-handler attributes like onload, onclick, and onmouseover survive sanitization and execute in Notesnook's origin context. The Electron desktop application (cpe:2.3:a:streetwriters:notesnook_web/desktop) compounds this by configuring the renderer process with nodeIntegration enabled and contextIsolation disabled-deprecated unsafe settings that grant JavaScript full Node.js API access. This allows the stored XSS payload to invoke require('child_process') or similar modules for arbitrary code execution. Mobile platforms (cpe:2.3:a:streetwriters:notesnook_ios/android) are limited to XSS impact within WebView constraints, though still pose data theft risks.
RemediationAI
Vendor-released patch: Upgrade immediately to Notesnook version 3.3.11 for Web/Desktop platforms or version 3.3.17 for Android/iOS mobile applications. Updates are available through standard distribution channels including the official website for desktop builds, Google Play Store for Android, and Apple App Store for iOS. The patch implements proper HTML attribute sanitization in the Web Clipper rendering pipeline, stripping event-handler attributes before storage and display. Desktop Electron builds should also migrate toward contextIsolation: true and nodeIntegration: false configurations in future releases to implement defense-in-depth against similar vulnerabilities. No effective workarounds exist; disabling the Web Clipper feature entirely would prevent new malicious clips but would not remediate existing stored payloads. Organizations should audit existing notes created via Web Clipper for suspicious content, particularly clips sourced from untrusted or unknown websites. Full security advisory and technical details at https://github.com/streetwriters/notesnook/security/advisories/GHSA-f42f-phvp-43x5.
More in Notesnook Web Desktop
View allSame weakness CWE-79 – Cross-site Scripting (XSS)
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-16874