Skip to main content
Mallory
HighPublic exploit

Jenkins config.xml deserialization leading to user impersonation and RCE

IdentifiersCVE-2026-53435CWE-502· Deserialization of Untrusted Data

CVE-2026-53435 is a deserialization vulnerability in Jenkins affecting Jenkins 2.567 and earlier and Jenkins LTS 2.555.2 and earlier. Jenkins can be induced to deserialize arbitrary types defined in Jenkins core or installed plugins from an attacker-controlled config.xml submission. According to the advisory, the deserialized object can then participate in HTTP request handling, creating a path from unsafe deserialization to request-flow hijacking. This enables an attacker to impersonate arbitrary Jenkins users and issue HTTP requests on their behalf. Because those requests can be made in the security context of highly privileged users, exploitation can reach the Script Console for arbitrary code execution and can also be used to read arbitrary files from the Jenkins controller. Jenkins tracks this issue as SECURITY-3707.

Share:
For your environment

Are you exposed to this one?

Mallory correlates every CVE against your assets, your vendors, and active adversary campaigns. Know which vulnerabilities matter for you, not just which ones are loud.

ANALYST BRIEF

Impact, mitigation & remediation

What it means. What to do now. Patch path, mitigations, and the assume-compromise checklist.

Impact

What an attacker gets, and what they’ve been doing with it.

Successful exploitation can result in full compromise of the Jenkins controller. An attacker can impersonate any user, perform authenticated actions by sending HTTP requests on that user's behalf, access the Script Console to execute arbitrary code, and read arbitrary files from the controller. In practice this yields high confidentiality, integrity, and availability impact and can also create downstream CI/CD and software supply-chain risk if the Jenkins controller is centrally trusted.

Mitigation

If you can’t patch tonight, do this now.

If immediate patching is not possible, restrict network access to the Jenkins controller to trusted administrators and automation only, minimize exposure of HTTP endpoints, and reduce the set of users able to submit or modify config.xml-related configuration. Closely audit user accounts, permission assignments, and Script Console activity for abuse. Because exploitation has been reported in the wild, temporary isolation of exposed controllers is advisable until patched. No complete workaround other than upgrading is provided in the advisory.

Remediation

Patch, then assume compromise.

Upgrade to Jenkins 2.568 or Jenkins LTS 2.555.3 or later, as these releases contain the vendor fix for SECURITY-3707 / CVE-2026-53435. All affected earlier releases should be considered vulnerable. If compromise is suspected, rotate credentials and secrets accessible to Jenkins, review administrative accounts and permissions, inspect Script Console usage and audit logs, and assess controller and pipeline integrity.
PUBLIC EXPLOITS

Exploits

1 valid exploit after Mallory filtered fakes, detection scripts, and README-only repos.

VALID 1 / 1 TOTALView more in app
CVE-2026-53435MaturityPoCVerified exploit

Repository contains a working Python proof-of-concept for CVE-2026-53435 against Jenkins, plus a self-contained Docker lab for vulnerable and patched instances. The main exploit file, exploit_cve_2026_53435_v2.py, authenticates to Jenkins with HTTP Basic Auth, optionally retrieves a CSRF crumb from /crumbIssuer/api/json, verifies identity via /whoAmI/api/json, and submits crafted XML to either /createView?name=<name> or /view/<name>/config.xml. The XML injects a hudson.Plugin$DummyImpl object into a ListView <properties> DescribableList using a pre-patch type-enforcement weakness. The injected object embeds baseResourceURL=file:/, and the exploit then triggers Stapler routing with GET /view/<name>/properties/0/<requested path> to return arbitrary controller-local file contents such as /etc/passwd. Exploit capability is authenticated arbitrary file read on the Jenkins controller. The README notes broader impact such as impersonation and Script Console RCE exists conceptually, but those chains are intentionally withheld and are not implemented in the analyzed exploit. Therefore this repository is a real exploit, not merely a detector, and its maturity is OPERATIONAL: it includes a concrete payload and end-to-end exploitation logic, but not a generalized framework. Repository structure: README.md documents the vulnerability, affected/fixed versions, usage, and validation against vulnerable 2.555.2 versus patched 2.555.3. exploit_cve_2026_53435_v2.py is the primary entry point and only active exploit code. The lab/ directory provides reproducible infrastructure: Dockerfile and docker-compose.yml spin up vulnerable Jenkins, patched Jenkins, and an OOB listener; init.groovy.d/01-setup.groovy provisions admin and lowpriv users with matrix-auth permissions; candidates.txt and lab/README.md describe additional lab-only discovery/canary workflows, but those referenced scripts are not present in this repository. Overall, the repo’s purpose is to demonstrate and reproduce authenticated Jenkins deserialization leading to arbitrary file read via malicious view configuration and routable core object injection.

AmesianXDisclosed Jun 12, 2026pythongroovywebnetwork
EXPOSURE SURFACE

Affected products & vendors

Products and vendors Mallory has correlated with this vulnerability. Open in Mallory to drill down to specific CPE configurations and version ranges.

VendorProductType
JenkinsJenkinsapplication

Vendor-confirmed product mapping. Mallory continuously reconciles this list against your asset inventory.

What this page doesn’t show

The version that knows your environment.

This page is what’s public. Mallory adds the parts that aren’t: which of your assets are affected, which adversaries are exploiting it right now, which detections to deploy, and what to do tonight.
Exposure mapping

Query your assets running an affected version, and investigate the blast radius.

Threat actor evidence1

Every observed campaign linking this CVE to a named adversary.

Associated malware

Malware families riding this exploit, with evidence and IOCs.

Detection signatures

YARA, Sigma, Snort, and vendor rules, auto-deployed to your SIEM.

Vendor-by-vendor mapping

Cross-references every affected SKU, including bundled OEM variants.

Social activity11

Community discussion across Reddit, Mastodon, and other social sources.