CVE-2026-33976Notesnook是一款开源笔记应用。在Web/Desktop 3.3.11及Android/iOS 3.3.17版本之前,其Web Clipper渲染流程中存在存储型XSS漏洞。在桌面版应用中,攻击者可利用此漏洞进一步升级为远程代码执行(RCE)。该漏洞源于剪辑器保留了攻击者控制的源页面根元素属性,并在渲染时触发了恶意代码执行。
该漏洞的根本原因在于Web Clipper在处理页面剪辑时,保留了源页面根元素中由攻击者控制的属性(如事件处理器),并将其嵌入到存储的web-clip HTML中。当用户在Notesnook中打开该剪辑内容时,应用会通过`contentDocument.write(...)`将这段HTML渲染到一个同源且未沙箱化的iframe中。由于事件处理属性(如`onload`、`onclick`或`onmouseover`)会在Notesnook的同源上下文中执行,这导致了存储型XSS。在基于Electron的桌面应用中,情况更为严重,因为Electron配置了`nodeIntegration: true`和`contextIsolation: false`。这意味着攻击者通过XSS触发的JavaScript代码可以直接访问Node.js环境,从而实现远程代码执行(RCE),完全控制受害者的主机。