<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
  <id>https://cve.radiocsirt.org/rss/recent/all/10</id>
  <title>Most recent entries from all</title>
  <updated>2026-10-14T21:22:05.316822+00:00</updated>
  <author>
    <name>Vulnerability-Lookup</name>
    <email>csirt@opendfir.org</email>
  </author>
  <link href="https://cve.radiocsirt.org" rel="alternate"/>
  <generator uri="https://lkiesow.github.io/python-feedgen" version="1.0.0">python-feedgen</generator>
  <subtitle>Contains only the most 10 recent entries.</subtitle>
  <entry>
    <id>https://cve.radiocsirt.org/vuln/euvd-2026-290884</id>
    <title>EUVD-2026-290884</title>
    <updated>2026-10-14T21:22:05.319405+00:00</updated>
    <content>EUVD-2026-290884</content>
    <link href="https://cve.radiocsirt.org/vuln/euvd-2026-290884"/>
  </entry>
  <entry>
    <id>https://cve.radiocsirt.org/vuln/fkie_cve-2026-40111</id>
    <title>fkie_cve-2026-40111</title>
    <updated>2026-10-14T21:22:05.319440+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>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.</p>
      </div>
    </content>
    <link href="https://cve.radiocsirt.org/vuln/fkie_cve-2026-40111"/>
  </entry>
  <entry>
    <id>https://cve.radiocsirt.org/vuln/ghsa-v7px-3835-7gjx</id>
    <title>GHSA-v7px-3835-7gjx — PraisonAIAgents has an OS Command Injection via shell=True in Memory Hooks Executor (memory/hooks.py)</title>
    <updated>2026-10-14T21:22:05.319476+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> PyPI: praisonaiagents</p>
<p>Summary</p>
<p>The 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 lines 303 to 305.
No sanitization, no shlex.quote(), no character filter, and no allowlist check
exists anywhere in this file. Shell metacharacters including semicolons, pipes,
ampersands, backticks, dollar-sign substitutions, and newlines are interpreted by
/bin/sh before the intended command executes.</p>
<p>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.</p>
<p>This file and these surfaces are not covered by any existing published advisory.</p>
<p>Vulnerability Description</p>
<p>File    : src/praisonai-agents/praisonaiagents/memory/hooks.py
Lines   : 303 to 305</p>
<p>Vulnerable code:</p>
<p>result = subprocess.run(
        command,
        shell=True,
        cwd=str(self.workspace_path),
        env=env,
        capture_output=True,
        text=True,
        timeout=hook.timeout
    )</p>
<p>The variable comm…</p></div>
    </content>
    <link href="https://cve.radiocsirt.org/vuln/ghsa-v7px-3835-7gjx"/>
  </entry>
  <entry>
    <id>https://cve.radiocsirt.org/vuln/pysec-2026-487</id>
    <title>PYSEC-2026-487 — PraisonAIAgents has an OS Command Injection via shell=True in Memory Hooks Executor (memory/hooks.py)</title>
    <updated>2026-10-14T21:22:05.319602+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> PyPI: praisonaiagents</p>
<p>Summary</p>
<p>The 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 lines 303 to 305.
No sanitization, no shlex.quote(), no character filter, and no allowlist check
exists anywhere in this file. Shell metacharacters including semicolons, pipes,
ampersands, backticks, dollar-sign substitutions, and newlines are interpreted by
/bin/sh before the intended command executes.</p>
<p>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.</p>
<p>This file and these surfaces are not covered by any existing published advisory.</p>
<p>Vulnerability Description</p>
<p>File    : src/praisonai-agents/praisonaiagents/memory/hooks.py
Lines   : 303 to 305</p>
<p>Vulnerable code:</p>
<p>result = subprocess.run(
        command,
        shell=True,
        cwd=str(self.workspace_path),
        env=env,
        capture_output=True,
        text=True,
        timeout=hook.timeout
    )</p>
<p>The variable c…</p></div>
    </content>
    <link href="https://cve.radiocsirt.org/vuln/pysec-2026-487"/>
  </entry>
</feed>
