CVE-2026-34777Electron是一个跨平台桌面应用框架。在特定版本之前,当iframe请求全屏、指针锁定等权限时,传递给权限处理器的origin参数错误地使用了顶级页面的origin,而非请求iframe的origin。这可能导致应用意外向第三方嵌入内容授予敏感权限。
该漏洞源于Electron在处理iframe发起的权限请求时的逻辑缺陷。当iframe尝试请求fullscreen、pointerLock、keyboardLock、openExternal或媒体权限时,系统调用session.setPermissionRequestHandler()。此时,传入回调函数的origin参数被错误地设置为父级(顶级)页面,即webContents.getURL()的值,而不是实际发起请求的iframe的源地址。如果开发者的权限授予逻辑仅依赖这个origin参数进行校验,攻击者可以诱导受害者加载恶意iframe。由于该iframe继承了父页面的origin身份,应用会误认为请求来自受信任的父页面,从而批准了本应拒绝的第三方内容的权限请求。尽管真实的请求URL存在于details.requestingUrl中,但若代码未检查此字段,则存在安全风险。