PraisonAI CodeAgent 无沙箱执行代码泄露环境密钥
先了解这件事
PraisonAI 的 CodeAgent._execute_python() 在子进程中执行 LLM 生成的 Python 代码时,使用 os.environ.copy() 将完整父进程环境传入子进程,且不做 AST 校验、不限制 import,即使显式设置 CodeConfig(sandbox=True) 也不会生效。攻击者可通过提示注入影响 LLM 输出,进而窃取 API key、数据库凭据和云 token 等全部环境变量。该问题以 CVE-2026-61447 披露,PraisonAI 发布安全公告,GitHub 安全公告随后也披露了同一问题。
AI 根据报道生成 · 4 天前更新
后续时间线
- GitHub 安全公告精选PraisonAI CodeAgent 被指无沙箱执行 LLM 生成代码并泄露全部环境密钥
GitHub 安全公告披露,PraisonAI 的 CodeAgent._execute_python() 在子进程中执行 LLM 生成的 Python 代码时使用 os.environ.copy() 传入完整父进程环境,且不做 AST 校验、不限制 import,即使显式设置 CodeConfig(sandbox=True) 也不会生效。攻击者可通过提示注入影响 LLM 输出,进而窃取 API key、数据库凭据、云 token 等全部环境变量,并在主机上执行任意代码。公告给出的 PoC 显示,Agent 执行一段筛选并打印环境变量的代码即可输出所有密钥;真实攻击中可诱导模型通过 urllib 将 OPENAI_API_KEY 发送到攻击者服务器。与 python_tools.py 中使用 env={} 的沙箱化 execute_code 工具相比,该路径的隔离仅剩子进程执行。
- 日期未标MervinPraison/PraisonAI advisory(reporter: anushkavirgaonkar);NVD/CVEPraisonAI 披露 CodeAgent 漏洞 CVE-2026-61447:执行 LLM 生成代码时泄露全部环境变量
PraisonAI 发布安全公告,披露 CodeAgent._execute_python() 在子进程中执行 LLM 生成的 Python 代码时使用 os.environ.copy() 传入完整父进程环境,且不做 AST 校验、不限制 import,即使显式设置 CodeConfig(sandbox=True) 也不会生效。攻击者可通过提示注入影响 LLM 输出,进而窃取 API key、数据库凭据和云 token 等全部环境变量,并在主机上执行任意代码。公告指出同项目 python_tools.py 中的 execute_code 工具使用空环境变量,而该路径的 sandbox 字段从未被检查,代码注释中的 basic sandboxing 仅指子进程执行。PoC 显示 CodeAgent 可直接打印出所有含 KEY、SECRET、TOKEN 等关键词的环境变量。
相关讨论
关注度走势
每天新增来源
- 10月5日新增1个来源(1家媒体、0个账号)
- 10月6日新增0个来源(0家媒体、0个账号)
- 10月7日新增0个来源(0家媒体、0个账号)
- 10月8日新增0个来源(0家媒体、0个账号)
- 10月9日新增1个来源(1家媒体、0个账号)
- 10月10日新增0个来源(0家媒体、0个账号)
- 10月11日新增0个来源(0家媒体、0个账号)
- 10月12日新增0个来源(0家媒体、0个账号)
- 10月13日新增0个来源(0家媒体、0个账号)