Skip to main content
← All vulnerabilities
CVE-2026-44340PYSEC-2026-2909GHSA-9Q28-GHCR-C4X3

PraisonAI: Symlink-extraction bypass of `_safe_extractall` writes outside `dest_dir`

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 4.6.37
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: none
  • Automatable: yes
  • Technical impact: partial

Summary

PraisonAI is a multi-agent teams system. Prior to version 4.6.37, the _safe_extractall helper that all recipe pull, recipe publish, and recipe unpack flows route through validates each archive member's name for absolute paths, .. segments, and resolved-path escape — but does not validate member.linkname, does not reject symlink/hardlink members, and calls tar.extractall(dest_dir) without filter="data". A bundle that contains a symlink with a name inside dest_dir but a linkname pointing outside it, followed by a regular file whose path traverses through the just-created symlink, escapes dest_dir and lets the attacker write arbitrary content to an attacker-chosen location on the victim's filesystem. This issue has been patched in version 4.6.37.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: none · Automatable: yes · Technical impact: partial

  3. Record last updated

Affected versions

  • MervinPraison PraisonAI

    fixed in 4.6.37

  • praisonaiPyPI

    fixed in 4.6.37

References 1

GitHub · MervinPraison/PraisonAI