Advisory Database
  • Advisories
  • Dependency Scanning
  1. pypi
  2. ›
  3. praisonai
  4. ›
  5. GHSA-22cj-m4wf-fv2c

GHSA-22cj-m4wf-fv2c: PraisonAI Dynamic Context history and terminal tools read files outside configured storage via path traversal

June 18, 2026

PraisonAI’s Dynamic Context module provides filesystem-backed history and terminal-log storage. The SDK reference describes the module as providing:

  • artifact storage for tool outputs, history, and terminal logs;
  • history persistence with search; and
  • terminal session logging.

The module also exports agent-callable tool factories:

  • create_history_tools() returns history_search, history_tail, and history_get.
  • create_terminal_tools() returns terminal_tail, terminal_grep, and terminal_commands.

Those tools accept run_id and agent_id arguments from the tool caller. The underlying stores join those values into filesystem paths without rejecting absolute paths or .. traversal:

history_dir = self.base_dir / run_id / "history"
return history_dir / f"{agent_id}.jsonl"
terminal_dir = self.base_dir / run_id / "terminal"
return terminal_dir / f"{agent_id}.log"

Because run_id can be an absolute path and agent_id can contain traversal, a lower-trust prompt/user that can call these tools can read .jsonl and .log files outside the configured Dynamic Context base directory.

References

  • github.com/MervinPraison/PraisonAI/security/advisories/GHSA-22cj-m4wf-fv2c
  • github.com/advisories/GHSA-22cj-m4wf-fv2c

Code Behaviors & Features

Detect and mitigate GHSA-22cj-m4wf-fv2c with GitLab Dependency Scanning

Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →

Affected versions

All versions starting from 3.8.1 before 4.6.59

Fixed versions

  • 4.6.59

Solution

Upgrade to version 4.6.59 or above.

Impact 7.5 HIGH

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N

Learn more about CVSS

Weakness

  • CWE-200: Exposure of Sensitive Information to an Unauthorized Actor
  • CWE-22: Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')

Source file

pypi/praisonai/GHSA-22cj-m4wf-fv2c.yml

Spotted a mistake? Edit the file on GitLab.

  • Site Repo
  • About GitLab
  • Terms
  • Privacy Statement
  • Contact

Page generated Tue, 23 Jun 2026 12:23:53 +0000.