Skip to content
HighVulnerability

GHSA-xcmw-grxf-wjhj: PraisonAI has unauthenticated RCE via `tool_override.py` (CVE-2026-40287 patch bypass)

Published
Record updated
View JSON
Affected
  • praisonai >= 4.5.139, <= 4.6.31
Fixed in
4.6.32
  • released April 28, 2026, 8 days before disclosure
Known exploitation
Not listed in the CISA Known Exploited Vulnerabilities catalog at the last check.
EPSS
0.2%

Summary

CVE-2026-40287's fix gated tools.py auto-import behind PRAISONAI_ALLOW_LOCAL_TOOLS=true in tool_resolver.py and api/call.py, but a third import sink in praisonai/templates/tool_override.py was not patched. Because the recipe runner reaches that sink on every recipe execution, POST /v1/recipes/run with a recipe value pointing at a local absolute path or a GitHub repo can cause the server to exec_module() an attacker-supplied tools.py, with no authentication or environment opt-in required by default, since SecurityConfig.allow_any_github defaults to True. The source reports a confirmed execution against praisonai 4.6.31 on 2026-04-25.

Mitigation

The source does not state a fix yet. Check the original advisory for updates.