Jenkins patches high-risk flaws that could open CI/CD servers to code execution and credential exposure


Jenkins has patched multiple security flaws in its core platform and the LoadNinja plugin, including one bug that can let attackers write files to arbitrary locations on the controller and another that can let attackers run CLI commands through a DNS rebinding attack under specific conditions. The fixes landed in Jenkins 2.555, Jenkins LTS 2.541.3, and LoadNinja Plugin 2.2.

The most dangerous issue is CVE-2026-33001. Jenkins says the flaw comes from unsafe handling of symbolic links during .tar and .tar.gz extraction, which can let crafted archives escape the intended extraction directory and write files elsewhere on the file system. On the controller, that can lead to code execution by dropping malicious files into JENKINS_HOME/init.groovy.d/ or JENKINS_HOME/plugins/.

The second core flaw, CVE-2026-33002, is serious but more conditional. Jenkins says it affects the CLI WebSocket endpoint’s origin validation and can be abused through DNS rebinding if the controller is reachable over plain HTTP, the CLI WebSocket endpoint is accessible, and anonymous users have meaningful permissions. In the worst case, attackers can reach Groovy CLI commands and gain arbitrary code execution.

What Jenkins disclosed

The Jenkins security advisory published on March 18, 2026 covers two core vulnerabilities and two LoadNinja plugin issues. Jenkins classifies the two core bugs as High severity and the two LoadNinja issues as Medium severity.

The advisory makes an important distinction between the two core bugs. CVE-2026-33001 can be exploited by attackers with Item/Configure permission or by attackers who can control agent processes, while CVE-2026-33002 depends on deployment choices such as plain HTTP and anonymous access. That means not every Jenkins controller faces the same immediate exposure level, even though both bugs deserve urgent attention.

The four vulnerabilities at a glance

CVEComponentSeverityWhat it can do
CVE-2026-33001Jenkins coreHighArbitrary file creation via unsafe tar extraction, potentially leading to controller code execution
CVE-2026-33002Jenkins coreHighDNS rebinding can bypass WebSocket CLI origin checks and execute CLI commands as anonymous user
CVE-2026-33003LoadNinja PluginMediumAPI keys stored unencrypted in job config.xml
CVE-2026-33004LoadNinja PluginMediumAPI keys shown without masking in job configuration UI

These details come directly from the Jenkins advisory and the NVD entries that now track the core and plugin issues.

Why CVE-2026-33001 matters most

Jenkins says a number of features and plugins rely on the affected archive extraction functionality, especially the “Archive the artifacts” post-build action and the archiveArtifacts and archive Pipeline steps when they use the standard artifact manager on the controller file system. That gives the flaw practical reach inside real CI/CD workflows, not just edge-case lab scenarios.

The impact also goes beyond a simple file write bug. If an attacker can place a malicious script in init.groovy.d or drop a rogue plugin into the Jenkins plugins directory, the controller can run attacker-controlled code. On a CI/CD server, that can create supply-chain risk because the controller may have access to source code, secrets, build agents, and release pipelines. The first part is directly documented by Jenkins, while the broader supply-chain risk is a grounded inference from Jenkins’ role in software delivery.

Why the WebSocket flaw is more conditional

The sample article overstates CVE-2026-33002 slightly by making it sound broadly exposed by default. Jenkins says exploitation requires all of the following: the controller must be accessible over plain HTTP, the CLI WebSocket endpoint must be reachable, and the attacker must abuse permissions available to the anonymous user after luring a victim to a malicious site that performs DNS rebinding.

That still makes the flaw dangerous. Jenkins says that when anonymous users have powerful permissions, including Groovy scripting rights, attackers can execute those commands and reach arbitrary code execution. When anonymous users have no permissions, the impact drops sharply and may be limited to the who-am-i CLI command.

LoadNinja plugin issues also need attention

The LoadNinja plugin problems are not remote code execution bugs, but they still matter because they expose secrets. Jenkins says LoadNinja Plugin 2.1 and earlier stored API keys unencrypted in job config.xml files and also failed to mask those keys in the job configuration form. Users with Item/Extended Read permission or file-system access to the controller could view them.

Jenkins fixed both issues in LoadNinja Plugin 2.2, which now stores the keys encrypted and masks them in the configuration form.

Affected and fixed versions

ProductAffected versionsFixed version
Jenkins weeklyUp to and including 2.5542.555
Jenkins LTSUp to and including 2.541.22.541.3
LoadNinja PluginUp to and including 2.12.2

Jenkins says all prior versions are considered affected unless otherwise indicated in the advisory.

What admins should do now

  • Upgrade Jenkins weekly to 2.555 or newer.
  • Upgrade Jenkins LTS to 2.541.3 or newer.
  • Upgrade LoadNinja Plugin to 2.2.
  • Remove anonymous permissions from the controller if you cannot patch immediately.
  • Make sure Jenkins is exposed only over HTTPS, not plain HTTP.
  • Review who has Item/Configure permission and who can influence agent processes. That step follows from Jenkins’ exploitation conditions for CVE-2026-33001.
  • Audit artifact archiving workflows and controller-side plugin changes for unusual activity. This recommendation is an inference based on the vulnerable extraction paths described by Jenkins.

FAQ

Which Jenkins flaw is most likely to lead to full controller compromise?

CVE-2026-33001 is the clearest path to controller compromise because Jenkins says it can allow crafted tar archives to write malicious scripts or plugins directly onto the controller.

Is the WebSocket bug automatically exploitable on every Jenkins server?

No. Jenkins says exploitation requires plain HTTP, an accessible CLI WebSocket endpoint, and useful anonymous permissions.

What versions fix the core Jenkins issues?

Jenkins says the fixes are in version 2.555 for the weekly release line and 2.541.3 for LTS.

What does LoadNinja Plugin 2.2 fix?

Jenkins says version 2.2 encrypts stored LoadNinja API keys and masks them in the job configuration form.

Readers help support VPNCentral. We may get a commission if you buy through our links. Tooltip Icon

Read our disclosure page to find out how can you help VPNCentral sustain the editorial team Read more

User forum

0 messages