CVE-2025-24376
The kubewarden-controller AdmissionPolicy and AdmissionPolicyGroup policies can be used to alter PolicyReport resources
kubewarden-controller is a Kubernetes controller that allows you to dynamically register Kubewarden admission policies. By design, AdmissionPolicy and AdmissionPolicyGroup can evaluate only namespaced resources. The resources to be evaluated are determined by the rules provided by the user when defining the policy. There might be Kubernetes namespaced resources that should not be validated by AdmissionPolicy and by the AdmissionPolicyGroup policies because of their sensitive nature. For example, PolicyReport are namespaced resources that contain the list of non compliant objects found inside of a namespace. An attacker can use either an AdmissionPolicy or an AdmissionPolicyGroup to prevent the creation and update of PolicyReport objects to hide non-compliant resources. Moreover, the same attacker might use a mutating AdmissionPolicy to alter the contents of the PolicyReport created inside of the namespace. Starting from the 1.21.0 release, the validation rules applied to AdmissionPolicy and AdmissionPolicyGroup have been tightened to prevent them from validating sensitive types of namespaced resources.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- None
- Integrity
- Low
- Availability
- Low
Exploit likelihood
What each source reports
CVE List Score used
6.5
The kubewarden-controller AdmissionPolicy and AdmissionPolicyGroup policies can be used to alter PolicyReport resources
kubewarden-controller is a Kubernetes controller that allows you to dynamically register Kubewarden admission policies. By design, AdmissionPolicy and AdmissionPolicyGroup can evaluate only namespaced resources. The resources to be evaluated are determined by the rules provided by the user when defining the policy. There might be Kubernetes namespaced resources that should not be validated by AdmissionPolicy and by the AdmissionPolicyGroup policies because of their sensitive nature. For example, PolicyReport are namespaced resources that contain the list of non compliant objects found inside of a namespace. An attacker can use either an AdmissionPolicy or an AdmissionPolicyGroup to prevent the creation and update of PolicyReport objects to hide non-compliant resources. Moreover, the same attacker might use a mutating AdmissionPolicy to alter the contents of the PolicyReport created inside of the namespace. Starting from the 1.21.0 release, the validation rules applied to AdmissionPolicy and AdmissionPolicyGroup have been tightened to prevent them from validating sensitive types of namespaced resources.
- Record
CVE-2025-24376- CVSS 3.1
- 6.5 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:L - Weakness
- CWE-285, CWE-155
- Updated
- 2026-11-02
EUVDEUVD-2025-0156
6.5
kubewarden-controller is a Kubernetes controller that allows you to dynamically register Kubewarden admission policies. By design, AdmissionPolicy and AdmissionPolicyGroup can evaluate only namespaced resources. The resources to be evaluated are determined by the rules provided by the user when defining the policy. There might be Kubernetes namespaced resources that should not be validated by AdmissionPolicy and by the AdmissionPolicyGroup policies because of their sensitive nature. For example, PolicyReport are namespaced resources that contain the list of non compliant objects found inside of a namespace. An attacker can use either an AdmissionPolicy or an AdmissionPolicyGroup to prevent the creation and update of PolicyReport objects to hide non-compliant resources. Moreover, the same attacker might use a mutating AdmissionPolicy to alter the contents of the PolicyReport created inside of the namespace. Starting from the 1.21.0 release, the validation rules applied to AdmissionPolicy and AdmissionPolicyGroup have been tightened to prevent them from validating sensitive types of namespaced resources.
- Record
EUVD-2025-0156- CVSS 3.1
- 6.5 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:L - Updated
- 2026-11-03
GitHub AdvisoriesGHSA-fc89-jghx-8pvg
6.5
KubeWarden's AdmissionPolicy and AdmissionPolicyGroup policies can be used to alter PolicyReport resources
Impact
By design, AdmissionPolicy and AdmissionPolicyGroup can evaluate only namespaced resources. The resources to be evaluated are determined by the rules provided by the user when defining the policy. There might be Kubernetes namespaced resources that should not be validated by AdmissionPolicy and by the AdmissionPolicyGroup policies because of their sensitive nature. For example, PolicyReport are namespaced resources that contain the list of non compliant objects found inside of a namespace. See this section of Kubewarden’s documentation for more details about PolicyReport resources. An attacker can use either an AdmissionPolicy or an AdmissionPolicyGroup to prevent the creation and update of PolicyReport objects to hide non-compliant resources. Moreover, the same attacker might use a mutating AdmissionPolicy to alter the contents of the PolicyReport created inside of the namespace.
Patches
Starting from the 1.21.0 release, the validation rules applied to AdmissionPolicy and AdmissionPolicyGroup have been tightened to prevent them from validating sensitive types of namespaced resources. The new validation will also restrict the usage of wildcards when defining apiGroups and resources rules for AdmissionPolicy and AdmissionPolicyGroup objects.
Workarounds
On clusters running Kubewarden < 1.21.0, the following Kubewarden policy can be applied to prevent the creation of AdmissionPolicy and AdmissionPolicyGroup resources that interact with PolicyReport resources:
apiVersion: policies.kubewarden.io/v1
kind: ClusterAdmissionPolicy
metadata:
name: "deny-interaction-with-policyreport"
spec:
module: registry://ghcr.io/kubewarden/policies/cel-policy:latest
settings:
variables:
- name: hasWildcardInsideOfApiGroup
expression: "object.spec.rules.exists(r, r.apiGroups.exists(ag, ag == '*'))"
- name: hasWildcardInsideOfResources
expression: "object.spec.rules.exists(r, r.resources.exists(ag, ag == '*' || ag == '*/*' || ag == 'policyreports/*'))"
- name: dealsWithPolicyReportApiGroup
expression: "object.spec.rules.exists(r, r.apiGroups.exists(ag, ag == 'wgpolicyk8s.io'))"
- name: dealsWithPolicyReportResource
expression: "object.spec.rules.exists(r, r.resources.exists(ag, ag == 'policyreports' || ag == 'policyreports/'))"
- name: isPendingDeletion
expression: "has(object.metadata.deletionTimestamp)"
validations:
- expression: |
!( variables.hasWildcardInsideOfApiGroup ||
variables.hasWildcardInsideOfResources ||
variables.dealsWithPolicyReportResource ||
variables.dealsWithPolicyReportApiGroup
) || variables.isPendingDeletion
message: "cannot target PolicyReport resources or use wildcards in apiGroups or resources"
rules:
- apiGroups: ["policies.kubewarden.io"]
apiVersions: ["v1"]
operations: ["CREATE", "UPDATE"]
resources: ["admissionpolicies", "admissionpolicygroups"]
mutating: false
backgroundAudit: true
For more information
If you have any questions or comments about this advisory you can contact the Kubewarden team using the procedures described under the “security disclosure“ guidelines of the Kubewarden project.
- Record
GHSA-fc89-jghx-8pvg- CVSS 3.1
- 6.5 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:L - Weakness
- CWE-155
- Updated
- 2026-11-02
NVD
6.5
kubewarden-controller is a Kubernetes controller that allows you to dynamically register Kubewarden admission policies. By design, AdmissionPolicy and AdmissionPolicyGroup can evaluate only namespaced resources. The resources to be evaluated are determined by the rules provided by the user when defining the policy. There might be Kubernetes namespaced resources that should not be validated by AdmissionPolicy and by the AdmissionPolicyGroup policies because of their sensitive nature. For example, PolicyReport are namespaced resources that contain the list of non compliant objects found inside of a namespace. An attacker can use either an AdmissionPolicy or an AdmissionPolicyGroup to prevent the creation and update of PolicyReport objects to hide non-compliant resources. Moreover, the same attacker might use a mutating AdmissionPolicy to alter the contents of the PolicyReport created inside of the namespace. Starting from the 1.21.0 release, the validation rules applied to AdmissionPolicy and AdmissionPolicyGroup have been tightened to prevent them from validating sensitive types of namespaced resources.
- Record
CVE-2025-24376- CVSS 3.1
- 6.5 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:L - Weakness
- CWE-155, CWE-285
- Updated
- 2026-11-02
OSV
6.5
The kubewarden-controller AdmissionPolicy and AdmissionPolicyGroup policies can be used to alter PolicyReport resources
kubewarden-controller is a Kubernetes controller that allows you to dynamically register Kubewarden admission policies. By design, AdmissionPolicy and AdmissionPolicyGroup can evaluate only namespaced resources. The resources to be evaluated are determined by the rules provided by the user when defining the policy. There might be Kubernetes namespaced resources that should not be validated by AdmissionPolicy and by the AdmissionPolicyGroup policies because of their sensitive nature. For example, PolicyReport are namespaced resources that contain the list of non compliant objects found inside of a namespace. An attacker can use either an AdmissionPolicy or an AdmissionPolicyGroup to prevent the creation and update of PolicyReport objects to hide non-compliant resources. Moreover, the same attacker might use a mutating AdmissionPolicy to alter the contents of the PolicyReport created inside of the namespace. Starting from the 1.21.0 release, the validation rules applied to AdmissionPolicy and AdmissionPolicyGroup have been tightened to prevent them from validating sensitive types of namespaced resources.
- Record
CVE-2025-24376- CVSS 3.1
- 6.5 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:L - Weakness
- CWE-155, CWE-285
- Updated
- 2026-11-02
OSVGHSA-fc89-jghx-8pvg
6.5
KubeWarden's AdmissionPolicy and AdmissionPolicyGroup policies can be used to alter PolicyReport resources
Impact
By design, AdmissionPolicy and AdmissionPolicyGroup can evaluate only namespaced resources. The resources to be evaluated are determined by the rules provided by the user when defining the policy. There might be Kubernetes namespaced resources that should not be validated by AdmissionPolicy and by the AdmissionPolicyGroup policies because of their sensitive nature. For example, PolicyReport are namespaced resources that contain the list of non compliant objects found inside of a namespace. See this section of Kubewarden’s documentation for more details about PolicyReport resources. An attacker can use either an AdmissionPolicy or an AdmissionPolicyGroup to prevent the creation and update of PolicyReport objects to hide non-compliant resources. Moreover, the same attacker might use a mutating AdmissionPolicy to alter the contents of the PolicyReport created inside of the namespace.
Patches
Starting from the 1.21.0 release, the validation rules applied to AdmissionPolicy and AdmissionPolicyGroup have been tightened to prevent them from validating sensitive types of namespaced resources. The new validation will also restrict the usage of wildcards when defining apiGroups and resources rules for AdmissionPolicy and AdmissionPolicyGroup objects.
Workarounds
On clusters running Kubewarden < 1.21.0, the following Kubewarden policy can be applied to prevent the creation of AdmissionPolicy and AdmissionPolicyGroup resources that interact with PolicyReport resources:
apiVersion: policies.kubewarden.io/v1
kind: ClusterAdmissionPolicy
metadata:
name: "deny-interaction-with-policyreport"
spec:
module: registry://ghcr.io/kubewarden/policies/cel-policy:latest
settings:
variables:
- name: hasWildcardInsideOfApiGroup
expression: "object.spec.rules.exists(r, r.apiGroups.exists(ag, ag == '*'))"
- name: hasWildcardInsideOfResources
expression: "object.spec.rules.exists(r, r.resources.exists(ag, ag == '*' || ag == '*/*' || ag == 'policyreports/*'))"
- name: dealsWithPolicyReportApiGroup
expression: "object.spec.rules.exists(r, r.apiGroups.exists(ag, ag == 'wgpolicyk8s.io'))"
- name: dealsWithPolicyReportResource
expression: "object.spec.rules.exists(r, r.resources.exists(ag, ag == 'policyreports' || ag == 'policyreports/'))"
- name: isPendingDeletion
expression: "has(object.metadata.deletionTimestamp)"
validations:
- expression: |
!( variables.hasWildcardInsideOfApiGroup ||
variables.hasWildcardInsideOfResources ||
variables.dealsWithPolicyReportResource ||
variables.dealsWithPolicyReportApiGroup
) || variables.isPendingDeletion
message: "cannot target PolicyReport resources or use wildcards in apiGroups or resources"
rules:
- apiGroups: ["policies.kubewarden.io"]
apiVersions: ["v1"]
operations: ["CREATE", "UPDATE"]
resources: ["admissionpolicies", "admissionpolicygroups"]
mutating: false
backgroundAudit: true
For more information
If you have any questions or comments about this advisory you can contact the Kubewarden team using the procedures described under the “security disclosure“ guidelines of the Kubewarden project.
- Record
GHSA-fc89-jghx-8pvg- CVSS 3.1
- 6.5 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:L - Weakness
- CWE-155
- Updated
- 2026-11-02
OSVGO-2025-3434 No score
KubeWarden's AdmissionPolicy and AdmissionPolicyGroup policies can be used to alter PolicyReport resources in github.com/kubewarden/kubewarden-controller
KubeWarden's AdmissionPolicy and AdmissionPolicyGroup policies can be used to alter PolicyReport resources in github.com/kubewarden/kubewarden-controller
- Record
GO-2025-3434- Updated
- 2026-11-02
OSVopenSUSE-SU-2025:14732-1 No score
govulncheck-vulndb-0.0.20250204T220613-1.1 on GA media
These are all security issues fixed in the govulncheck-vulndb-0.0.20250204T220613-1.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2025:14732-1- Updated
- 2026-11-02
OSVSUSE-SU-2025:0429-1 No score
Security update for govulncheck-vulndb
This update for govulncheck-vulndb fixes the following issues:
-
Update to version 0.0.20250207T224745 2025-02-07T22:47:45Z. Refs jsc#PED-11136 Go CVE Numbering Authority IDs added or updated with aliases:
- GO-2025-3456 CVE-2025-24786 GHSA-9r4c-jwx3-3j76
- GO-2025-3457 CVE-2025-24787 GHSA-c7w4-9wv8-7x7c
- GO-2025-3458 CVE-2025-24366 GHSA-vj7w-3m8c-6vpx
-
Update to version 0.0.20250206T175003 2025-02-06T17:50:03Z. Refs jsc#PED-11136 Go CVE Numbering Authority IDs added or updated with aliases:
- GO-2023-1867 CVE-2022-47930 GHSA-c58h-qv6g-fw74
- GO-2024-3244 CVE-2024-50354 GHSA-cph5-3pgr-c82g
-
Update to version 0.0.20250206T165438 2025-02-06T16:54:38Z. Refs jsc#PED-11136 Go CVE Numbering Authority IDs added or updated with aliases:
- GO-2025-3428 CVE-2025-22867
- GO-2025-3447 CVE-2025-22866
-
Update to version 0.0.20250205T232745 2025-02-05T23:27:45Z. Refs jsc#PED-11136 Go CVE Numbering Authority IDs added or updated with aliases:
- GO-2025-3408
- GO-2025-3448 GHSA-23qp-3c2m-xx6w
- GO-2025-3449 GHSA-mx2j-7cmv-353c
- GO-2025-3450 GHSA-w7wm-2425-7p2h
- GO-2025-3454 GHSA-mj4v-hp69-27x5
- GO-2025-3455 GHSA-vqv5-385r-2hf8
-
Update to version 0.0.20250205T003520 2025-02-05T00:35:20Z. Refs jsc#PED-11136 Go CVE Numbering Authority IDs added or updated with aliases:
- GO-2025-3451
-
Update to version 0.0.20250204T220613 2025-02-04T22:06:13Z. Refs jsc#PED-11136 Go CVE Numbering Authority IDs added or updated with aliases:
- GO-2025-3431 CVE-2025-24884 GHSA-hcr5-wv4p-h2g2
- GO-2025-3433 CVE-2025-23216 GHSA-47g2-qmh2-749v
- GO-2025-3434 CVE-2025-24376 GHSA-fc89-jghx-8pvg
- GO-2025-3435 CVE-2025-24784 GHSA-756x-m4mj-q96c
- GO-2025-3436 CVE-2025-24883 GHSA-q26p-9cq4-7fc2
- GO-2025-3437 GHSA-274v-mgcv-cm8j
- GO-2025-3438 CVE-2024-11741 GHSA-wxcc-2f3q-4h58
- GO-2025-3442 CVE-2025-24371 GHSA-22qq-3xwm-r5x4
- GO-2025-3443 GHSA-r3r4-g7hq-pq4f
- GO-2025-3444 CVE-2024-35177
- GO-2025-3445 CVE-2024-47770
-
Use standard RPM macros to unpack the source and populate a working directory. Fixes build with RPM 4.20.
-
Update to version 0.0.20250130T185858 2025-01-30T18:58:58Z. Refs jsc#PED-11136 Go CVE Numbering Authority IDs added or updated with aliases:
- GO-2024-2842 CVE-2024-3727 GHSA-6wvf-f2vw-3425
- GO-2024-3181 CVE-2024-9313 GHSA-x5q3-c8rm-w787
- GO-2024-3188 CVE-2024-9312 GHSA-4gfw-wf7c-w6g2
- GO-2025-3372 CVE-2024-45339 GHSA-6wxm-mpqj-6jpf
- GO-2025-3373 CVE-2024-45341
- GO-2025-3383 CVE-2024-45340
- GO-2025-3408
- GO-2025-3412 CVE-2024-10846 GHSA-36gq-35j3-p9r9
- GO-2025-3420 CVE-2024-45336
- GO-2025-3421 CVE-2025-22865
- GO-2025-3424 CVE-2025-24369
- GO-2025-3426 CVE-2025-0750 GHSA-hp5j-2585-qx6g
- GO-2025-3427 CVE-2024-13484 GHSA-58fx-7v9q-3g56
- Record
SUSE-SU-2025:0429-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
github.com/kubewarden/kubewarden-controllerGo |
1.7.0 up to 1.21.0 | 1.21.0 |
govulncheck-vulndbSUSE:Linux Enterprise Module for Package Hub 15 SP6 From an advisory covering 28 CVEs |
before 0.0.20250207T224745-150000.1.32.1 | 0.0.20250207T224745-150000.1.32.1 |
govulncheck-vulndbopenSUSE:Leap 15.6 From an advisory covering 28 CVEs |
before 0.0.20250207T224745-150000.1.32.1 | 0.0.20250207T224745-150000.1.32.1 |
govulncheck-vulndbopenSUSE:Tumbleweed From an advisory covering 9 CVEs |
before 0.0.20250204T220613-1.1 | 0.0.20250204T220613-1.1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, facts | ||
| aliases, published | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2025-24376 is a medium vulnerability (CVSS 6.5) in Kubewarden Kubewarden-controller, published January 30, 2025. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.34%, the 28th percentile. Fixed in github.com/kubewarden/kubewarden-controller 1.21.0.
References
github.com/kubewarden/kubewarden-controller/security/advisories/GHSA-fc89-jghx-8pvg
github.com/kubewarden/kubewarden-controller/commit/8124039b5f0c955d0ee8c8ca12d4415282f02d2c
nvd.nist.gov/vuln/detail/CVE-2025-24376
pkg.go.dev/vuln/GO-2025-3434
github.com/advisories/GHSA-fc89-jghx-8pvg
github.com/CVEProject/cvelistV5/tree/main/cves/2025/24xxx/CVE-2025-24376.json
Show 30 moreShow less
github.com/kubewarden/kubewarden-controller
suse.com/support/update/announcement/2025/suse-su-20250429-1
suse.com/security/cve/CVE-2022-47930
suse.com/security/cve/CVE-2024-10846
suse.com/security/cve/CVE-2024-11741
suse.com/security/cve/CVE-2024-13484
suse.com/security/cve/CVE-2024-35177
suse.com/security/cve/CVE-2024-3727
suse.com/security/cve/CVE-2024-45336
suse.com/security/cve/CVE-2024-45339
suse.com/security/cve/CVE-2024-45340
suse.com/security/cve/CVE-2024-45341
suse.com/security/cve/CVE-2024-47770
suse.com/security/cve/CVE-2024-50354
suse.com/security/cve/CVE-2024-9312
suse.com/security/cve/CVE-2024-9313
suse.com/security/cve/CVE-2025-0750
suse.com/security/cve/CVE-2025-22865
suse.com/security/cve/CVE-2025-22866
suse.com/security/cve/CVE-2025-22867
suse.com/security/cve/CVE-2025-23216
suse.com/security/cve/CVE-2025-24366
suse.com/security/cve/CVE-2025-24369
suse.com/security/cve/CVE-2025-24371
suse.com/security/cve/CVE-2025-24376
suse.com/security/cve/CVE-2025-24784
suse.com/security/cve/CVE-2025-24786
suse.com/security/cve/CVE-2025-24787
suse.com/security/cve/CVE-2025-24883
suse.com/security/cve/CVE-2025-24884