CVE-2026-31072
critical · 9.8The 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
9.8
CVSS
0.8%
EPSS (exploit prob.)
55th
EPSS percentile
2026-05-19
Published
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Weaknesses
CWE-502
References
- https://gist.github.com/nedlir/11fb77f35a59cbba73392a086b02a9c6
- https://github.com/agronholm/apscheduler
- https://access.redhat.com/security/cve/CVE-2026-31072
- https://bugzilla.redhat.com/show_bug.cgi?id=2479907
- https://gist.github.com/nedlir/11fb77f35a59cbba73392a086b02a9c6
- https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-31072.json
Query this programmatically:
curl https://evil-db.io/api/v1/cve/CVE-2026-31072