Cyber Resilience

CVE-2026-40315

SQLi in Praisonai ≤ 4.5.133

Public PoCSQLi
Published
14 April 2026
Modified
20 April 2026
Patch / advisory
CVSS Score v4 7.2
Click a component to see what it means
Raw vectorCVSS:4.0/AV:L/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
EPSS Score 0.0030 22th percentile
Risk Priority 30 floored blend · peak EPSS

Summary

CVE-2026-40315 is a high-severity SQL Injection (CWE-89) vulnerability in Praison Praisonai. Its CVSS base score is 7.2 (High).

Operationally, exploitation aligns with the MITRE ATT&CK technique Exploit Public-Facing Application (T1190); ranked at the 22th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog; a public proof-of-concept is referenced.

The strongest mitigations our analysis identified map to SA-11 (Developer Testing and Evaluation) and SI-10 (Information Input Validation) — see the control section below for these in your framework.

Deeper analysis AI-assisted summary

Synthesised by an AI model from the NVD description and linked references — a reading aid, not an authoritative source.

CVE-2026-40315 is an SQL identifier injection vulnerability affecting PraisonAI, a multi-agent teams system, in versions prior to 4.5.133. The issue resides in the SQLiteConversationStore component, where the table_prefix configuration value is directly concatenated into SQL queries using f-strings without validation or sanitization. SQL identifiers cannot be safely parameterized, allowing injected arbitrary SQL fragments to alter query structure. The vulnerability originates from configuration input in config.py, propagates through factory.py, and manifests in SQL query construction in sqlite.py. It carries a CVSS v3.1 base score of 9.8 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H) and is associated with CWE-89.

An attacker who can control the table_prefix value, such as through from_yaml or from_dict configuration input, can exploit this vulnerability remotely with low complexity and no privileges required. Successful exploitation enables unauthorized data access, including reading internal SQLite tables like sqlite_master for schema disclosure, as well as manipulation of query results via techniques like UNION-based injection, leading to full query result tampering.

The vulnerability has been addressed in PraisonAI version 4.5.133. Security practitioners should upgrade to this version or later. Relevant details are available in the GitHub security advisory (GHSA-x783-xp3g-mqhp) and the fixing commit (0accebb2e3c3ec2fca66bbea0444fb7a35f0b4ef).

PraisonAI's role as a multi-agent teams system introduces AI/ML relevance, as exploitation could compromise conversation storage and potentially affect agent interactions or data integrity in AI-driven workflows. No real-world exploitation has been reported.

OWASP Top 10 for Web (2025)

EU & UK References

Vulnerability Data

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…

more

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.

CWE(s)

Related Threats

MITRE ATT&CK Enterprise Techniques

T1190 Exploit Public-Facing Application Initial Access
Adversaries may attempt to exploit a weakness in an Internet-facing host or system to initially access a network.
Derived from this CVE’s CWE(s) via the direct CWE→ATT&CK cross-walk.

CVEs Like This One

CVE-2023-26034Shared CWE-89
CVE-2023-46914Shared CWE-89
CVE-2023-44284Shared CWE-89
CVE-2023-48722Shared CWE-89
CVE-2024-4071Shared CWE-89
CVE-2023-49085Shared CWE-89
CVE-2024-25314Shared CWE-89
CVE-2024-0528Shared CWE-89
CVE-2024-8167Shared CWE-89
CVE-2023-7142Shared CWE-89

Affected Assets

praison
praisonai
≤ 4.5.133

Mitigating Controls

Control response

Prevent
Stop it (NIST 800-53)

Detect
Catch it (NIST detect / respond)

Harden
Shrink the surface (DISA STIG)

Validate
Prove the fix (OWASP ASVS)
  • V6.2.5

Mitigating Controls (NIST 800-53 r5) AI

Developer testing and evaluation can discover SQLi flaws before deployment but does not stop their introduction.

Input validation directly stops untrusted data from reaching SQL query construction without neutralization.

Secure engineering principles require parameterized queries and input sanitization that structurally eliminate SQLi.

System monitoring can identify attempted SQLi exploitation via anomalous queries after the weakness exists.

Mitigating Controls (NIST CSF 2.0) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.

PR.PS-06 mostly match
prevents

Secure SDLC practices directly target injection flaws during coding and review so largely prevent CWE-89 introduction, yet the single broad outcome leaves residual risk from incomplete neutralization techniques or missed edge cases.

PR.AT-02 partial match
prevents

Training raises developer awareness of SQLi risks and can reduce introduction likelihood (partial) but removes none of the actual coding flaw's risk by itself since technical neutralization is still required.

Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.

finds

The same secure-coding and static-analysis activities surface missing neutralization of SQL metacharacters before the system is accepted.

prevents

Early warnings and shared best-practice information help organizations apply the latest remediation techniques against SQL-injection vulnerabilities.

prevents

Threat-intelligence feeds that surface new SQL-injection campaigns enable rapid updates to query-construction defenses and detection signatures before exploitation occurs.

prevents

Secure-coding rules and security testing phases mandate the use of parameterized queries or equivalent escaping, preventing the construction of dynamic SQL statements from untrusted input.

prevents

Language-specific secure coding rules, peer review and SAST together prevent the construction of SQL statements from untrusted data without proper parameterization or escaping.

References