Miggo Logo

CVE-2025-47887: Jenkins Cadence vManager Plugin is Missing Permission Checks

4.3

CVSS Score
3.1

Basic Information

EPSS Score
0.08323%
Published
5/14/2025
Updated
5/16/2025
KEV Status
No
Technology
TechnologyJava

Technical Details

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N
Package NameEcosystemVulnerable VersionsFirst Patched Version
org.jenkins-ci.plugins:vmanager-pluginmaven< 4.0.1-288.v8804beaacb7f4.0.1-288.v8804b_ea_a_cb_7f

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability lies in several doTestConnection, doTestArchiveUser, and doTestExtraStaticAttr methods across different classes within the Jenkins Cadence vManager Plugin. These methods are typically used in Jenkins to validate form inputs in configuration pages. Before the patch, these methods would attempt to connect to a user-specified URL with user-specified credentials without checking if the current user had the necessary Item.CONFIGURE permissions. The patch (commit b08b571ebc4d5d6b4bc80e65e4ddf45760a32cca) consistently adds item.checkPermission(Item.CONFIGURE); to these methods. The absence of this check is the core of the vulnerability, as it allows users with only Overall/Read permission to trigger these connections. The identified functions are the exact methods where this permission check was missing and subsequently added. The names include the class and the inner DescriptorImpl class where these methods are typically defined for Jenkins UI interactions.

Vulnerable functions

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

WAF Protection Rules

WAF Rule

Missin* p*rmission ****ks in J*nkins ****n** vM*n***r Plu*in *.*.*-***.v*****_****_*_** *n* **rli*r *llows *tt**k*rs wit* Ov*r*ll/R*** p*rmission to *onn**t to *n *tt**k*r-sp**i*i** URL usin* *tt**k*r-sp**i*i** us*rn*m* *n* p*sswor*.

Reasoning

T** vuln*r**ility li*s in s*v*r*l `*oT*st*onn**tion`, `*oT*st*r**iv*Us*r`, *n* `*oT*st*xtr*St*ti**ttr` m*t*o*s **ross *i***r*nt *l*ss*s wit*in t** J*nkins ****n** vM*n***r Plu*in. T**s* m*t*o*s *r* typi**lly us** in J*nkins to v*li**t* *orm inputs in