Miggo Logo

CVE-2024-9701:
Kedro deserialization vulnerability

9.8

CVSS Score
3.0

Basic Information

EPSS Score
0.54977%
Published
3/20/2025
Updated
3/21/2025
KEV Status
No
Technology
TechnologyPython

Technical Details

CVSS Vector
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Package NameEcosystemVulnerable VersionsFirst Patched Version
kedropip

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability stems from ShelveStore's use of Python's shelve module which relies on insecure pickle serialization. Both read() and save() methods interact directly with shelve.open() without any validation or safe serialization protocol. The attack vector involves tampering with shelve-stored session data, which when deserialized via ShelveStore.read() would execute arbitrary code. The complete removal of ShelveStore in the patch confirms these functions were the vulnerability source.

Vulnerable functions

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

WAF Protection Rules

WAF Rule

* R*mot* *o** *x**ution (R**) vuln*r**ility **s ***n i**nti*i** in t** K**ro S**lv*Stor* *l*ss (v*rsion *.**.*). T*is vuln*r**ility *llows *n *tt**k*r to *x**ut* *r*itr*ry Pyt*on *o** vi* **s*ri*liz*tion o* m*li*ious p*ylo**s, pot*nti*lly l***in* to

Reasoning

T** vuln*r**ility st*ms *rom `S**lv*Stor*`'s us* o* Pyt*on's `s**lv*` mo*ul* w*i** r*li*s on ins**ur* `pi*kl*` s*ri*liz*tion. *ot* `r***()` *n* `s*v*()` m*t*o*s int*r**t *ir**tly wit* `s**lv*.op*n()` wit*out *ny v*li**tion or s*** s*ri*liz*tion proto