
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2026-2531 is a Server-Side Request Forgery (SSRF) vulnerability in MindsDB's file upload component, specifically in the clear_filename / _split_url function within mindsdb/utilities/security.py. It affects MindsDB versions up to and including 25.14.1. The vulnerability was publicly disclosed on February 16, 2026, with a proof-of-concept published on GitHub. It carries a CVSS v3.1 base score of 7.3 (High) (Feedly, GitHub Issue).
The root cause is improper URL validation (CWE-918: SSRF) in the _split_url() helper function in mindsdb/utilities/security.py. The function used Python's urlparse().netloc to extract the host for comparison against allow/deny lists; however, netloc includes the userinfo component (e.g., user@host). An attacker can craft a URL such as http://attacker@127.0.0.1:4444/, causing netloc to resolve to attacker@127.0.0.1:4444 — which does not match the blocklisted entry 127.0.0.1:4444 — thereby bypassing SSRF protections entirely. The fix replaces netloc with parsed_url.hostname and parsed_url.port, which strips the userinfo segment before comparison (GitHub PR, GitHub Issue).
Successful exploitation allows an authenticated attacker with low privileges to make unauthorized server-side requests to internal or external systems reachable from the MindsDB server. This can lead to unauthorized access to internal metadata services (e.g., cloud instance metadata endpoints), information disclosure, and potential pivoting deeper into the internal network. Confidentiality, integrity, and availability are all partially impacted (Feedly, GitHub Issue).
A proof-of-concept exploit has been publicly disclosed via a GitHub issue (issue #12163), demonstrating the bypass technique with a crafted URL. There is no evidence of active in-the-wild exploitation at this time, and the vulnerability is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog. The EPSS score is approximately 0.043% (0.000430), indicating a low probability of exploitation in the near term. The CVSSv4 exploit maturity is rated as PROOF_OF_CONCEPT (Feedly, GitHub Issue).
url_file_upload feature enabled and a disallowed_origins blocklist configured (e.g., blocking http://127.0.0.1:4444/).http://attacker@127.0.0.1:4444/. The urlparse().netloc will return attacker@127.0.0.1:4444, which does not match the blocklisted 127.0.0.1:4444.127.0.0.1, 169.254.169.254, RFC-1918 addresses) originating from the MindsDB process.http://[^@]+@<internal-ip>:<port>/).Upgrade MindsDB to a version beyond 25.14.1, which includes the fix from commit 74d6f0fd4b630218519a700fbee1c05c7fd4b1ed (PR #12213) that replaces netloc with hostname + port in the _split_url() function. As an interim workaround, restrict access to the MindsDB file upload functionality to trusted users only and implement network segmentation to limit what internal resources the MindsDB server can reach. Additionally, monitor for suspicious outbound connections from the MindsDB application and review user access permissions to remove unnecessary file upload privileges (GitHub PR, Feedly).
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."