CVE-2026-5973FoundationAgents MetaGPT 0.8.1及之前版本存在严重的操作系统命令注入漏洞。该漏洞源于 `metagpt/utils/common.py` 文件中的 `get_mime_type` 函数未能正确过滤用户输入。由于攻击者可通过网络向量远程利用此漏洞,且无需用户交互或认证,攻击者可执行任意系统命令。目前漏洞利用代码已公开,厂商暂未修复,对系统机密性、完整性和可用性构成严重威胁。
该漏洞的技术根源在于 `metagpt/utils/common.py` 中的 `get_mime_type` 函数实现不当。该函数通常用于根据文件扩展名或内容判断文件的MIME类型,但在处理输入参数时,直接将外部可控的输入(如文件名或路径)拼接到了系统命令中执行,使用了诸如 `os.system` 或 `subprocess.call` 且未设置 `shell=False` 的不安全调用方式。攻击者可以通过构造包含Shell元字符(如 `;`, `|`, `&`, `$(cmd)`)的恶意字符串注入到参数中。当应用程序处理该参数时,操作系统会将其解释为多条命令,导致原始命令被截断并执行攻击者指定的任意指令。鉴于CVSS 3.1评分为7.3,且攻击向量为网络(AV:N),无需权限(PR:N),这意味着远程未认证攻击者可轻易利用此漏洞接管服务器权限。