CVE-2021-21681:
Password stored in plain text by Jenkins Nomad Plugin
5.5
CVSS Score
3.1
Basic Information
CVE ID
GHSA ID
EPSS Score
0.29013%
CWE
Published
5/24/2022
Updated
10/27/2023
KEV Status
No
Technology
Java
Technical Details
CVSS Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
Package Name | Ecosystem | Vulnerable Versions | First Patched Version |
---|---|---|---|
org.jenkins-ci.plugins:nomad | maven | <= 0.7.4 | 0.7.5 |
Vulnerability Intelligence
Miggo AI
Root Cause Analysis
The vulnerability stemmed from two key aspects:
- NomadWorkerTemplate stored passwords as plaintext Strings (evidenced by field type change from String to Secret in the patch).
- NomadApi's buildDriverConfig method consumed these plaintext passwords without encryption (shown in the authConfig.put('password') line change from direct String access to Secret.getPlainText()).
The pre-patch version lacked Jenkins' Secret encryption mechanism for credential handling, making these functions directly responsible for the plaintext storage vulnerability. The commit diff confirms the security fix involved migrating to Secret type for password storage/retrieval.