CVE-2026-31072

high

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

References

https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-31072.json

https://github.com/agronholm/apscheduler

https://gist.github.com/nedlir/11fb77f35a59cbba73392a086b02a9c6

https://bugzilla.redhat.com/show_bug.cgi?id=2479907

https://access.redhat.com/security/cve/CVE-2026-31072

Details

Source: Mitre, NVD

Published: 2026-05-19

Updated: 2026-06-30

Risk Information

CVSS v2

Base Score: 10

Vector: CVSS2#AV:N/AC:L/Au:N/C:C/I:C/A:C

Severity: Critical

CVSS v3

Base Score: 8.8

Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

Severity: High

EPSS

EPSS: 0.00061