CVE-2021-21686: Multiple vulnerabilities allow bypassing path filtering of agent-to-controller access control in Jenkins
9.1
CVSS Score
3.1
Basic Information
CVE ID
GHSA ID
EPSS Score
0.43014%
CWE
Published
5/24/2022
Updated
12/7/2023
KEV Status
No
Technology
Java
Technical Details
CVSS Vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:H
Package Name | Ecosystem | Vulnerable Versions | First Patched Version |
---|---|---|---|
org.jenkins-ci.main:jenkins-core | maven | < 2.303.2 | 2.303.3 |
org.jenkins-ci.main:jenkins-core | maven | >= 2.304, <= 2.318 | 2.319 |
Vulnerability Intelligence
Miggo AI
Root Cause Analysis
The vulnerability (CVE-2021-21686) stems from improper path canonicalization in Jenkins' agent-to-controller file access controls. The provided commit diffs and advisory indicate that path filters did not resolve symbolic links, allowing traversal. Key functions like SoloFilePathFilter.normalize
(using non-canonical paths), FilePathRuleConfig.checkFileAccess
(using raw paths), and SoloFilePathFilter.mkdirs
(incomplete parent checks) were modified in fixes to enforce canonicalization. These functions directly handled path validation and were the focus of security patches, confirming their role in the vulnerability.