CVE-2026-34714Vim编辑器在9.2.0272版本之前存在严重的安全漏洞。该漏洞源于`tabpanel`组件在处理表达式时未正确设置`P_MLE`标志,导致`%{expr}`注入。攻击者可诱导用户打开特制文件,在无需用户交互的情况下,利用该漏洞在受害者系统上执行任意代码,获取系统控制权。
该漏洞的根本原因是Vim在渲染标签页(tabpanel)界面时,对动态表达式的处理存在逻辑错误。在Vim脚本中,`%{expr}`语法用于计算表达式的值并将其插入到界面元素(如标签页标题或状态栏)中。然而,在受影响的版本中,`tabpanel`相关的代码路径缺少`P_MLE`(多行表达式或安全上下文标志)的检查机制。这使得解析器在处理特定输入时,未能区分普通文本和可执行代码。当攻击者构造包含恶意`%{...}`序列的文件时,Vim在打开文件并渲染界面的过程中,会自动解析并执行大括号内的Vimscript代码。由于攻击向量为本地且无需交互,一旦文件被打开(例如通过文件关联或直接打开),代码即在前台运行,导致高权限的代码执行。