CVE-2025-66205 is a high severity (CVSS 7.1) error-based SQL injection in the Frappe web framework. A certain endpoint did not validate parameters, and details such as the database version could be read. It is fixed in Frappe 15.86.0 and 14.99.2. There is no workaround, so upgrading is required.
What's affected
- Package: frappe on PyPI, the full stack framework behind apps such as ERPNext.
- Affected: versions before 15.86.0 on the 15 line, and before 14.99.2 on the 14 line.
- Fixed: 15.86.0 and 14.99.2.
- Privileges: the record vector says low privileges are required, so an authenticated account is needed.
The record and the GitHub advisory agree: High, 7.1. The advisory states there is no workaround.
How to check if you're exposed
Check the Frappe version on each site or bench.
bench version
pip show frappe
If you run the 15 line and the version is below 15.86.0, or the 14 line and below 14.99.2, you are affected. For containerised deployments, check the image tag and rebuild from a patched base. For ERPNext or other apps built on Frappe, the framework version is what matters, not the app version.
What to do now
- Upgrade Frappe to 15.86.0 or 14.99.2 depending on your major version, then run your migrations as your normal process requires.
- Do not rely on a workaround. The advisory says none exists.
- Review database and web server logs for odd errors from authenticated users around the time you were exposed, since error-based injection works by reading error output.
- Limit who gets accounts on public facing sites and remove stale users.
- Check all your Python projects for old frappe pins. Paste your manifests into the free in-browser scan at gold.safeguard.sh/scan to see which of your dependencies carry this CVE, and use reachability analysis to separate the services that actually call the affected code from the ones that only list the package.
Why it matters
The class is CWE-89, SQL injection. Error-based injection works by sending crafted input that makes the database produce an error, then reading the error message for data. The advisory says some information like the database version could be retrieved, which is the typical first step toward learning more about the target.
It is rated high and not critical because it needs a logged in user and the stated impact is mainly confidentiality. Still, a framework sits under many business apps, so one injectable endpoint is a shared problem across every site on a bench. The record shows no known exploitation and the CVE is not on CISA KEV.
Try it yourself
Click through it at your own pace, or open it full screen.
Quick check
Is there a configuration change that avoids this?
No. The advisory says there is no workaround and upgrading is required.
Which versions are patched?
15.86.0 for the 15 line and 14.99.2 for the 14 line.
Sources
Last reviewed: 18 October 2026.