CVE-2020-22083

jsonpickle through 1.4.1 allows remote code execution during deserialization of a malicious payload through the decode() function

published December 17, 2020

CVSS
—
EPSS
6%
Percentile
93.7
In the wild
Unconfirmed
What it is

⚠️ A crafty payload can unleash chaos with a seemingly innocent call! The jsonpickle library up to version 1.4.1 has a deserialization vulnerability that allows remote code execution through the decode() function. 🔥 Think of it like a restaurant taking a delivery order without checking what's inside the package. If the chef accepts and serves a dish they’ve never seen before, it could lead to a disaster in the kitchen! An attacker could send a malicious payload that, when decoded, executes any code they want on your server. This means they could potentially gain unauthorized access to sensitive data, manipulate your applications, or wreak havoc on your entire system!

Put simply

Think of it like a restaurant taking a delivery order without checking what's inside the package. If the chef accepts and serves a dish they’ve never seen before, it could lead to a disaster in the kitchen! This vulnerability arises from the use of jsonpickle's decode() function that performs deserialization on untrusted data, which is inherently risky due to python's pickle mechanism allowing arbitrary code execution.

What to do

An attacker could send a malicious payload that, when decoded, executes any code they want on your server. This means they could potentially gain unauthorized access to sensitive data, manipulate your applications, or wreak havoc on your entire system! To protect yourself, upgrade to jsonpickle version 2.0.0 or later, where this issue is resolved. Always validate and sanitize any data before processing it to minimize risks associated with deserialization. 🚨 You've got this! With these steps, you’ll ensure your application remains secure and resilient. 🛡️

The record
Technical detail
CVSS
Not scored
CVSS v4.0
Not supplied
EPSS
0.06495 · 93.7th percentile
Published
2020-12-17T15:15Z
EPSS history
Timeline
  • 17 DEC 15:15Z
    jsonpickle through 1.4.1 allows remote code execution during deserialization of a malicious payload through the decode() function
    cvelistv5