---
id: CVE-2026-60090
title: >-
  PraisonAI before 4.6.78 fails to validate the caller-controlled dimension
  argument in the PGVector and Cassandra knowledge-store create_collection()
  backends
summary: >-
  PraisonAI before 4.6.78 fails to validate the caller-controlled dimension
  argument in the PGVector and Cassandra knowledge-store create_collection()
  backends. Although schema, keyspace, and collection-name identifiers are
  validated, the …
severity: critical
cvss: 9.8
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H'
cwe:
  - CWE-89
published: '2026-07-11'
updated: '2026-07-11'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-60090'
references:
  - url: >-
      https://github.com/MervinPraison/PraisonAI/commit/3aa9cbc2bd49c23a32be0a89a5e620d13d843eab
    label: disclosure@vulncheck.com
  - url: >-
      https://github.com/MervinPraison/PraisonAI/security/advisories/GHSA-wf65-4jjx-q444
    label: disclosure@vulncheck.com
  - url: >-
      https://www.vulncheck.com/advisories/praisonai-before-sql-cql-injection-via-vector-dimension
    label: disclosure@vulncheck.com
tags:
  - nvd
ingestedAt: '2026-07-11T23:16:21.099Z'
epss: 0.00702
epssPercentile: 0.51167
---

## Overview

PraisonAI before 4.6.78 fails to validate the caller-controlled dimension argument in the PGVector and Cassandra knowledge-store create_collection() backends. Although schema, keyspace, and collection-name identifiers are validated, the dimension value (declared as int but not enforced at runtime) is interpolated directly into the vector column of the generated CREATE TABLE DDL. A caller able to influence collection-creation dimensions can pass a string such as '3); DROP TABLE tenant_secrets; --' to inject SQL/CQL tokens into the statement executed by the database driver.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
