GHSA-gqvf-892r-vjm5 CVE-2020-7942
Improper Certificate Validation in Puppet
- Severity
- 6.5 / 10
- Medium · CVSS 3.1
- Exploit chance (EPSS)
- 0.80%
- Chance of exploitation in the next 30 days. Higher than 56.62% of scored vulnerabilities.
- Known exploited
- No
- Not in CISA's catalog
- Weakness
- CWE-295 Improper Certificate Validation
- Fix
6.13.0- Upgrade puppet to this version or later
Description
Previously, Puppet operated on the model that a node with a valid certificate was entitled to all information in the system and that a compromised certificate allowed access to everything in the infrastructure. When a node's catalog falls back to the default node, the catalog can be retrieved for a different node by modifying facts for the Puppet run. This issue can be mitigated by setting strict_hostname_checking = true in puppet.conf on your Puppet master. Puppet 6.13.0 changes the default behavior for strict_hostname_checking from false to true. It is recommended that Puppet Open Source and Puppet Enterprise users that are not upgrading still set strict_hostname_checking to true to ensure secure behavior.
Affected versions
RubyGems
How to fix
Move to the fixed version or later with your package manager, update the lockfile, and run your tests. If the package only arrives through another dependency, upgrade that dependency first. If none of its releases pulls a fixed version yet, force the version with your package manager's override.
puppet RubyGems → 6.13.0
- bundler
bundle update puppet # Gemfile: gem "puppet", ">= 6.13.0"
Severity breakdown
CVSS 3.1 6.5
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
- Attack vector
- Network
- Attack complexity
- Low
- Privileges required
- Low
- User interaction
- None
- Scope
- Unchanged
- Confidentiality
- High
- Integrity
- None
- Availability
- None
Weakness
CWE-295: Improper Certificate Validation
The product does not validate, or incorrectly validates, a certificate.
How to prevent it
- Architecture and Design, Implementation: Certificates should be carefully managed and checked to assure that data are encrypted with the intended owner's public key.
- Implementation: If certificate pinning is being used, ensure that all relevant properties of the certificate are fully validated before the certificate is pinned, including the hostname.
References
Advisories
Other links
Timeline
- Published
- Last updated by the source
- Latest EPSS score
Related advisories
| Advisory | Severity | Why it's related |
|---|---|---|
| GHSA-mpmx-gm5v-q789 Puppet uses predictable filenames, allowing arbitrary file overwrite | Medium | Also affects puppet |
| GHSA-9pvx-fwwh-w289 Puppet does not properly restrict access to node resources | Medium | Also affects puppet |
| GHSA-qh3g-27jf-3j54 Puppet allows local users to modify the permissions of arbitrary files | Medium | Also affects puppet |
| GHSA-8c56-v25w-f89c Puppet arbitrary file overwrite | Medium | Also affects puppet |
| GHSA-v58w-6xc2-w799 Puppet Denial of Service and Arbitrary File Write | Low | Also affects puppet |
| GHSA-c4mc-49hq-q275 Puppet uses predictable filenames, allowing arbitrary file overwrite | Medium | Also affects puppet |
| GHSA-6xxq-j39w-g3f6 Puppet Arbitrary Command Execution | Medium | Also affects puppet |
| GHSA-77hg-g8cc-5r37 Puppet Privilege Escallation | Medium | Also affects puppet |
MergeHarbor checks every repository's dependencies against this database, ranks what matters by exploitability and reachability, routes it to the owning team and opens the fix pull request.
Check your repos with MergeHarbor