CVE-2026-31072GHSA-9cfw-f3f9-7mm7PYSEC-2026-282
APScheduler's JSONSerializer and CBORSerializer are vulnerable to Remote Code Execution (RCE) via Insecure Deserialization
n/a apschedulerpipLibraries & packages
CVSS
9.8CriticalExploitationPublic exploit codeCISA's assessment says proof of concept code is public, assessed 20 May 2026. Not in the KEV catalogCISA via CVE List
Exploit odds (EPSS)0.81%Chance of exploitation activity in the next 30 days, higher than 56% of CVEs. Scored 27 Oct 2026FIRST EPSS
Fixed inNone listedNo source names a fixed version. Check the vendor advisory below
What fixes it
No source in this snapshot names a fixed version. The vendor advisories under References are the place to check.
Description
The JSONSerializer and CBORSerializer in APScheduler (all versions including 3.10.x and 4.0.0a5) are vulnerable to Remote Code Execution (RCE) via Insecure Deserialization. The unmarshal_object function allows for arbitrary class instantiation and state injection by dynamically importing modules and calling __setstate__ on any class available in the Python environment. An attacker can exploit this by submitting a specially crafted JSON or CBOR payload to an application using these serializers
Text from CVE List
Affected versions 9
- apscheduler, pip>= 4.0.0a1, <= 4.0.0a6GitHub
- n/aaffected: n/aCVE List
- apscheduler, PyPIfrom 4.0.0a1, through 4.0.0a6OSV
- apscheduler, PyPI4.0.0a1OSV
- apscheduler, PyPI4.0.0a2OSV
- apscheduler, PyPI4.0.0a3OSV
- apscheduler, PyPI4.0.0a4OSV
- apscheduler, PyPI4.0.0a5OSV
- apscheduler, PyPI4.0.0a6OSV
References 9
- access.redhat.com/security/cve/CVE-2026-31072Advisoryvia CVE List
- github.com/pypa/advisory-database/tree/main/vulns/apscheduler/PYSEC-2026-282.yamlAdvisoryvia GitHub
- security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-31072.jsonAdvisoryvia CVE List
- github.com/advisories/GHSA-9cfw-f3f9-7mm7Advisoryvia GitHub
- gist.github.com/nedlir/11fb77f35a59cbba73392a086b02a9c6Exploitvia CVE List
- nvd.nist.gov/vuln/detail/CVE-2026-31072Referencevia GitHub
- bugzilla.redhat.com/show_bug.cgi?id=2479907Referencevia CVE List
- pypi.org/project/apschedulerReferencevia GitHub
- github.com/agronholm/apschedulerReferencevia CVE List