CKAN: CSRF exemption primed by anonymous requests
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- Required
- Attack complexity
- Low
- Impact type
- Tampering
- Confidentiality · integrity · availability
- Low · Low · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-352.
Summary
CKAN is an open-source DMS (data management system) for powering data hubs and data portals. Prior to 2.10.10 and 2.11.5, Access to the views via tokens or unauthenticated requests marked the endpoint as not requiring CSRF protection. The marking was a member variable in flask-wtf.csrf.CSRFProtect(), which was stored as a module level variable in the flask_app middleware. This API was never intended for request level changes, it is primarily a decorator for static configuration. An unauthenticated request could hit a protected endpoint, exempting it from CSRF protection for the life of the particular server process. (e.g. one worker of uwsgi). This vulnerability is fixed in 2.10.10 and 2.11.5.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| ckan | ckan | 2.11.0 to before 2.11.5; before 2.10.10 | 2.11.5, 2.10.10 | Patch available | CNA |
| — | ckan (PyPI) | 2.10.0 to before 2.10.10 | 2.10.10 | Patch available | GHSA-mcvf-jxcw-vj73 |
| — | ckan (PyPI) | 2.11.0 to before 2.11.5 | 2.11.5 | Patch available | GHSA-mcvf-jxcw-vj73 |
- ckan Vendorckan Affected 2.11.0 to before 2.11.5; before 2.10.10 Fixed in 2.11.5, 2.10.10 Patch available CNA
- ckan (PyPI) Vendor— Affected 2.10.0 to before 2.10.10 Fixed in 2.10.10 Patch available GHSA-mcvf-jxcw-vj73
- ckan (PyPI) Vendor— Affected 2.11.0 to before 2.11.5 Fixed in 2.11.5 Patch available GHSA-mcvf-jxcw-vj73
Remediation
- Fix · CNA ckan (ckan) Fixed in 2.11.5, 2.10.10
- Fix · GHSA-mcvf-jxcw-vj73 ckan (PyPI) Fixed in 2.10.10 Advisory →
- Fix · GHSA-mcvf-jxcw-vj73 ckan (PyPI) Fixed in 2.11.5 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2026-41255
- 2026-10-03 Alias added: GHSA-mcvf-jxcw-vj73
References
Advisory 3
More Ckan vulnerabilities
- TI-2021-07973 CKAN - Stored Cross-Site Scripting (XSS) via SVG File Upload CVSS 3.1MEDIUM 5.4
- TI-2023-15615 CKAN remote code execution and private information access via crafted resource ids CVSS 3.1CRITICAL 9.8
- TI-2026-30410 CKAN: Unauthenticated SQL Injection and Authorization Bypass in `datastore_search_sql` CVSS 4.0HIGH 8.3
- TI-2023-08919 CKAN is vulnerable to session secret shared across instances using Docker images CVSS 3.1HIGH 8.6
- TI-2023-15972 Excessive permissions for ckan user CVSS 3.1HIGH 8.8
- TI-2022-21443 CKAN through 2.9.6 account takeovers by unauthenticated users when an existing user id is… CVSS 3.1HIGH 8.8
Sources
- CVE-2026-41255 · CVE Program
- CVE-2026-41255 · NVD
- FIRST EPSS
- GHSA-mcvf-jxcw-vj73 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences