CVE-2021-21696 Agent-to-controller access control allowed writing to sensitive directory used by Jenkins Pipeline: Shared Groovy Libraries Plugin
Attackers controlling agent processes can replace trusted library code to execute unsandboxed code on the Jenkins controller.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2021-21696?
CVE-2021-21696 is a critical vulnerability in Jenkins Jenkins, published on 4 Nov 2021. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
Jenkins 2.318 and earlier, LTS 2.303.2 and earlier does not limit agent read/write access to the libs/ directory inside build directories when using the FilePath APIs, allowing attackers in control of agent processes to replace the code of a trusted library with a modified variant. This results in unsandboxed code execution in the Jenkins controller process.
Which versions are affected by CVE-2021-21696?
5 open source packages ship an affected version, including org.jenkins-ci.main:jenkins-core and jenkins. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
org.jenkins-ci.main:jenkins-core Maven | All versions | 2.303.3 |
org.jenkins-ci.main:jenkins-core Maven | All versions | 2.303.3 |
org.jenkins-ci.main:jenkins-core Maven | From 2.304 | 2.319 |
org.jenkins-ci.main:jenkins-core Maven | From 2.304 | 2.319 |
jenkins Bitnami | All versions | 2.318.1 |
Products include Jenkins Jenkins.
How do I fix CVE-2021-21696?
Upgrade org.jenkins-ci.main:jenkins-core to a fixed version for your release line: 2.303.3 or 2.319.
Is CVE-2021-21696 being exploited?
There is no known exploitation of CVE-2021-21696 in the wild and no public exploit code.
Other vulnerabilities in Jenkins Jenkins
- CVE-2024-23897 Jenkins Command Line Interface (CLI) Path Traversal
- CVE-2018-1000861 Jenkins Stapler Web Framework Deserialization of Untrusted Data
- CVE-2017-1000353 Jenkins Remote Code Execution
- CVE-2015-5317 Jenkins User Interface (UI) Information Disclosure
- CVE-2021-21690 Multiple vulnerabilities allow bypassing path filtering of agent-to-controller access control in Jenkins
Sources
Also known as BIT-jenkins-2021-21696, GHSA-c5r9-rx53-q3gf.