Miggo Logo

CVE-2024-39459:
Secret file credentials stored unencrypted in rare cases by Plain Credentials Plugin

4.3

CVSS Score
3.1

Basic Information

EPSS Score
0.35061%
Published
6/26/2024
Updated
11/1/2024
KEV Status
No
Technology
TechnologyJava

Technical Details

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
Package NameEcosystemVulnerable VersionsFirst Patched Version
org.jenkins-ci.plugins:plain-credentialsmaven< 183.va183.va

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability stemmed from the file content decryption check during credential creation. The key change in the commit replaces SecretBytes.fromBytes() with fromRawBytes() in FileCredentialsImpl constructor. fromBytes() attempted to decrypt content, potentially misinterpreting raw data as encrypted secrets, leading to insecure storage. This function is directly responsible for handling credential data ingestion, making it the vulnerable point.

Vulnerable functions

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

WAF Protection Rules

WAF Rule

W**n *r**tin* s**r*t *il* *r***nti*ls Pl*in *r***nti*ls Plu*in ***.v****_***_****_* *n* **rli*r *tt*mpts to ***rypt t** *ont*nt o* t** *il* to ****k i* it *onstitut*s * v*li* *n*rypt** s**r*t. In r*r* **s*s t** *il* *ont*nt m*t***s t** *xp**t** *orm*

Reasoning

T** vuln*r**ility st*mm** *rom t** *il* *ont*nt ***ryption ****k *urin* *r***nti*l *r**tion. T** k*y ***n** in t** *ommit r*pl***s `S**r*t*yt*s.*rom*yt*s()` wit* `*romR*w*yt*s()` in `*il**r***nti*lsImpl` *onstru*tor. `*rom*yt*s()` *tt*mpt** to ***ryp