CVE-2023-32321 CKAN remote code execution and private information access via crafted resource ids
Attackers can achieve remote code execution and access private data via crafted resource IDs and unsafe pickle loading in CKAN data portals.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2023-32321?
CVE-2023-32321 is a critical code injection vulnerability in ckan, published on 26 May 2023. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
CKAN is an open-source data management system for powering data hubs and data portals. Multiple vulnerabilities have been discovered in Ckan which may lead to remote code execution. An arbitrary file write in `resource_create` and `package_update` actions, using the `ResourceUploader` object. Also reachable via `package_create`, `package_revise`, and `package_patch` via calls to `package_update`. Remote code execution via unsafe pickle loading, via Beaker's session store when configured to use the file session store backend. Potential DOS due to lack of a length check on the resource id. Information disclosure: A user with permission to create a resource can access any other resource on the system if they know the id, even if they don't have access to it. Resource overwrite: A user with permission to create a resource can overwrite any resource if they know the id, even if they don't have access to it. A user with permissions to create or edit a dataset can upload a resource with a specially crafted id to write the uploaded file in an arbitrary location. This can be leveraged to Remote Code Execution via Beaker's insecure pickle loading. All the above listed vulnerabilities have been fixed in CKAN 2.9.9 and CKAN 2.10.1. Users are advised to upgrade. There are no known workarounds for these issues.
Weakness: CWE-20
Which versions are affected by CVE-2023-32321?
5 open source packages ship an affected version, including ckan. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
ckan PyPI | All versions | 2.9.9, 2.10.1 |
ckan PyPI | All versions | 2.9.9 |
ckan PyPI | All versions | 2.9.9 |
ckan PyPI | From 2.10.0 | 2.10.1 |
ckan PyPI | From 2.10.0 | 2.10.1 |
Products include Okfn Ckan.
How do I fix CVE-2023-32321?
Upgrade ckan to a fixed version for your release line: 2.9.9 or 2.10.1.
Upgrade, and never evaluate templates, expressions or code built from user input. More about Code injection.
Is CVE-2023-32321 being exploited?
There is no known exploitation of CVE-2023-32321 in the wild and no public exploit code.
Other vulnerabilities in ckan
- CVE-2023-32696 Excessive permissions for ckan user
- CVE-2022-43685 CKAN contains Improper Authentication leading to account takeover
- CVE-2023-22746 CKAN is vulnerable to session secret shared across instances using Docker images
- CVE-2026-42031 CKAN: Unauthenticated SQL Injection and Authorization Bypass in `datastore_search_sql`
- CVE-2024-41675 CKAN has a Cross-site Scripting vector in the Datatables view plugin
Sources
Also known as GHSA-446m-hmmm-hm8m, PYSEC-2026-312.