CVE-2026-40111 PraisonAIAgents has an OS Command Injection via shell=True in Memory Hooks Executor (memory/hooks.py)

Critical 9.3 Published Updated

Attackers can execute arbitrary OS commands via unsanitized input in memory hooks, potentially gaining full control of the host system.

Exploited in the wild
Not known
Login needed
Any signed-in user
Attackable
Local or same network only
Victim action needed
Not needed
Fix
Available

What is CVE-2026-40111?

CVE-2026-40111 is a critical command injection vulnerability in MervinPraison PraisonAIAgents, published on 9 Apr 2026. It can only be exploited from the same machine or local network, with no action from the victim.

Official description

PraisonAIAgents is a multi-agent teams system. Prior to 1.5.128, he memory hooks executor in praisonaiagents passes a user-controlled command string directly to subprocess.run() with shell=True at src/praisonai-agents/praisonaiagents/memory/hooks.py. No sanitization is performed and shell metacharacters are interpreted by /bin/sh before the intended command executes. Two independent attack surfaces exist. The first is via pre_run_command and post_run_command hook event types registered through the hooks configuration. The second and more severe surface is the .praisonai/hooks.json lifecycle configuration, where hooks registered for events such as BEFORE_TOOL and AFTER_TOOL fire automatically during agent operation. An agent that gains file-write access through prompt injection can overwrite .praisonai/hooks.json and have its payload execute silently at every subsequent lifecycle event without further user interaction. This vulnerability is fixed in 1.5.128.

Weakness: CWE-78

Which versions are affected by CVE-2026-40111?

3 open source packages ship an affected version, including praisonaiagents. It affects 1 product.

PackageAffectedFixed in
praisonaiagents PyPIAll versions1.5.128
praisonaiagents PyPIAll versions1.5.128
praisonaiagents PyPIAll versions1.5.128

Products include Praison Praisonaiagents.

How do I fix CVE-2026-40111?

Upgrade praisonaiagents to 1.5.128 or later.

Upgrade, and pass arguments to programs as a list instead of through a shell. More about Command injection.

Is CVE-2026-40111 being exploited?

It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-40111 exists.

Sources

Also known as GHSA-v7px-3835-7gjx, PYSEC-2026-487.

Is CVE-2026-40111 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free