Miggo Logo

CVE-2021-23338: qlib Deserialization of Untrusted Data vulnerability

6.6

CVSS Score
3.1

Basic Information

EPSS Score
0.92159%
Published
5/24/2022
Updated
10/14/2024
KEV Status
No
Technology
TechnologyPython

Technical Details

CVSS Vector
CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:H
Package NameEcosystemVulnerable VersionsFirst Patched Version
pyqlibpip< 0.7.00.7.0

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

  1. The vulnerability description explicitly states the workflow function in the CLI component uses unsafe YAML loading.
  2. The provided exploit demonstrates code execution via malicious YAML payload passed to cli.workflow().
  3. The CWE-502 (Deserialization of Untrusted Data) classification matches the unsafe yaml.load() pattern.
  4. PyYAML's yaml.load() without a SafeLoader is a well-known anti-pattern for deserialization vulnerabilities.
  5. The patched version (0.7.0) likely replaced yaml.load() with yaml.safe_load() or equivalent safe loading method.

Vulnerable functions

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

WAF Protection Rules

WAF Rule

T*is *****ts *ll v*rsions o* p**k*** qli*. T** work*low *un*tion in *li p*rt o* qli* w*s usin* *n uns*** Y*ML lo** *un*tion.

Reasoning

*. T** vuln*r**ility **s*ription *xpli*itly st*t*s t** work*low *un*tion in t** *LI *ompon*nt us*s uns*** Y*ML lo**in*. *. T** provi*** *xploit **monstr*t*s *o** *x**ution vi* m*li*ious Y*ML p*ylo** p*ss** to *li.work*low(). *. T** *W*-*** (**s*ri*li