CVE-2020-22083
jsonpickle unsafe deserialization
jsonpickle through 1.4.1 allows remote code execution during deserialization of a malicious payload through the decode() function. Note: It has been argued that this is expected and clearly documented behaviour. pickle is known to be capable of causing arbitrary code execution, and must not be used with un-trusted data
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- High
- Availability
- High
Exploit likelihood
What each source reports
NVD Score used
9.8
jsonpickle through 1.4.1 allows remote code execution during deserialization of a malicious payload through the decode() function. Note: It has been argued that this is expected and clearly documented behaviour. pickle is known to be capable of causing arbitrary code execution, and must not be used with un-trusted data
- Record
CVE-2020-22083- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - CVSS 2.0
- 7.5 High
AV:N/AC:L/Au:N/C:P/I:P/A:P - Weakness
- CWE-502
- Updated
- 2026-11-02
CVE List No score
jsonpickle through 1.4.1 allows remote code execution during deserialization of a malicious payload through the decode() function. Note: It has been argued that this is expected and clearly documented behaviour. pickle is known to be capable of causing arbitrary code execution, and must not be used with un-trusted data
- Record
CVE-2020-22083- Updated
- 2026-11-02
EUVDEUVD-2020-0089 No score
jsonpickle through 1.4.1 allows remote code execution during deserialization of a malicious payload through the decode() function. Note: It has been argued that this is expected and clearly documented behaviour. pickle is known to be capable of causing arbitrary code execution, and must not be used with un-trusted data
- Record
EUVD-2020-0089- Updated
- 2026-11-03
GitHub AdvisoriesGHSA-j66q-qmrc-89rx
9.3
jsonpickle unsafe deserialization
jsonpickle through 1.4.2 allows remote code execution during deserialization of a malicious payload through the decode() function. This CVE is disputed by the project author as intended functionality.
- Record
GHSA-j66q-qmrc-89rx- CVSS 4.0
- 9.3 Critical
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N - CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-502
- Updated
- 2026-11-02
OSV
9.8
jsonpickle through 1.4.1 allows remote code execution during deserialization of a malicious payload through the decode() function. Note: It has been argued that this is expected and clearly documented behaviour. pickle is known to be capable of causing arbitrary code execution, and must not be used with un-trusted data
- Record
CVE-2020-22083- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVDEBIAN-CVE-2020-22083
9.8
jsonpickle through 1.4.1 allows remote code execution during deserialization of a malicious payload through the decode() function. Note: It has been argued that this is expected and clearly documented behaviour. pickle is known to be capable of causing arbitrary code execution, and must not be used with un-trusted data
- Record
DEBIAN-CVE-2020-22083- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVGHSA-j66q-qmrc-89rx
9.3
jsonpickle unsafe deserialization
jsonpickle through 1.4.2 allows remote code execution during deserialization of a malicious payload through the decode() function. This CVE is disputed by the project author as intended functionality.
- Record
GHSA-j66q-qmrc-89rx- CVSS 4.0
- 9.3 Critical
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N - CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-502
- Updated
- 2026-11-02
OSVPYSEC-2020-49 No score
** DISPUTED ** jsonpickle through 1.4.1 allows remote code execution during deserialization of a malicious payload through the decode() function. Note: It has been argued that this is expected and clearly documented behaviour. pickle is known to be capable of causing arbitrary code execution, and must not be used with un-trusted data.
- Record
PYSEC-2020-49- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
jsonpicklePyPI |
through 1.4.2 | None known |
jsonpickleDebian:12 |
All versions, plus listed versions 3.0.0+dfsg1-13.0.2+dfsg-13.0.3+dfsg-13.0.4+dfsg-13.2.1+dfsg-1 Show 10 moreShow less3.2.2+dfsg-13.3.0+dfsg-13.4.1+dfsg-13.4.2+dfsg-14.0.0+dfsg-14.0.1+dfsg-14.0.2+dfsg-14.0.2+dfsg-24.0.2+dfsg-34.0.2+dfsg-4 |
None known |
jsonpickleDebian:13 |
All versions, plus listed versions 4.0.2+dfsg-24.0.2+dfsg-34.0.2+dfsg-4 |
None known |
jsonpickleDebian:14 |
All versions, plus listed versions 4.0.2+dfsg-24.0.2+dfsg-34.0.2+dfsg-4 |
None known |
jsonpicklePyPI |
through 1.4.2, plus listed versions 0.0.10.0.20.0.40.0.50.1.0 Show 25 moreShow less0.2.00.3.00.3.10.4.00.5.00.5.0-beta0.6.00.6.10.7.00.7.10.7.20.8.00.9.00.9.10.9.20.9.30.9.40.9.50.9.61.01.11.21.31.41.4.1 |
None known |
jsonpicklePyPI |
before 1.4.2, plus listed versions 0.0.10.0.20.0.40.0.50.1.0 Show 25 moreShow less0.2.00.3.00.3.10.4.00.5.00.5.0-beta0.6.00.6.10.7.00.7.10.7.20.8.00.9.00.9.10.9.20.9.30.9.40.9.50.9.61.01.11.21.31.41.4.1 |
1.4.2 |
History
| Recorded | Changed | Sources |
|---|---|---|
| facts | ||
| aliases | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2020-22083 is a critical vulnerability (CVSS 9.8) in Jsonpickle Project Jsonpickle, published December 17, 2020. Its validity is disputed. EPSS puts the chance of exploitation in the next 30 days at 6.62%, the 93rd percentile. Fixed in jsonpickle 1.4.2.
References
github.com/j0lt-github/python-deserialization-attack-payload-generator
versprite.com/blog/application-security/into-the-jar-jsonpickle-exploitation
github.com/jsonpickle/jsonpickle/issues/332
gist.github.com/j0lt-github/bb543e77a1a10c33cb56cf23d0837874
access.redhat.com/security/cve/CVE-2020-22083
nvd.nist.gov/vuln/detail/CVE-2020-22083