CVE-2025-29189
📋 TL;DR
Flowise versions up to 2.2.3 contain a SQL injection vulnerability in the Postgres_VectorStores component via the tableName parameter. This allows attackers to execute arbitrary SQL commands on the database. Any organization using vulnerable Flowise versions with PostgreSQL vector stores is affected.
💻 Affected Systems
- Flowise
📦 What is this software?
Flowise by Flowiseai
⚠️ Risk & Real-World Impact
Worst Case
Complete database compromise including data theft, data manipulation, privilege escalation, and potential remote code execution on the database server.
Likely Case
Unauthorized data access, data exfiltration, and potential database corruption or denial of service.
If Mitigated
Limited impact with proper input validation, parameterized queries, and database user privilege restrictions.
🎯 Exploit Status
SQL injection vulnerabilities are commonly weaponized. The provided references contain technical details that could facilitate exploitation.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: > 2.2.3
Vendor Advisory: https://github.com/FlowiseAI/Flowise
Restart Required: Yes
Instructions:
1. Update Flowise to version >2.2.3. 2. Restart the Flowise service. 3. Verify the update was successful.
🔧 Temporary Workarounds
Input Validation and Sanitization
allImplement strict input validation for the tableName parameter to only allow alphanumeric characters and underscores.
Database User Privilege Reduction
allRestrict database user permissions to only necessary operations (SELECT, INSERT, UPDATE) and remove DROP, CREATE, EXECUTE privileges.
🧯 If You Can't Patch
- Implement a web application firewall (WAF) with SQL injection rules
- Isolate the vulnerable system from sensitive networks and databases
🔍 How to Verify
Check if Vulnerable:
Check Flowise version. If version <= 2.2.3 and using PostgreSQL vector stores, the system is vulnerable.
Check Version:
Check package.json or Flowise admin interface for version information
Verify Fix Applied:
Verify Flowise version is >2.2.3 and test the Postgres_VectorStores functionality with malicious input.
📡 Detection & Monitoring
Log Indicators:
- Unusual SQL queries in database logs
- Multiple failed login attempts or parameter manipulation attempts in application logs
Network Indicators:
- Unusual database connection patterns
- Large data transfers from database server
SIEM Query:
source="flowise_logs" AND (tableName CONTAINS "'" OR tableName CONTAINS ";" OR tableName CONTAINS "--")