CVE-2026-32714·Python vulnerability
SciTokens is a reference library for generating and using SciTokens. Prior to version 1.9.6, the KeyCache class in scitokens was vulnerable to SQL Injection because it used Python's str.format() to construct SQL queries with user-supplied data (such as issuer and key_id). This allowed an attacker to execute arbitrary SQL commands against the local SQLite database. This issue has been patched in version 1.9.6.
- Severity
- critical
- Software
- Python
- Fixed in
- 1.9.6
- Published
- 2026-03-31
Affected versions
Until: 1.9.6
Fixed in: 1.9.6
How to fix this CVE
Update the SciTokens library to version 1.9.6 or later to patch a critical SQL injection vulnerability in the KeyCache class. The vulnerability allows attackers to execute arbitrary SQL commands by manipulating issuer and key_id parameters passed to the library. Immediately apply this patch in production environments, particularly for systems using SciTokens for authentication token validation.
sudo dnf check-update python3-scitokens && sudo dnf update python3-scitokensDefensia detects this vulnerability
What an exploitation attempt looks like
Sample log line indicative of exploitation attempts:
SELECT.*FROM.*WHERE.*(issuer|key_id).*UNION|DROP|INSERT|UPDATE|DELETE|EXEC|scriptWAF mitigation (if patching is not yet possible)
Add this rule to your WAF to block exploitation attempts while you schedule the patch.
Implement input validation rules that reject SQL metacharacters (UNION, SELECT, DROP, --) in any HTTP request parameters mapped to issuer or key_id fields. Use WAF rules to block requests containing SQL keywords or double-dash comment syntax in query strings or POST bodies destined for SciTokens token validation endpoints.How to check if you are affected
- Check installed SciTokens version: python3 -c "import scitokens; print(scitokens.__version__)"
- Verify KeyCache usage in your application: grep -r "KeyCache" /path/to/your/app --include="*.py"
- Review application logs for SQLite database errors containing suspicious SQL syntax patterns or stack traces from scitokens.py KeyCache methods
- Confirm patch installation by re-running version check: python3 -c "import scitokens; print(scitokens.__version__)" and verify output is 1.9.6 or higher
FAQ
What is CVE-2026-32714?
CVE-2026-32714 is a critical SQL injection vulnerability in SciTokens' KeyCache class where user-controlled inputs (issuer and key_id) were concatenated directly into SQL queries without parameterization, allowing attackers to execute arbitrary SQL commands against the local SQLite database.
Is CVE-2026-32714 being actively exploited?
No, there are currently no reports of active exploitation in the wild and no public exploits are available, though the critical CVSS score of 9.8 warrants immediate patching.
What versions of SciTokens are affected by CVE-2026-32714?
All versions prior to 1.9.6 are vulnerable. Update to version 1.9.6 or any subsequent release to remediate the issue.
How do I check if my server is vulnerable to CVE-2026-32714?
Run python3 -c "import scitokens; print(scitokens.__version__)" and compare the version number against 1.9.6. If your version is lower, your system is vulnerable.
Does Defensia detect CVE-2026-32714?
Yes — Defensia's CVE advisory scanner compares installed package versions against the NVD database. If SciTokens is installed on a monitored server, CVE-2026-32714 will appear in your dashboard with remediation steps.
Related Python CVEs
References
- https://github.com/scitokens/scitokens/commit/3dba108853f2f4a6c0f2325c03779bf083c41cf2
- https://github.com/scitokens/scitokens/releases/tag/v1.9.6
- https://github.com/scitokens/scitokens/security/advisories/GHSA-rh5m-2482-966c
- https://github.com/scitokens/scitokens/security/advisories/GHSA-rh5m-2482-966c
Track CVEs across your fleet automatically
Defensia scans your Linux servers and tells you exactly which ones are running vulnerable versions — including CVE-2026-32714. Free for 1 server.
Get started free