CVE-2026-39888: critical vulnerability in MervinPraison praisonaiagents
PraisonAIAgents has a sandbox escape via exception frame traversal in `execute_code` (subprocess mode)
Published · Updated
E-mail alert when it lands in KEV, gets a public PoC or its score goes up.
No sign of exploitation. No public exploitation artifact known so far.
PraisonAI's code sandbox can be escaped by exploiting exception frames to access hidden Python functions. An attacker can run unrestricted code despite the security restrictions meant to block dangerous operations.
The execute_code() function uses incomplete attribute blocking (11 vs 30+ names) in subprocess sandbox mode, omitting __traceback__, tb_frame, f_back, and f_builtins. An attacker can chain these exception frame attributes to access the wrapper's real __builtins__ dict and retrieve exec() under an unblocked name, fully bypassing sandbox restrictions. No authentication required; vulnerability requires only ability to provide input to execute_code().
In the same product, most dangerous first.