Skip to main content
← All vulnerabilities
CVE-2026-41496GHSA-RG3H-X3JW-7JM5PYSEC-2026-2923PYSEC-2026-2952

PraisonAI: SQL Injection via unvalidated `table_prefix` in 9 conversation store backends (incomplete fix for CVE-2026-40315)

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 4.5.149, 1.6.8
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: poc
  • Automatable: no
  • Technical impact: total

Summary

PraisonAI is a multi-agent teams system. Prior to praisonai version 4.6.9 and praisonaiagents version 1.6.9, the fix for CVE-2026-40315 added input validation to SQLiteConversationStore only. Nine sibling backends — MySQL, PostgreSQL, async SQLite/MySQL/PostgreSQL, Turso, SingleStore, Supabase, SurrealDB — pass table_prefix straight into f-string SQL. Same root cause, same code pattern, same exploitation. 52 unvalidated injection points across the codebase. postgres.py additionally accepts an unvalidated schema parameter used directly in DDL. This issue has been patched in praisonai version 4.6.9 and praisonaiagents version 1.6.9.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: poc · Automatable: no · Technical impact: total

  3. Record last updated

Affected versions

  • MervinPraison PraisonAI

    praisonaiagents < 1.6.9, praisonai < 4.6.9

  • praisonaiPyPI

    fixed in 4.5.149

  • praisonaiagentsPyPI

    fixed in 1.6.8

References 1

GitHub · MervinPraison/PraisonAI