Flux is an open and extensible continuous delivery solution for Kubernetes. Versions prior to 0.35.0 are subject to a Denial of Service. Users that have permissions to change Flux’s objects, either through a Flux source or directly within a cluster, can provide invalid data to fields .spec.interval
or .spec.timeout
(and structured variations of these fields), causing the entire object type to stop being processed. This issue is patched in version 0.35.0. As a workaround, Admission controllers can be employed to restrict the values that can be used for fields .spec.interval
and .spec.timeout
, however upgrading to the latest versions is still the recommended mitigation.
The product receives input that is expected to specify a quantity (such as size or length), but it does not validate or incorrectly validates that the quantity has the required properties.
Name | Vendor | Start Version | End Version |
---|---|---|---|
Flux2 | Fluxcd | 0.1.0 (including) | 0.35.0 (excluding) |
Helm-controller | Fluxcd | 0.0.2 (including) | 0.24.0 (excluding) |
Helm-controller | Fluxcd | 0.0.1-alpha1 (including) | 0.0.1-alpha1 (including) |
Helm-controller | Fluxcd | 0.0.1-alpha2 (including) | 0.0.1-alpha2 (including) |
Helm-controller | Fluxcd | 0.0.1-beta1 (including) | 0.0.1-beta1 (including) |
Helm-controller | Fluxcd | 0.0.1-beta2 (including) | 0.0.1-beta2 (including) |
Helm-controller | Fluxcd | 0.0.1-beta3 (including) | 0.0.1-beta3 (including) |
Helm-controller | Fluxcd | 0.0.1-beta4 (including) | 0.0.1-beta4 (including) |
Image-automation-controller | Fluxcd | 0.1.0 (including) | 0.26.0 (excluding) |
Image-reflector-controller | Fluxcd | 0.1.0 (including) | 0.22.0 (excluding) |
Kustomize-controller | Fluxcd | 0.0.2 (including) | 0.29.0 (excluding) |
Kustomize-controller | Fluxcd | 0.0.1-alpha1 (including) | 0.0.1-alpha1 (including) |
Kustomize-controller | Fluxcd | 0.0.1-alpha2 (including) | 0.0.1-alpha2 (including) |
Kustomize-controller | Fluxcd | 0.0.1-alpha3 (including) | 0.0.1-alpha3 (including) |
Kustomize-controller | Fluxcd | 0.0.1-alpha4 (including) | 0.0.1-alpha4 (including) |
Kustomize-controller | Fluxcd | 0.0.1-alpha5 (including) | 0.0.1-alpha5 (including) |
Kustomize-controller | Fluxcd | 0.0.1-alpha6 (including) | 0.0.1-alpha6 (including) |
Kustomize-controller | Fluxcd | 0.0.1-alpha7 (including) | 0.0.1-alpha7 (including) |
Kustomize-controller | Fluxcd | 0.0.1-alpha8 (including) | 0.0.1-alpha8 (including) |
Kustomize-controller | Fluxcd | 0.0.1-alpha9 (including) | 0.0.1-alpha9 (including) |
Kustomize-controller | Fluxcd | 0.0.1-beta1 (including) | 0.0.1-beta1 (including) |
Kustomize-controller | Fluxcd | 0.0.1-beta2 (including) | 0.0.1-beta2 (including) |
Notification-controller | Fluxcd | 0.0.2 (including) | 0.27.0 (excluding) |
Notification-controller | Fluxcd | 0.0.1-alpha1 (including) | 0.0.1-alpha1 (including) |
Notification-controller | Fluxcd | 0.0.1-alpha2 (including) | 0.0.1-alpha2 (including) |
Notification-controller | Fluxcd | 0.0.1-beta1 (including) | 0.0.1-beta1 (including) |
Source-controller | Fluxcd | 0.0.2 (including) | 0.30.0 (excluding) |
Source-controller | Fluxcd | 0.0.1-alpha1 (including) | 0.0.1-alpha1 (including) |
Source-controller | Fluxcd | 0.0.1-alpha2 (including) | 0.0.1-alpha2 (including) |
Source-controller | Fluxcd | 0.0.1-alpha3 (including) | 0.0.1-alpha3 (including) |
Source-controller | Fluxcd | 0.0.1-alpha4 (including) | 0.0.1-alpha4 (including) |
Source-controller | Fluxcd | 0.0.1-alpha5 (including) | 0.0.1-alpha5 (including) |
Source-controller | Fluxcd | 0.0.1-alpha6 (including) | 0.0.1-alpha6 (including) |
Source-controller | Fluxcd | 0.0.1-beta1 (including) | 0.0.1-beta1 (including) |
Source-controller | Fluxcd | 0.0.1-beta2 (including) | 0.0.1-beta2 (including) |
Specified quantities include size, length, frequency, price, rate, number of operations, time, and others. Code may rely on specified quantities to allocate resources, perform calculations, control iteration, etc. When the quantity is not properly validated, then attackers can specify malicious quantities to cause excessive resource allocation, trigger unexpected failures, enable buffer overflows, etc.