CVE-2020-15187
In Helm before versions 2.16.11 and 3.3.2, a Helm plugin can contain duplicates of the same entry, with the last one always used. If a plugin is compromised, this lowers the level of access that an attacker needs to modify a plugin's install hooks, causing a local execution attack. To perform this attack, an attacker must have write access to the git repository or plugin archive (.tgz) while being downloaded (which can occur during a MITM attack on a non-SSL connection). This issue has been patched in Helm 2.16.11 and Helm 3.3.2. As a possible workaround make sure to install plugins using a secure connection protocol like SSL.
CVSS
- Version: 3.1
- Vector: CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:L/I:L/A:L
- Base score: 4.7
Exploitation probability (EPSS)
- Probability of exploitation in the next 30 days: 1.52%
- Percentile among all scored CVEs: 74
- Score date: 10/6/2026
EPSS (Exploit Prediction Scoring System, FIRST) estimates how likely a vulnerability is to be exploited in the wild within 30 days. It complements CVSS (impact) and CISA KEV (confirmed exploitation).
Affected technologies (1)
CWEs
- CWE-74, CWE-694
- NVD-CWE-Other
References
- https://github.com/helm/helm/commit/6aab63765f99050b115f0aec3d6350c85e8da946
- https://github.com/helm/helm/commit/ac7c07c37d87e09797f714fb57aa5e9cb99d9450
- https://github.com/helm/helm/commit/b0296c0522e837d65f944beefa3fb64fd08ac304
- https://github.com/helm/helm/commit/c8d6b01d72c9604e43ee70d0d78fadd54c2d8499
- https://github.com/helm/helm/commit/d9ef5ce8bad512e325390c0011be1244b8380e4b
- https://github.com/helm/helm/commit/f2ede29480b507b7d8bb152dd8b6b86248b00658
- https://github.com/helm/helm/security/advisories/GHSA-c52f-pq47-2r9j
- https://github.com/helm/helm/commit/d9ef5ce8bad512e325390c0011be1244b8380e4b
- https://github.com/helm/helm/security/advisories/GHSA-c52f-pq47-2r9j
Raw JSON (NVD)
Show
{
"id": "CVE-2020-15187",
"cveTags": [],
"metrics": {
"cvssMetricV2": [
{
"type": "Primary",
"source": "nvd@nist.gov",
"cvssData": {
"version": "2.0",
"baseScore": 6.5,
"accessVector": "NETWORK",
"vectorString": "AV:N/AC:L/Au:S/C:P/I:P/A:P",
"authentication": "SINGLE",
"integrityImpact": "PARTIAL",
"accessComplexity": "LOW",
"availabilityImpact": "PARTIAL",
"confidentialityImpact": "PARTIAL"
},
"acInsufInfo": false,
"impactScore": 6.4,
"baseSeverity": "MEDIUM",
"obtainAllPrivilege": false,
"exploitabilityScore": 8,
"obtainUserPrivilege": false,
"obtainOtherPrivilege": false,
"userInteractionRequired": false
}
],
"cvssMetricV31": [
{
"type": "Secondary",
"source": "security-advisories@github.com",
"cvssData": {
"scope": "CHANGED",
"version": "3.1",
"baseScore": 3,
"attackVector": "NETWORK",
"baseSeverity": "LOW",
"vectorString": "CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:N/I:L/A:N",
"integrityImpact": "LOW",
"userInteraction": "REQUIRED",
"attackComplexity": "HIGH",
"availabilityImpact": "NONE",
"privilegesRequired": "LOW",
"confidentialityImpact": "NONE"
},
"impactScore": 1.4,
"exploitabilityScore": 1.3
},
{
"type": "Primary",
"source": "nvd@nist.gov",
"cvssData": {
"scope": "UNCHANGED",
"version": "3.1",
"baseScore": 4.7,
"attackVector": "NETWORK",
"baseSeverity": "MEDIUM",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:L/I:L/A:L",
"integrityImpact": "LOW",
"userInteraction": "NONE",
"attackComplexity": "LOW",
"availabilityImpact": "LOW",
"privilegesRequired": "HIGH",
"confidentialityImpact": "LOW"
},
"impactScore": 3.4,
"exploitabilityScore": 1.2
}
]
},
"affected": [
{
"source": "security-advisories@github.com",
"affectedData": [
{
"vendor": "helm",
"product": "helm",
"versions": [
{
"status": "affected",
"version": ">= 2.0.0, < 2.16.11"
},
{
"status": "affected",
"version": ">= 3.0.0, < 3.3.2"
}
]
}
]
}
],
"published": "2020-09-17T22:15:12.647",
"references": [
{
"url": "https://github.com/helm/helm/commit/6aab63765f99050b115f0aec3d6350c85e8da946",
"source": "security-advisories@github.com"
},
{
"url": "https://github.com/helm/helm/commit/ac7c07c37d87e09797f714fb57aa5e9cb99d9450",
"source": "security-advisories@github.com"
},
{
"url": "https://github.com/helm/helm/commit/b0296c0522e837d65f944beefa3fb64fd08ac304",
"source": "security-advisories@github.com"
},
{
"url": "https://github.com/helm/helm/commit/c8d6b01d72c9604e43ee70d0d78fadd54c2d8499",
"source": "security-advisories@github.com"
},
{
"url": "https://github.com/helm/helm/commit/d9ef5ce8bad512e325390c0011be1244b8380e4b",
"tags": [
"Patch",
"Third Party Advisory"
],
"source": "security-advisories@github.com"
},
{
"url": "https://github.com/helm/helm/commit/f2ede29480b507b7d8bb152dd8b6b86248b00658",
"source": "security-advisories@github.com"
},
{
"url": "https://github.com/helm/helm/security/advisories/GHSA-c52f-pq47-2r9j",
"tags": [
"Third Party Advisory"
],
"source": "security-advisories@github.com"
},
{
"url": "https://github.com/helm/helm/commit/d9ef5ce8bad512e325390c0011be1244b8380e4b",
"tags": [
"Patch",
"Third Party Advisory"
],
"source": "af854a3a-2127-422b-91ae-364da2661108"
},
{
"url": "https://github.com/helm/helm/security/advisories/GHSA-c52f-pq47-2r9j",
"tags": [
"Third Party Advisory"
],
"source": "af854a3a-2127-422b-91ae-364da2661108"
}
],
"vulnStatus": "Modified",
"weaknesses": [
{
"type": "Secondary",
"source": "security-advisories@github.com",
"description": [
{
"lang": "en",
"value": "CWE-74"
},
{
"lang": "en",
"value": "CWE-694"
}
]
},
{
"type": "Primary",
"source": "nvd@nist.gov",
"description": [
{
"lang": "en",
"value": "NVD-CWE-Other"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "In Helm before versions 2.16.11 and 3.3.2, a Helm plugin can contain duplicates of the same entry, with the last one always used. If a plugin is compromised, this lowers the level of access that an attacker needs to modify a plugin's install hooks, causing a local execution attack.\nTo perform this attack, an attacker must have write access to the git repository or plugin archive (.tgz) while being downloaded (which can occur during a MITM attack on a non-SSL connection). This issue has been patched in Helm 2.16.11 and Helm 3.3.2.\nAs a possible workaround make sure to install plugins using a secure connection protocol like SSL."
},
{
"lang": "es",
"value": "En Helm versiones anteriores a 2.16.11 y 3.3.2, un plugin de Helm puede contener duplicados de la misma entrada, y siempre se usa la última. Si un plugin está comprometido, esto reduce el nivel de acceso que un atacante necesita para modificar los hooks de instalación de un plugin, causando un ataque de ejecución local. Para llevar a cabo este ataque, un atacante necesita tener acceso de escritura al repositorio de git o al archivo de plugins (.tgz) mientras está siendo descargado (lo que puede ocurrir durante un ataque de tipo MITM en una conexión no SSL). Este problema ha sido corregido en Helm versión 2.16.11 y Helm versión 3.3.2. Como posible solución, asegúrese de instalar plugins usando un protocolo de conexión seguro como SSL"
}
],
"lastModified": "2026-06-17T02:56:13.427",
"configurations": [
{
"nodes": [
{
"negate": false,
"cpeMatch": [
{
"criteria": "cpe:2.3:a:helm:helm:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "455BCCE5-1D43-4E59-9591-E84B52DAAF0B",
"versionEndExcluding": "2.16.11",
"versionStartIncluding": "2.0.0"
},
{
"criteria": "cpe:2.3:a:helm:helm:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "B462D769-3FC0-4079-8B48-863F013662EF",
"versionEndExcluding": "3.3.2",
"versionStartIncluding": "3.0.0"
}
],
"operator": "OR"
}
]
}
],
"sourceIdentifier": "security-advisories@github.com"
}