Description
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
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | jsonpickle | No fix yet | — |
| Debian 13 | jsonpickle | No fix yet | — |
| Debian 12 | jsonpickle | No fix yet | — |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| PyPI | jsonpickle | <= 1.4.2 | — | GHSA-j66q-qmrc-89rx |
| PyPI | jsonpickle | < 1.4.2 | 1.4.2 | PYSEC-2020-49 |
References
- https://github.com/j0lt-github/python-deserialization-attack-payload-generator
- https://versprite.com/blog/application-security/into-the-jar-jsonpickle-exploitation/
- https://github.com/jsonpickle/jsonpickle/issues/332
- https://gist.github.com/j0lt-github/bb543e77a1a10c33cb56cf23d0837874
- https://github.com/jsonpickle/jsonpickle/issues/332#issuecomment-747807494
- https://access.redhat.com/security/cve/CVE-2020-22083