🔍 CVE-2026-40923

5.4
CVSS Score
MEDIUM
2026-04-21
2026-10-26 22:10
✅ 완료

🇰🇷 한글 설명

Tekton Pipelines의 VolumeMount 경로 제한 검증이 우회될 수 있는 취약점입니다. 1.0.0 이상 특정 버전 미만에서 strings.HasPrefix 검사에 filepath.Clean이 적용되지 않아, '..' 경로 탐색 요소를 이용하면 /tekton/ 내부 제한 경로에 볼륨을 마운트할 수 있습니다.

💡 쉬운 설명

Tekton은 CI/CD 파이프라인을 실행하는 도구입니다. 경로 검사가 허술해서 공격자가 제한된 내부 경로에 접근할 수 있는 문제가 있습니다.

🇺🇸 원문 (English)

Tekton Pipelines project provides k8s-style resources for declaring CI/CD-style pipelines. Starting in version 1.0.0 and prior to versions 1.0.2, 1.3.4, 1.6.2, 1.9.3, and 1.11.1, a validation bypass in the VolumeMount path restriction allows mounting volumes under restricted /tekton/ internal paths by using .. path traversal components. The restriction check uses strings.HasPrefix without filepath.Clean, so a path like /tekton/home/../results passes validation but resolves to /tekton/results at runtime. Versions 1.0.2, 1.3.4, 1.6.2, 1.9.3, and 1.11.1 fix the issue.

📍 영향받는 시스템

Tekton Pipelines 1.0.0 이상 ~ 1.0.2 미만, 1.3.x ~ 1.3.4 미만, 1.6.x ~ 1.6.2 미만, 1.9.x ~ 1.9.3 미만, 1.11.0 ~ 1.11.1 미만

⚔️ 공격 벡터

파이프라인 정의의 VolumeMount 경로에 '/tekton/home/../results'처럼 '..'을 포함시켜 검증을 통과한 뒤 실제로는 /tekton/results 등 내부 경로에 마운트

🛡️ 대응 방법

Tekton Pipelines를 1.0.2, 1.3.4, 1.6.2, 1.9.3, 1.11.1 이상 버전으로 업그레이드

🔧 검증 코드

출력된 이미지 태그 버전이 1.0.2, 1.3.4, 1.6.2, 1.9.3, 1.11.1 중 해당 브랜치의 패치 버전 이상이면 취약하지 않고, 미만이면 취약합니다.

Shell / Script
kubectl get deployment -n tekton-pipelines tekton-pipelines-controller -o jsonpath='{.spec.template.spec.containers[0].image}'

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N

💻 영향받는 소프트웨어

CI/CD Pipeline