CVE-2023-47630: Github.com/kyverno/kyverno Attacker Can Cause Kyverno User Vulnerability
HIGHCVE-2023-47630 is a HIGH (CVSS 7.1) attacker can cause kyverno user vulnerability (CWE-345: Insufficient Verification of Data Authenticity) affecting Github.com/kyverno/kyverno libraries in the Go ecosystem. The issue involves attacker can cause kyverno user to unintentionally consume insecure image. Remediation is available by upgrading affected packages to version 1.10.5.
CVE-2023-47630 at a Glance
Security Impact
CVSS: 7.1
The security impact metrics below are parsed directly from the CVSS v3.1 vector string (CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:H).
How to Fix CVE-2023-47630
To remediate this vulnerability, upgrade all affected Github.com/kyverno/kyverno dependencies to a patched release. Both direct and transitive dependencies should be checked, as frameworks or security libraries may pull in vulnerable versions transitively.
Upgrade github.com/kyverno/kyverno to 1.10.5
Run the following command in your project directory to verify that all resolved dependencies use the patched release:
inspect dependencies for github.com/kyverno/kyverno
How to Check if You Are Affected
To determine whether your application is affected by CVE-2023-47630, inspect your project dependencies for Github.com/kyverno/kyverno:
inspect dependencies for github.com/kyverno/kyverno
Analyze the terminal output to locate any version of Github.com/kyverno/kyverno in your dependency tree. If any resolved version matches the vulnerable ranges listed in the table below (for example, versions earlier than 1.10.5), your application is affected.
Note: Verify declared build manifests and deployed runtime container environments.
Technical Details
Vulnerability Mechanism & Technical Analysis
This vulnerability is classified under CWE-345: Insufficient Verification of Data Authenticity, where the product does not sufficiently verify the origin or authenticity of data, in a way that causes it to accept invalid data. In Github.com/kyverno/kyverno, software state validation or input boundaries are circumvented during processing. Review the official source advisory statement below for specific affected components, classes, and reproduction details.
Source Advisory Statement
CVE-2023-47630 Affected Github.com/kyverno/kyverno Versions
1 component(s)| Product / Package | Ecosystem | Affected Versions | Fixed Version |
|---|---|---|---|
|
github.com/kyverno/kyverno
|
Go |
< 1.10.5
|
1.10.5
|
References
Frequently Asked Questions
What is CVE-2023-47630?
Which Github.com/kyverno/kyverno versions are affected?
What version fixes CVE-2023-47630?
Is github.com/kyverno/kyverno affected?
What is the CVSS score of CVE-2023-47630?
What CWE is associated with CVE-2023-47630?
How can I check Go dependencies for CVE-2023-47630?
Machine-readable OSV JSON
OSV v1.5 Schema
{
"schema_version" : "1.4.0",
"id" : "GHSA-3hfq-cx9j-923w",
"modified" : "2023-11-14T22:20:09Z",
"published" : "2023-11-14T22:20:09Z",
"aliases" : [ "CVE-2023-47630" ],
"summary" : "Attacker can cause Kyverno user to unintentionally consume insecure image",
"details" : "An issue was found in Kyverno that allowed an attacker to control the digest of images used by Kyverno users. The issue would require the attacker to compromise the registry that the Kyverno fetch their images from. The attacker could then return a vulnerable image to the the user and leverage that to further escalate their position. As such, the attacker would need to know which images the Kyverno user consumes and know of one of multiple exploitable vulnerabilities in previous digests of the images. Alternatively, if the attacker has compromised the registry, they could craft a malicious image with a different digest with intentionally placed vulnerabilities and deliver the image to the user. \n\nAn attacker was not be able to control other parameters of the image than the digest by exploiting this vulnerability.\n\nUsers pulling their images from trusted registries are not impacted by this vulnerability. There is no evidence of this being exploited in the wild.\n\nThe issue has been patched in 1.11.0. \n\nThe vulnerability was found during an ongoing security audit of Kyverno conducted by Ada Logics, facilitated by OSTIF and funded by the CNCF.\n\nMembers of the community have raised concerns over the similarity between this vulnerability and the one identified with CVE-2023-46737; They are two different issues with two different root causes and different levels of impact. Some differences are:\n\n- The current advisory (GHSA-3hfq-cx9j-923w) has its root cause in Kyverno whereas the root cause of CVE-2023-46737 is in Cosigns code base. \n- The impact of the current advisory (GHSA-3hfq-cx9j-923w) is that an attacker can trick Kyverno into consuming a different image than the one the user requested; The impact of CVE-2023-46737 is an endless data attack resulting in a denial-of-service.\n- The fix of the current advisory (GHSA-3hfq-cx9j-923w) does not result in users being secure from CVE-2023-46737 and vice versa.",
"severity" : [ {
"type" : "CVSS_V3",
"score" : "CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:H"
} ],
"affected" : [ {
"package" : {
"ecosystem" : "Go",
"name" : "github.com/kyverno/kyverno"
},
"ranges" : [ {
"type" : "ECOSYSTEM",
"events" : [ {
"introduced" : "0"
}, {
"fixed" : "1.10.5"
} ]
} ]
} ],
"references" : [ {
"type" : "WEB",
"url" : "https://github.com/kyverno/kyverno/security/advisories/GHSA-3hfq-cx9j-923w"
}, {
"type" : "ADVISORY",
"url" : "https://nvd.nist.gov/vuln/detail/CVE-2023-47630"
}, {
"type" : "PACKAGE",
"url" : "https://github.com/kyverno/kyverno"
}, {
"type" : "WEB",
"url" : "https://github.com/kyverno/kyverno/releases/tag/v1.11.0"
} ],
"database_specific" : {
"cwe_ids" : [ "CWE-200", "CWE-345" ],
"severity" : "HIGH",
"github_reviewed" : true,
"github_reviewed_at" : "2023-11-14T22:20:09Z",
"nvd_published_at" : "2023-11-14T21:15:13Z"
}
}