CVE-2026-43940electerm是一款开源的多功能终端模拟器。在3.7.16版本之前,该软件的`runWidget`函数存在严重的路径遍历漏洞。由于该函数通过IPC暴露且未对用户输入进行过滤,攻击者若能在渲染进程中执行JS(如通过恶意插件),即可利用`../`遍历路径,加载并执行系统中的任意JS文件。这将导致攻击者获取与electerm进程一致的完整权限,从而完全控制受害主机。
该漏洞的核心在于electerm的src/app/widgets/load-widget.js文件中`runWidget`函数的实现缺陷。该函数通过异步IPC(进程间通信)处理器向渲染进程暴露服务,用于加载特定的组件。然而,在处理用户提供的“widget”标识符时,代码直接将其拼接到文件路径字符串中,未进行任何安全校验或路径规范化。攻击者首先需要在渲染进程内获得JavaScript执行上下文,这可以通过安装恶意插件或利用内置webview的跨站脚本(XSS)漏洞实现。一旦具备执行条件,攻击者可构造包含路径遍历字符(如`../`)的特殊Payload,通过IPC调用`runWidget`函数。这将绕过目录限制,指向受害者文件系统上的任意位置(如/tmp或用户目录),强制加载并执行攻击者预设的恶意JavaScript文件。由于Electron应用的主进程通常拥有较高的系统权限,此漏洞最终导致本地任意代码执行和系统完全沦陷。