IPBUF安全漏洞报告
English
CVE-2026-5974 CVSS 7.3 高危

CVE-2026-5974 MetaGPT操作系统命令注入漏洞

披露日期: 2026-04-09

漏洞信息

漏洞编号
CVE-2026-5974
漏洞类型
操作系统命令注入
CVSS评分
7.3 高危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
FoundationAgents MetaGPT

相关标签

命令注入RCEMetaGPTCVE-2026-5974

漏洞概述

FoundationAgents MetaGPT 0.8.1及之前版本存在操作系统命令注入漏洞。该漏洞源于`metagpt/tools/libs/terminal.py`文件中的`Bash.run`函数未能正确过滤用户输入,导致攻击者可在无需认证的情况下远程执行任意系统命令,目前厂商尚未发布修复补丁。

技术细节

该漏洞位于FoundationAgents MetaGPT项目的`metagpt/tools/libs/terminal.py`模块中,具体影响`Bash.run`函数。该函数负责执行终端命令,但在处理传入的参数时缺乏严格的校验和过滤机制,导致攻击者可以通过构造特殊的恶意输入,将任意操作系统命令拼接到执行的指令中。由于该服务通常暴露在网络上,攻击者无需进行身份认证即可利用此漏洞发起远程攻击,从而在服务器后台执行任意代码,获取服务器控制权。尽管开发团队已收到相关报告,但截至目前尚未采取修复措施。

攻击链分析

STEP 1
侦察
攻击者发现目标正在运行FoundationAgents MetaGPT 0.8.1或更早版本。
STEP 2
武器化
攻击者构造包含Shell元字符(如; | &)的恶意Payload,用于拼接系统命令。
STEP 3
交付
攻击者通过网络向`Bash.run`函数接口发送包含恶意Payload的请求。
STEP 4
利用
服务器端未过滤输入,直接将Payload传递给系统Shell执行。
STEP 5
执行
系统执行攻击者注入的任意命令,导致服务器被控制。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import os # This is a simulation of the vulnerability in Bash.run # The actual vulnerability allows passing unfiltered input to a system shell def vulnerable_bash_run(user_input): # Vulnerability: Directly using user input in a shell command without sanitization # In the actual library, this might be os.system("bash -c " + user_input) command = f"echo {user_input}" print(f"Executing: {command}") os.system(command) # PoC: Injecting a command to list directory contents # Payload uses ';' to separate commands in the shell malicious_payload = "; ls -la; echo " print("--- PoC Start ---") vulnerable_bash_run(malicious_payload) print("--- PoC End ---")

影响范围

FoundationAgents MetaGPT <= 0.8.1

防御指南

临时缓解措施
由于官方尚未修复,建议暂时禁用受影响的功能或限制对MetaGPT服务的网络访问,确保运行MetaGPT的容器或用户权限最小化,防止命令注入后造成服务器完全沦陷。

参考链接

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