CVE-2021-47952 python jsonpickle 2.0.0 Remote Code Execution via py/repr

Critical 9.3 Published Updated

Attackers can execute arbitrary Python code by sending malicious JSON payloads to applications using the jsonpickle library for deserialization.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
None listed

What is CVE-2021-47952?

CVE-2021-47952 is a critical unsafe deserialization vulnerability in python jsonpickle, published on 16 May 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

python jsonpickle 2.0.0 contains a remote code execution vulnerability that allows attackers to execute arbitrary Python commands by deserializing malicious JSON payloads containing py/repr objects. Attackers can craft JSON strings with py/repr directives that invoke the eval function during deserialization to execute arbitrary code.

Weakness: CWE-502, CWE-94

Which versions are affected by CVE-2021-47952?

How do I fix CVE-2021-47952?

No fix has been published for CVE-2021-47952 yet. Limit exposure of the affected software until one is available.

Upgrade, and only deserialise data from trusted sources or with an allow-list of types. More about Unsafe deserialization.

Is CVE-2021-47952 being exploited?

It is not confirmed as exploited in the wild, but public exploit code for CVE-2021-47952 exists.

Sources

Also known as GHSA-gv3j-fjgf-469v, UBUNTU-CVE-2021-47952.

Is CVE-2021-47952 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free