Miggo Logo

CVE-2021-25967:
Cross-site Scripting in CKAN

5.4

CVSS Score
3.1

Basic Information

EPSS Score
0.43188%
Published
12/3/2021
Updated
9/13/2024
KEV Status
No
Technology
TechnologyPython

Technical Details

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
Package NameEcosystemVulnerable VersionsFirst Patched Version
ckanpip>= 2.9.0, < 2.10.02.10.0

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability stemmed from insufficient file type validation during profile picture uploads. The commit patching this vulnerability added a 'verify_type' method to check MIME types and content categories. The original 'upload' function in uploader.py (called during user/group creation in create.py) did not perform these checks in vulnerable versions, allowing SVG files with embedded scripts. The tests added in test_create.py demonstrate that non-image uploads were previously allowed without validation.

Vulnerable functions

Only Mi**o us*rs **n s** t*is s**tion

WAF Protection Rules

WAF Rule

In *K*N, v*rsions *.*.* to *.*.* *r* *****t** *y * stor** XSS vuln*r**ility vi* SV* *il* uplo** o* us*rs’ pro*il* pi*tur*. T*is *llows low privil**** *ppli**tion us*rs to stor* m*li*ious s*ripts in t**ir pro*il* pi*tur*. T**s* s*ripts *r* *x**ut** in

Reasoning

T** vuln*r**ility st*mm** *rom insu**i*i*nt *il* typ* v*li**tion *urin* pro*il* pi*tur* uplo**s. T** *ommit p*t**in* t*is vuln*r**ility ***** * 'v*ri*y_typ*' m*t*o* to ****k MIM* typ*s *n* *ont*nt **t**ori*s. T** ori*in*l 'uplo**' *un*tion in uplo***