PraisonAI CodeAgent 被指无沙箱执行 LLM 生成代码并泄露全部环境密钥
PraisonAI: CodeAgent Executes LLM-Generated Code Without Sandboxing and Leaks All Environment Secrets
AI 导读
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 工具相比,该路径的隔离仅剩子进程执行。
推荐理由
公告披露了 CodeAgent 沙箱开关失效导致环境变量全部暴露的具体机制,使用该框架的团队可据此检查自身部署。
阅读原文