Code Execution
Remote code execution is unusually common in the AI/ML ecosystem because two long-standing patterns persist: pickle-based model loading and Jinja-style template rendering. Pickle is Python's default serialisation format and it executes arbitrary code on deserialisation; PyTorch models, scikit-learn pipelines, and many older HuggingFace artefacts are pickle files, so loading an untrusted model file is equivalent to running an untrusted script. HuggingFace addressed this with safetensors, but the older format is still widespread. The second pattern is template injection in LLM application frameworks that render Jinja-like syntax inside user-controlled prompts; LangChain, LlamaIndex, and several agent frameworks have shipped CVEs of this shape. Inference servers (vLLM, Triton, BentoML, Ray Serve) round out the RCE landscape with the usual web-app issues. Defenses: never load model files from untrusted sources, prefer safetensors, sandbox inference, and audit any code path that combines user input with template rendering.
| Severity | CVE | Headline | Package | CVSS |
|---|---|---|---|---|
| HIGH | CVE-2026-50158 | yutu: arbitrary file write via MCP caption-download tool | github.com/eat-pray-ai/yutu | 7.7 |
| CRITICAL | CVE-2026-8634 | Crabbox: env-var allowlist leaks secrets to remote exec | crabbox | 9.1 |
| HIGH | CVE-2026-8629 | Crabbox: IDOR lets viewers hijack Code/VNC/Egress | crabbox | 8.1 |
| MEDIUM | CVE-2026-56352 | n8n: legacy node bypasses file path restrictions | n8n | 6.4 |
| HIGH | CVE-2026-56398 | Open WebUI: OAuth avatar stored XSS risks account takeover | open-webui | 7.3 |
| HIGH | CVE-2026-56400 | Open WebUI: CORS misconfig + CSRF enables admin RCE | open-webui | 8.3 |
| HIGH | CVE-2026-61427 | PraisonAI: MCP server auth bypass by default | PraisonAI | 7.3 |
| MEDIUM | CVE-2026-60087 | PraisonAI: approval caching flaw enables file write abuse | PraisonAI | 6.1 |
| HIGH | CVE-2026-60085 | PraisonAI: sandbox policy no-op enables RCE, file read | PraisonAI | 7.5 |
| HIGH | CVE-2026-61433 | PraisonAI: code injection via unsafe config codegen | PraisonAI | 7.8 |
| HIGH | CVE-2026-61438 | PraisonAI: RCE via broken AST sandbox in workflows | PraisonAI | 7.3 |
| HIGH | CVE-2026-61443 | PraisonAI: path traversal leads to RCE via SkillTools | PraisonAI | 8.1 |
| HIGH | CVE-2026-61446 | PraisonAI: RCE via unsigned plugin auto-load | PraisonAI | 8.4 |
| HIGH | CVE-2026-58659 | PyTorch Lightning: RCE via malicious checkpoint files | pytorch-lightning | 7.8 |
| HIGH | CVE-2026-54449 | LangBot: RCE via arbitrary STDIO MCP command | langbot | 8.8 |
| UNKNOWN | CVE-2026-45535 | DataEase: stored SQL injection via dataset variables | - | |
| CRITICAL | CVE-2026-54458 | AVideo: stored XSS in YPTSocket enables admin takeover | 9.6 | |
| CRITICAL | CVE-2026-30623 | LiteLLM: RCE via unsanitized MCP server config | litellm | 9.8 |
| MEDIUM | CVE-2026-55406 | buffa: use-after-free in Rust protobuf OwnedView type | buffa | - |
| MEDIUM | CVE-2026-47751 | Claude Code Action: RCE via malicious PR .mcp.json config | claude-code-action | - |