> CVE-2026-40156 [HIGH]

« BACK_TO_HOME
PUBLISHED
2026-04-10 17:17
MODIFIED
2026-04-10 17:17
CVSS_SCORE V3
7.8
EPSS (Prob. Exploit)
0.22%
Top 87.8%
DATA SOURCES:
NVD đź”— 2026-04-10 CWE MITRE đź”— 2026-11-01 FIRST EPSS đź”— 2026-11-08 GITHUB đź”— 2026-11-05 OSV đź”— 2026-11-02

> DESCRIPTION

PraisonAI is a multi-agent teams system. Prior to 4.5.128, PraisonAI automatically loads a file named tools.py from the current working directory to discover and register custom agent tools. This loading process uses importlib.util.spec_from_file_location and immediately executes module-level code via spec.loader.exec_module() without explicit user consent, validation, or sandboxing. The tools.py file is loaded implicitly, even when it is not referenced in configuration files or explicitly requested by the user. As a result, merely placing a file named tools.py in the working directory is sufficient to trigger code execution. This behavior violates the expected security boundary between user-controlled project files (e.g., YAML configurations) and executable code, as untrusted content in the working directory is treated as trusted and executed automatically. If an attacker can place a malicious tools.py file into a directory where a user or automated system (e.g., CI/CD pipeline) runs praisonai, arbitrary code execution occurs immediately upon startup, before any agent logic begins. This vulnerability is fixed in 4.5.128.

> AFFECTED_PRODUCTS

ℹ️ Aucun produit affecté n'a encore été publié par NVD pour cette CVE.

> CVSS V3 METRICS

CVSS_VECTOR
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
EXPLOITABILITY
1.8
IMPACT
5.9

> MÉTRIQUES CVSS DÉTAILLÉES

CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Métrique Valeur Interprétation
AV (Vecteur d'Attaque)
Attack Vector
Local (L)
Exploit nécessite un accès local au système
AC (Complexité d'Attaque)
Attack Complexity
Low (L)
Peu de conditions requises pour exploiter
PR (Privilèges Requis)
Privileges Required
None (N)
Aucune authentification requise
UI (Interaction Utilisateur)
User Interaction
Required (R)
Nécessite une action utilisateur (clic lien, ouverture fichier, etc.)
S (Périmètre)
Scope
Unchanged (U)
Impact reste dans le périmètre du composant compromis
C (Impact Confidentialité)
Confidentiality Impact
High (H)
Divulgation totale d'informations
I (Impact Intégrité)
Integrity Impact
High (H)
Modification totale des données possible
A (Impact Disponibilité)
Availability Impact
High (H)
Interruption totale du service possible

> RÉSUMÉ DES IMPACTS

Confidentialité
High
Divulgation totale d'informations
Intégrité
High
Modification totale des données possible
Disponibilité
High
Interruption totale du service possible

> WEAKNESSES

CWE-94 CWE-426 CWE-829

> CWE DETAILED DESCRIPTIONS

CWE-94: Improper Control of Generation of Code - The product constructs all or part of a code segment using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the syntax or behavior of the intended code segment. | CWE-426: Untrusted Search Path - The product searches for critical resources using an externally-supplied search path that can point to resources that are not under the product's direct control. | CWE-829: Inclusion of Functionality from Untrusted Control Sphere - The product imports, requires, or includes executable functionality (such as a library) from a source that is outside of the intended control sphere.

> GITHUB SECURITY ADVISORY

GHSA-2g3w-cpc4-chr4 HIGH

PraisonAI Vulnerable to Implicit Execution of Arbitrary Code via Automatic `tools.py` Loading

AFFECTED PACKAGES:
PIP / praisonai
< 4.5.128
Fixed in: 4.5.128

> OSV (GOOGLE OPEN SOURCE VULNERABILITIES)

PraisonAI Affected by Implicit Execution of Arbitrary Code via Automatic `tools.py` Loading

AFFECTED PACKAGES:
Unknown / Unknown
512 versions affected
ALIASES:
GHSA-2g3w-cpc4-chr4, PYSEC-2026-2895

> HISTORIQUE DES MODIFICATIONS

Première apparition
10/04/2026 17:17
Source: NVD
📊 ENRICHISSEMENT 01/11/2026 06:59
CWE
Champ modifié: Description CWE
Ancienne valeur:
CWE-94: Improper Control of Generation of Code ('Code Injection') - The product constructs all or part of a code segment using externally-influenced input from an upstream component, but it does not n...
Nouvelle valeur:
CWE-94: Improper Control of Generation of Code - The product constructs all or part of a code segment using externally-influenced input from an upstream component, but it does not neutralize or incorr...
📊 ENRICHISSEMENT 01/05/2026 06:01
CWE
Champ modifié: Description CWE
Ancienne valeur:
N/A
Nouvelle valeur:
CWE-94: Improper Control of Generation of Code ('Code Injection') - The product constructs all or part of a code segment using externally-influenced input from an upstream component, but it does not n...
Total des modifications: 2 Dernière mise à jour: 1 week ago

> REFERENCES

https://github.com/MervinPraison/PraisonAI/security/advisories/GHSA-2g3w-cpc4-ch...
« BACK_TO_HOME