Skip to main content

Praisonai CVE-2026-40315

| EUVDEUVD-2026-22215 HIGH
SQL Injection (CWE-89)
2026-04-14 GitHub_M
7.2
CVSS 4.0 · GitHub Advisory
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Recon
    Obtain authenticated local access
  2. Delivery
    Supply malicious YAML/dict configuration
  3. Exploit
    Inject SQL fragments via table_prefix
  4. Install
    Trigger SQLiteConversationStore query execution
  5. C2
    Extract schema from sqlite_master
  6. Execute
    Manipulate query results via UNION injection
  7. Impact
    Exfiltrate sensitive conversation data

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Parameterized queries, prepared statements
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Persistence

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Attacker must have low-privilege local access to PraisonAI instances running versions prior to 4.5.133 and control the table_prefix configuration value through from_yaml or from_dict configuration inputs to inject SQL fragments into SQLiteConversationStore queries.

Impact

The CVSS 7.2 score reflects meaningful constraints that reduce real-world exploitability. The local attack vector (AV:L) requires the attacker to already have access to the system where PraisonAI runs, and low privileges (PR:L) means authenticated access is required. The attack complexity present (AT:P) indicator suggests specific conditions must be met-specifically, the attacker must control configuration input through from_yaml or from_dict methods, which may not be exposed in all deployment scenarios. High confidentiality and integrity impacts (VC:H/VI:H) with no availability impact (VA:N) indicate data exfiltration and tampering risks without service disruption. No EPSS score is available, and KEV status shows no active exploitation, suggesting this remains a theoretical risk. The absence of publicly available exploit code further reduces immediate weaponization risk. SSVC assessment: exploitation status is none, technical impact is partial (data access/manipulation but no code execution), and automatability is low due to configuration control prerequisite. This is a genuine risk for multi-tenant or configuration-as-code deployments where untrusted users can supply YAML/dict configurations, but lower priority for single-tenant installations with trusted configuration sources.

Exploit ScenarioDerived

An attacker with authenticated local access to a PraisonAI deployment gains the ability to supply configuration data through YAML files or dictionary inputs. By crafting a malicious table_prefix value containing SQL fragments like "conversations" UNION SELECT type,name,sql,1,2 FROM sqlite_master--, the attacker injects commands into the query construction logic. When SQLiteConversationStore executes queries with this poisoned prefix, it returns internal schema information from sqlite_master, exposing all database table structures, column names, and stored data relationships, enabling subsequent targeted data extraction attacks.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.0% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Apr 14, 2026

SQL identifier injection in PraisonAI's SQLiteConversationStore allows authenticated local attackers with configuration control to extract database schema and manipulate query results. The vulnerability affects PraisonAI versions prior to 4.5.133, where unsanitized table_prefix values are concatenated into SQL queries via f-strings. Attackers controlling configuration inputs (from_yaml/from_dict) can inject SQL fragments to access internal SQLite tables like sqlite_master and execute UNION-based injections. A vendor patch is available in version 4.5.133. No public exploit code or active exploitation confirmed at time of analysis. CVSS 7.2 indicates local attack vector with low complexity but requires low privileges and present attack complexity conditions.

RemediationAI

Upgrade to PraisonAI version 4.5.133 or later, which contains the fix implemented in commit 0accebb2e3c3ec2fca66bbea0444fb7a35f0b4ef (available at https://github.com/MervinPraison/PraisonAI/commit/0accebb2e3c3ec2fca66bbea0444fb7a35f0b4ef). For environments where immediate upgrade is not feasible, implement strict input validation on table_prefix configuration values using an allowlist of alphanumeric characters only, rejecting any special characters or SQL syntax. Alternatively, restrict configuration input methods (from_yaml/from_dict) to trusted sources only and remove user-controllable configuration capabilities. Review existing configurations for suspicious table_prefix values and audit SQLite database contents for unauthorized schema modifications. Consult the GitHub security advisory at https://github.com/MervinPraison/PraisonAI/security/advisories/GHSA-x783-xp3g-mqhp for additional vendor guidance.

Affected VersionsENISA

PraisonAI < 4.5.133

Affected Packages

pypi praisonai fix: 4.5.133

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in pypi

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The vulnerability exists in PraisonAI's SQLiteConversationStore component (cpe:2.3:a:mervinpraison:praisonai), specifically in the sqlite.py module where SQL query construction occurs. This is a classic SQL identifier injection (CWE-89) issue arising from the inability to safely parameterize SQL identifiers (table/column names) using prepared statements. The table_prefix configuration parameter flows through the application's configuration pipeline (config.py → factory.py → sqlite.py) and is directly embedded into SQL queries using Python f-string formatting. Unlike SQL value injection where parameterized queries provide protection, identifier injection requires explicit validation or allowlisting since database APIs do not support parameterized identifiers. The multi-agent teams system architecture means this configuration injection point affects the conversation storage layer, which likely handles sensitive agent interaction data. SQLite's sqlite_master table, accessible through this vulnerability, contains complete schema information for all database objects.

Know when Praisonai gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

GitHub Advisory PRIMARY 7.2 HIGH
CVSS:4.0/AV:L/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N

Primary rating from GitHub Advisory · only source for this CVE.

CVSS VectorGitHub Advisory

Attack Vector
Local
Attack Complexity
Low
Attack Requirements
Present
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
High
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

3
Patch released
Apr 15, 2026 - 02:30 nvd
Patch available
CVSS changed
Apr 14, 2026 - 04:22 NVD
7.2 (HIGH)
CVE Published
Apr 14, 2026 - 02:45 nvd
HIGH 7.2

DescriptionGitHub Advisory

PraisonAI is a multi-agent teams system. Prior to 4.5.133, there is an SQL identifier injection vulnerability in SQLiteConversationStore where the table_prefix configuration value is directly concatenated into SQL queries via f-strings without any validation or sanitization. Since SQL identifiers cannot be safely parameterized, an attacker who controls the table_prefix value (e.g., through from_yaml or from_dict configuration input) can inject arbitrary SQL fragments that alter query structure. This enables unauthorized data access, such as reading internal SQLite tables like sqlite_master, and manipulation of query results through techniques like UNION-based injection. The vulnerability propagates from configuration input in config.py, through factory.py, to the SQL query construction in sqlite.py. Exploitation requires the ability to influence configuration input, and successful exploitation leads to internal schema disclosure and full query result tampering. This issue has been fixed in version 4.5.133.

Executive ViewAI

Why It Matters

PraisonAI versions before 4.5.133 contain a SQL identifier injection vulnerability in SQLiteConversationStore that allows authenticated local attackers with configuration control to access sensitive database schema and manipulate query results. Organizations using PraisonAI for conversational AI workloads should prioritize upgrading to version 4.5.133 immediately, as the vulnerability enables attackers to bypass data isolation controls and potentially exfiltrate application or user data stored in the SQLite backend.

Business Impact: High
Compensating Controls

Apply vendor patch. If immediate patching is not feasible: (1) Restrict configuration file access using OS-level permissions to prevent unauthorized modification of table_prefix values; (2) Deploy network segmentation to limit SQLiteConversationStore access to trusted application components only; (3) Enable database activity logging to detect anomalous SQL query patterns; (4) Run PraisonAI with the minimum privileges necessary to prevent lateral movement if configuration is compromised.

Threat Intelligence Overview

EPSS Score
0.0%
Top 94% exploitable
Social Media
1
Sightings
Data Quality
6 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.0%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
Poc
System Exposure· derived
Small
Automatable
No
Human Impact
High
Technical Impact
Total

Priority Score

36
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +36
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

SQL injection exploits the way applications construct database queries by mixing user input directly into SQL statements.

CVE-2026-57139 CRITICAL POC
9.8 Sep 15

PraisonAI's TypeScript MCP server (npm package `praisonai`, versions 1.5.0 through 1.7.1) exposes an HTTP JSON-RPC trans

CVE-2026-55536 CRITICAL POC
9.1 Aug 25

WebSocket origin-validation bypass in PraisonAI's Browser Server (praisonai/browser/server.py) before 4.6.58 lets an att

CVE-2026-55541 HIGH POC
8.8 Aug 25

PraisonAI's `praisonai serve` subsystem (agents and unified modes) accepts an `--api-key` CLI flag that is parsed but ne

CVE-2026-55534 HIGH POC
8.6 Aug 25

Unauthenticated remote agent invocation in PraisonAI versions 4.6.34 through 4.6.57 allows any network-reachable caller

CVE-2026-55526 HIGH POC
8.5 Aug 25

SSRF protection bypass in PraisonAI's praisonaiagents library (all versions before 1.6.58) lets low-privileged users rou

CVE-2026-55533 HIGH POC
8.2 Aug 25

Authentication fail-open in PraisonAI's Recipe HTTP server allows unauthenticated remote attackers to invoke recipe exec

CVE-2026-55528 HIGH POC
8.2 Aug 25

Authentication bypass in PraisonAI's AgentServer component exposes all routes - /publish, /events, /info, /health - to u

CVE-2026-55522 HIGH POC
7.8 Aug 05

Arbitrary Python code execution in PraisonAI's workflow include feature allows an attacker who controls a local recipe d

CVE-2026-55523 HIGH POC
7.7 Aug 05

Server-side request forgery in PraisonAI's web_crawl() function (versions 1.5.128-1.6.57) allows an attacker who can inf

CVE-2026-55532 HIGH POC
7.6 Aug 25

Cross-site request forgery against the PraisonAI MCP HTTP-stream transport allows unauthenticated remote attackers to ex

CVE-2026-44338 HIGH POC
7.3 May 08

Remote unauthenticated access to PraisonAI's legacy Flask API server allows attackers to execute configured agent workfl

CVE-2026-55527 HIGH POC
7.1 Aug 25

Path traversal in praisonaiagents prior to 1.6.58 allows a low-privileged caller to write arbitrary JSON files to any pr

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy