CVE-2023-49795 is a medium-severity (CVSS 6.5) Server-Side Request Forgery (SSRF) vulnerability in mindsdb. A fix is available for mindsdb — see the affected versions and patch details below.
MindsDB Server-Side Request Forgery vulnerability
EPSS Exploitation Probability
Probability of exploitation in the next 30 days, from FIRST.org EPSS.
How urgent is this, really
Where this sits among everything scored
Real-World Exposure
mindsdbReal-time download stats are indexed for npm and PyPI packages. This vulnerability affects PyPI packages — download data is not available via public APIs for these ecosystems.
Description
Impact
The put method in mindsdb/mindsdb/api/http/namespaces/file.py does not validate the user-controlled URL in the source variable and uses it to create arbitrary requests on line 115, which allows Server-side request forgery (SSRF). This issue may lead to Information Disclosure. The SSRF allows for forging arbitrary network requests from the MindsDB server. It can be used to scan nodes in internal networks for open ports that may not be accessible externally, as well as scan for existing files on the internal network. It allows for retrieving files with csv, xls, xlsx, json or parquet extensions, which will be viewable via MindsDB GUI. For any other existing files, it is a blind SSRF.
Patches
Use mindsdb staging branch or v23.11.4.1
References
- GHSL-2023-182 SSRF prevention cheatsheet.
Affected Packages
| Ecosystem | Package | Vulnerable range | Fix |
|---|---|---|---|
| 🐍PyPI | mindsdb | all versions | 23.11.4.1pip install --upgrade 'mindsdb==23.11.4.1' |
Affected Products
mindsdbmindsdbDetection & mitigation playbook
Open-source dependencyDetect
Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for mindsdb, including transitive dependencies — a direct dependency you never call can still pull in a vulnerable version.
Fix
Update mindsdb to 23.11.4.1 or later, then make sure no transitive (indirect) dependency still pins the vulnerable range — O3 confirms CVE-2023-49795 is resolved across your whole dependency graph.
Workarounds
Restrict outbound requests from the affected component to an allowlist of hosts, block access to link-local and internal address ranges at the network layer, and require authentication on internal services so a forged request cannot reach them unauthenticated.
Frequently Asked Questions
Is CVE-2023-49795 in your dependencies?
Find it across PyPI, including transitive dependencies.