Miggo Logo

CVE-2021-21693: Multiple vulnerabilities allow bypassing path filtering of agent-to-controller access control in Jenkins

9.1

CVSS Score
3.1

Basic Information

EPSS Score
0.77409%
Published
5/24/2022
Updated
12/7/2023
KEV Status
No
Technology
TechnologyJava

Technical Details

CVSS Vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:H
Package NameEcosystemVulnerable VersionsFirst Patched Version
org.jenkins-ci.main:jenkins-coremaven>= 2.304, <= 2.3182.319
org.jenkins-ci.main:jenkins-coremaven< 2.303.32.303.3

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability (CVE-2021-21693) stems from improper authorization checks during temporary file/directory creation. The commit diff shows removal of deserialization guards (REJECT_LOCAL_CALLABLE_DESERIALIZATION and readResolve) for Mkdirs and Touch callables, which are executed when agents request file operations on the controller. Prior to the fix, these operations likely created files/directories first and then performed checks, violating the 'check-before-use' principle. The advisory explicitly cites SECURITY-2539, which addresses this flaw by enforcing pre-creation checks. The removed code suggests these callables were previously restricted but improperly validated during execution, leading to post-creation authorization bypasses.

Vulnerable functions

Only Mi**o us*rs **n s** t*is s**tion

WAF Protection Rules

WAF Rule

T** ***nt-to-*ontroll*r s**urity su*syst*m limits w*i** *il*s on t** J*nkins *ontroll*r **n ** ****ss** *y ***nt pro**ss*s. Multipl* vuln*r**iliti*s in t** *il* p*t* *ilt*rin* impl*m*nt*tion o* J*nkins *.*** *n* **rli*r, LTS *.***.* *n* **rli*r *llo

Reasoning

T** vuln*r**ility (*V*-****-*****) st*ms *rom improp*r *ut*oriz*tion ****ks *urin* t*mpor*ry *il*/*ir**tory *r**tion. T** *ommit *i** s*ows r*mov*l o* **s*ri*liz*tion *u*r*s (R*J**T_LO**L_**LL**L*_**S*RI*LIZ*TION *n* r***R*solv*) *or Mk*irs *n* Tou**