Executive brief
Tekton Pipelines is a framework for creating continuous integration and delivery (CI/CD) systems on Kubernetes. A vulnerability in the component that fetches remote resources via HTTP allows a user with basic permissions to crash the entire resolution service for the cluster. By pointing the system at a malicious server that sends a massive amount of data, an attacker can exhaust the system's memory, causing a denial-of-service that prevents all users from running their pipelines.
Technical details
The vulnerability exists in the HTTP resolver's FetchHttpResource function, which uses io.ReadAll(resp.Body) without a size limit. An attacker with 'create' permissions for TaskRuns or PipelineRuns can specify a URL pointing to a malicious HTTP server. If this server returns a response body larger than the memory limit of the tekton-pipelines-resolvers pod (typically 4 GiB) within the 1-minute request timeout, the pod will be OOM-killed by Kubernetes. Because all resolver types (Git, Hub, Bundle, Cluster, HTTP) share the same pod, this results in a cluster-wide denial of service for resource resolution. The issue is fixed in versions 1.0.2, 1.3.4, 1.6.2, 1.9.3, and 1.11.1 by implementing a 1 MiB response body limit.
Affected products
- Tekton CD Tekton Pipelines >= 1.0.0, < 1.0.2; >= 1.1.0, < 1.3.4; >= 1.4.0, < 1.6.2; >= 1.7.0, < 1.9.3; >= 1.10.0, < 1.11.1
Timeline
- 2026-04-21: disclosed
- 2026-04-21: patched
- 2026-04-21: advisory