CVE-2026-61432: PraisonAI: FastContext path traversal leaks host files

GHSA-4xxv-6wmf-xf45MEDIUMPoC AVAILABLECISA: TRACK*
Published July 10, 2026
CISO Take

PraisonAI's FastContext agent tool — the code behind grep_search, glob_search, read_file, and list_directory — only prepends the configured workspace_path to relative paths and never rejects absolute paths or canonicalizes the joined path before checking containment, so a crafted tool argument (or a model-generated function call steered by attacker-controlled input) can walk straight out of the sandbox and read files anywhere on the host. This is a confidentiality-only bug (CVSS 5.7, C:H/I:N/A:N) reachable with only low privileges and some user interaction (PR:L, UI:R) — including via indirect prompt injection if untrusted content the agent ingests can influence which tool arguments get generated. There is no sign of active exploitation: it's absent from CISA KEV, EPSS is unscored, no public exploit or Nuclei template exists, and downstream dependent counts and package risk score aren't available, so today's likelihood is theoretical rather than observed. The bug class itself is high-value to attackers, though — unsandboxed file-read tools reachable from LLM-directed input are a proven path to harvesting .env files, SSH keys, and cloud credentials from agent hosts. Upgrade praisonaiagents to 1.6.78 or later now, and in the interim reject absolute paths and canonicalize (realpath) every FastContext tool argument against workspace_path, run the agent process with least-privilege filesystem access, and alert on any grep_search/read_file/list_directory/glob_search call whose resolved path lands outside the workspace.

Sources:NVDGitHub AdvisoryVulnCheckATLAS

What is the risk?

Medium severity (CVSS 5.7) driven entirely by confidentiality impact — no integrity or availability loss. Exploitability is moderate: attack complexity is low and no special privileges beyond low-level access to the agent are needed, but user interaction is required, meaning either a low-privileged user must directly prompt the agent to invoke a FastContext tool with a malicious path, or an attacker must get malicious content into something the agent processes (indirect prompt injection) that causes the model to generate the traversal call itself. No exploitation signals exist yet: not in CISA KEV, no EPSS score, no public exploit code, and no Nuclei template — so real-world exploitation likelihood is currently unproven rather than confirmed low. Package-level context (downstream dependents, OpenSSF Scorecard, GitHub activity) is unavailable, which limits blast-radius estimation but should not be read as evidence the exposure is small; PraisonAI is an actively used agent framework and any deployment exposing FastContext to untrusted prompts or untrusted retrieved content is exposed.

How does the attack unfold?

Entry point
Attacker submits a crafted prompt directly to a PraisonAI FastContext agent, or plants malicious instructions in content (file, ticket, webpage) the agent later ingests.
AML.T0051
Malicious tool invocation
The model issues a grep_search, glob_search, read_file, or list_directory call with an absolute path or '../' traversal sequence that FastContextAgent.execute_tool() fails to canonicalize or reject.
AML.T0053
Out-of-sandbox file access
The tool reads or enumerates files outside the configured workspace_path, such as credential files, SSH keys, or other tenants' data.
AML.T0037
Disclosure
File contents are returned to the caller and/or injected into the model's tool-result context, exposing sensitive data to the attacker via the response.
AML.T0086

What systems are affected?

PackageEcosystemVulnerable RangePatched
PraisonAI Agentspip<= 1.6.771.6.78
20 dependents63% patched~21d to patchFull package profile →

Do you use PraisonAI Agents? You're affected.

How severe is it?

CVSS 3.1
5.7 / 10
EPSS
0.3%
chance of exploitation in 30 days
Higher than 28% of all CVEs
Exploitation Status
Exploit Available
Exploitation: MEDIUM
Sophistication
Moderate
Exploitation Confidence
medium
○CISA SSVC: Public PoC
○Public PoC indexed (trickest/cve)
Composite signal derived from CISA KEV, VulnCheck KEV, CISA SSVC, EPSS, Metasploit, Exploit-DB, trickest/cve, Nuclei templates, and inthewild.io exploitation reports.

What is the attack surface?

AVACPRUISCIA
AVNetwork
ACLow
PRLow
UIRequired
SUnchanged
CHigh
INone
ANone

What should I do?

1 step
  1. 1) Patch: upgrade praisonaiagents to 1.6.78 or later immediately — this is the primary and complete fix per the vendor advisory. 2) If patching is delayed, add an application-layer guard: reject any FastContext tool argument that is an absolute path or contains '../' sequences, and canonicalize every resolved path (os.path.realpath) before comparing it against workspace_path with a strict prefix check. 3) Defense in depth: run agent processes with least-privilege OS permissions — dedicated non-root user, read-only mounts for anything outside the workspace, no access to credential files or other tenants' directories, and container/chroot isolation where feasible. 4) Detection: log every grep_search/glob_search/read_file/list_directory call with its resolved (not raw) path, and alert on any resolution outside workspace_path or on arguments containing leading '/' or '../'. 5) If FastContext is exposed to untrusted retrieved content (indirect prompt injection surface), treat tool-argument generation from that content as untrusted input regardless of patch status.

What does CISA's SSVC say?

DecisionTrack*
Exploitationpoc
AutomatableNo
Technical Impactpartial

Source: CISA Vulnrichment (SSVC v2.0). Decision based on the CISA Coordinator decision tree.

How is it classified?

Which compliance frameworks are affected?

This CVE is relevant to:

EU AI Act
Article 15-Accuracy, robustness and cybersecurity
ISO 42001
A.6.2-AI system requirements and specification
NIST AI RMF
MEASURE 2.7-AI system security and resilience are evaluated and documented
OWASP LLM Top 10
LLM02-Sensitive Information DisclosureLLM06-Excessive Agency

Frequently Asked Questions

What is CVE-2026-61432?

PraisonAI's FastContext agent tool — the code behind grep_search, glob_search, read_file, and list_directory — only prepends the configured workspace_path to relative paths and never rejects absolute paths or canonicalizes the joined path before checking containment, so a crafted tool argument (or a model-generated function call steered by attacker-controlled input) can walk straight out of the sandbox and read files anywhere on the host. This is a confidentiality-only bug (CVSS 5.7, C:H/I:N/A:N) reachable with only low privileges and some user interaction (PR:L, UI:R) — including via indirect prompt injection if untrusted content the agent ingests can influence which tool arguments get generated. There is no sign of active exploitation: it's absent from CISA KEV, EPSS is unscored, no public exploit or Nuclei template exists, and downstream dependent counts and package risk score aren't available, so today's likelihood is theoretical rather than observed. The bug class itself is high-value to attackers, though — unsandboxed file-read tools reachable from LLM-directed input are a proven path to harvesting .env files, SSH keys, and cloud credentials from agent hosts. Upgrade praisonaiagents to 1.6.78 or later now, and in the interim reject absolute paths and canonicalize (realpath) every FastContext tool argument against workspace_path, run the agent process with least-privilege filesystem access, and alert on any grep_search/read_file/list_directory/glob_search call whose resolved path lands outside the workspace.

Is CVE-2026-61432 actively exploited?

Proof-of-concept exploit code is publicly available for CVE-2026-61432, increasing the risk of exploitation.

How to fix CVE-2026-61432?

1) Patch: upgrade praisonaiagents to 1.6.78 or later immediately — this is the primary and complete fix per the vendor advisory. 2) If patching is delayed, add an application-layer guard: reject any FastContext tool argument that is an absolute path or contains '../' sequences, and canonicalize every resolved path (os.path.realpath) before comparing it against workspace_path with a strict prefix check. 3) Defense in depth: run agent processes with least-privilege OS permissions — dedicated non-root user, read-only mounts for anything outside the workspace, no access to credential files or other tenants' directories, and container/chroot isolation where feasible. 4) Detection: log every grep_search/glob_search/read_file/list_directory call with its resolved (not raw) path, and alert on any resolution outside workspace_path or on arguments containing leading '/' or '../'. 5) If FastContext is exposed to untrusted retrieved content (indirect prompt injection surface), treat tool-argument generation from that content as untrusted input regardless of patch status.

What systems are affected by CVE-2026-61432?

This vulnerability affects the following AI/ML architecture patterns: agent frameworks, coding/dev agent tool integrations, multi-tenant AI agent deployments, local file system context retrieval.

What is the CVSS score for CVE-2026-61432?

CVE-2026-61432 has a CVSS v3.1 base score of 5.7 (MEDIUM). The EPSS exploitation probability is 0.34%.

What is the AI security impact?

Affected AI Architectures

agent frameworkscoding/dev agent tool integrationsmulti-tenant AI agent deploymentslocal file system context retrieval

MITRE ATLAS Techniques

AML.T0037Data from Local System
AML.T0051.001Indirect
AML.T0053AI Agent Tool Invocation
AML.T0086Exfiltration via AI Agent Tool Invocation

Compliance Controls Affected

EU AI Act: Article 15
ISO 42001: A.6.2
NIST AI RMF: MEASURE 2.7
OWASP LLM Top 10: LLM02, LLM06

What are the technical details?

Original Advisory

PraisonAI (praisonaiagents) before 1.6.78 contains a path traversal vulnerability in the FastContext feature (praisonaiagents.context.fast). FastContextAgent.execute_tool() prepends the configured workspace_path only for relative paths and neither rejects absolute paths nor canonicalizes joined paths before enforcing workspace containment. As a result, tool arguments or model-generated function calls to grep_search, glob_search, read_file, or list_directory can supply absolute paths or '../' traversal sequences to read, search, and enumerate files outside the intended workspace directory, with file contents returned to the caller or injected into the model's tool-result context.

Exploitation Scenario

An organization deploys a PraisonAI-based coding assistant scoped to a project's workspace_path, expecting FastContext's read_file/grep_search/glob_search/list_directory tools to stay contained there. A low-privileged user (or an attacker who plants a malicious instruction inside a file, issue, or web page the agent is asked to review) crafts a request that causes the model to call read_file with an absolute path like /etc/passwd or workspace-relative traversal like '../../.env', or grep_search across '/home/app/.ssh/'. Because FastContextAgent.execute_tool() only strips the workspace prefix for already-relative paths and never canonicalizes or rejects absolute/traversal paths, the tool call succeeds outside the intended sandbox. The file contents are returned to the caller and also injected into the LLM's context, so the attacker either receives the leaked secrets directly in the tool response or gets the model to restate/summarize them in its next reply — yielding credentials, API keys, or proprietary source outside the authorized project scope.

Weaknesses (CWE)

CWE-200 — Exposure of Sensitive Information to an Unauthorized Actor: The product exposes sensitive information to an actor that is not explicitly authorized to have access to that information.

  • [Architecture and Design] Compartmentalize the system to have "safe" areas where trust boundaries can be unambiguously drawn. Do not allow sensitive data to go outside of the trust boundary and always be careful when interfacing with a compartment outside of the safe area. Ensure that appropriate compartmentalization is built into the system design, and the compartmentalization allows for and reinforces privilege separation functionality. Architects and designers should rely on the principle of least privilege to decide the appropriate time to use privileges and the time to drop privileges.

Source: MITRE CWE corpus.

CVSS Vector

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

Timeline

Published
July 10, 2026
Last Modified
October 8, 2026
First Seen
July 10, 2026

Related Vulnerabilities