CVE-2026-117612: Jenkins XStream deserialization filter bypass via resolves-to attribute

CVE-2026-117612 · Severity: info · Published 2026-10-28

Jenkins is an automation server used to build, test, and deploy software. A vulnerability in how Jenkins deserializes configuration data allows attackers with read permission and certain other permissions to execute arbitrary code on the Jenkins controller, potentially taking over the system and compromising the software build pipeline.

Technologies: Jenkins. Vendors: Jenkins.

Quick answers

Is CVE-2026-117612 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-117612 being exploited in the wild.
How severe is CVE-2026-117612?
Informational severity, published 28 October 2026.
Which products and versions are affected?
Jenkins 2.587 and earlier, 2.580.1 LTS and earlier.
Is there a fix for CVE-2026-117612?
Yes: fixed in Jenkins 2.588, LTS 2.580.2. Until then: Administrators can disable the new type permission system added in the fix by setting the Java system property hudson.util.XStream2.SUPPRESS_TYPE_PERMISSION to true if problems arise, though this is not recommended as it reduces security.</anigation> <parameter name="timeline">[{"kind":"disclosed","at":"2026-10-28"}] Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-117612 attacked?
It is attacked over the network, in a web application.
Am I affected by CVE-2026-117612?
Check whether you run Jenkins at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • Fixed in: Jenkins 2.588, LTS 2.580.2

Administrators can disable the new type permission system added in the fix by setting the Java system property hudson.util.XStream2.SUPPRESS_TYPE_PERMISSION to true if problems arise, though this is not recommended as it reduces security.</anigation> <parameter name="timeline">[{"kind":"disclosed","at":"2026-10-28"}]

Technical details

Jenkins uses XStream for deserializing configuration and build data, protected by a custom deserialization filter that restricts allowed types per JEP-200. The filter is not applied to classes referenced by the XStream `resolves-to` attribute, allowing attackers to instantiate arbitrary types and trigger code execution via `readResolve` methods. Exploitation requires Overall/Read permission plus either a user account or permissions to POST config.xml (e.g., Item/Configure).

Affected products

  • Jenkins Jenkins 2.587 and earlier, 2.580.1 LTS and earlier

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.