CVE-2026-30822

7.7 HIGH

📋 TL;DR

Flowise versions before 3.0.13 contain an unauthenticated database injection vulnerability that allows attackers to manipulate internal database fields when creating leads. This affects all Flowise deployments with the vulnerable version exposed to untrusted networks. The vulnerability enables data manipulation without requiring authentication.

💻 Affected Systems

Products:
  • FlowiseAI Flowise
Versions: All versions prior to 3.0.13
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Affects all deployments of Flowise with the vulnerable version, regardless of configuration.

⚠️ Manual Verification Required

This CVE does not have specific version information in our database, so automatic vulnerability detection cannot determine if your system is affected.

Why? The CVE database entry doesn't specify which versions are vulnerable (no version ranges provided by the vendor/NVD).

🔒 Custom verification scripts are available for registered users. Sign up free to download automated test scripts.

Recommended Actions:
  1. Review the CVE details at NVD
  2. Check vendor security advisories for your specific version
  3. Test if the vulnerability is exploitable in your environment
  4. Consider updating to the latest version as a precaution

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could inject malicious data into critical database fields, potentially leading to data corruption, privilege escalation, or manipulation of LLM flow configurations.

🟠

Likely Case

Unauthenticated attackers can tamper with lead data, potentially affecting business logic, data integrity, or enabling further attacks through manipulated database entries.

🟢

If Mitigated

With proper network segmentation and authentication requirements, impact is limited to authorized users only.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

The advisory confirms unauthenticated exploitation is possible, suggesting straightforward attack vectors.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 3.0.13

Vendor Advisory: https://github.com/FlowiseAI/Flowise/security/advisories/GHSA-mq4r-h2gh-qv7x

Restart Required: Yes

Instructions:

1. Backup your Flowise data and configurations. 2. Update Flowise to version 3.0.13 or later using your package manager or deployment method. 3. Restart the Flowise service. 4. Verify the update was successful.

🔧 Temporary Workarounds

Network Access Restriction

linux

Restrict network access to Flowise to trusted IP addresses only

# Use firewall rules to restrict access
sudo ufw allow from TRUSTED_IP to any port 3000
sudo ufw deny 3000

Authentication Proxy

all

Place Flowise behind an authentication proxy or reverse proxy with authentication

# Configure nginx with basic auth
location / {
    auth_basic "Restricted";
    auth_basic_user_file /etc/nginx/.htpasswd;
    proxy_pass http://localhost:3000;
}

🧯 If You Can't Patch

  • Implement strict network access controls to limit Flowise exposure to trusted networks only.
  • Deploy a web application firewall (WAF) with injection detection rules in front of Flowise.

🔍 How to Verify

Check if Vulnerable:

Check your Flowise version. If it's below 3.0.13, you are vulnerable.

Check Version:

Check package.json or run: npm list flowise (if installed via npm) or check the Flowise UI about section.

Verify Fix Applied:

Verify the version is 3.0.13 or higher and test that unauthenticated lead creation no longer accepts arbitrary field injections.

📡 Detection & Monitoring

Log Indicators:

  • Unusual lead creation patterns
  • Requests with unexpected field names or values in lead creation endpoints
  • Multiple lead creation attempts from single IPs

Network Indicators:

  • Unusual POST requests to /api/v1/leads or similar endpoints
  • Requests containing unexpected database field names

SIEM Query:

source="flowise.logs" AND (uri_path="/api/v1/leads" OR uri_path="/leads") AND http_method="POST" AND (field_names CONTAINS "internal_" OR field_names CONTAINS "db_")

🔗 References

📤 Share & Export