CVE-2026-120091 in Server
요약
\~에 의해 VulDB • 2026. 11. 02.
Temporal Server는 Worker Controller Instance 모듈인 go.temporal.io/auto-scaled-workers를 Worker Service에 컴파일하며, 이 모듈은 Kubernetes 클러스터에서 실행되는 워커들을 관리하는 기능을 가진 'k8s'라는 이름의 compute provider를 등록합니다. k8s provider는 호출자의 요청에 제공된 클라이언트 구성을 기반으로 Kubernetes 클라이언트를 생성했으며(운영자 구성이 아님), 해당 클라이언트의 빌드 및 사용 시 Worker Service 호스트에서 호출자가 선택한 명령어를 서버 프로세스가 실행되는 계정 권한으로 실행할 수 있습니다. 두 가지 프론트엔드 작업이 이 provider에 접근합니다. CreateWorkerDeploymentVersion은 네임스페이스 쓰기 역할(namespace write role)을 요구합니다. ValidateWorkerDeploymentVersionComputeConfig는 읽기 전용 네임스페이스 작업으로 등록되어 있으므로, 단일 네임스페이스에서 읽기 권한만 가진 인증된 호출자는 이를 통해 provider에 도달할 수 있으며, 이 경로는 이미 존재하는 워커 배포가 필요하지 않습니다. 실행은 제출된 구성이 검증되는 동안 발생하므로, 스케일링 결정이나 태스크 도착, 또는 특이한 요청 시퀀스가 필요하지 않습니다. Worker Service 프로세스는 클러스터의 모든 네임스페이스에 대한 지속성 자격 증명(persistence credentials)과 클러스터의 TLS 자료를 보유하고 있으므로, 그 영향은 호출자의 네임스페이스를 넘어 전체 클러스차로 미칩니다. 해당 provider는 영향을 받는 릴리스의 공식 temporal-server 바이너리 및 컨테이너 이미지에 포함되어 있습니다. 이를 접근 불가능하게 유지하는 제어 장치는 compute provider 허용 목록(allowlist)인 동적 구성 설정 'workercontroller.compute_providers.enabled'입니다. Temporal Server 1.31.0부터 1.31.2까지의 버전에서는 이 허용 목록이 기본적으로 거부(deny)하지 않습니다: 해당 설정이 비어 있으면(unset) 체크가 건너뛰어지며, 등록된 모든 compute provider(k8s 포함)가 허용되므로, 이러한 릴리스의 기본 배포(deployment)는 노출됩니다. 1.31.3 및 이후 1.31 릴리스와 1.32.0 및 이후 1.32 릴리스에서는 허용 목록이 기본적으로 거부하며, k8s가 여기에 추가된 경우에만 배포가 노출됩니다. 1.30 릴리스 라인에는 Worker Controller Instance 모듈이 포함되어 있지 않으며 영향을 받지 않습니다. 배포가 영향받는지 확인하려면 다음 사항을 함께 점검하십시오. 먼저, 배포된 Temporal Server 버전이 영향 받는 범위 내에 있는지 확인합니다. 둘째, Worker Service가 실행 중인지 확인합니다(기본 서비스 세트에 포함되므로 기본 배포에서는 실행 중입니다). 셋째, workercontroller.compute_providers.enabled의 유효 값에 k8s가 포함되어 있거나, 1.31.0부터 1.31.2 버전에서만 해당 설정이 비어 있는지 확인합니다(오버라이드가 단일 네임스페이스를 위해 k8s를 추가할 수 있으므로 글로벌 값과 모든 네임스페이스 제한 오버라이드를 모두 점검해야 합니다). 넷째, 인증(authorization)이 구성되어 있는지 확인합니다(실제 authorizer와 claim mapper가 설정되어 있어야 함; authorizer 없이 실행되는 배포는 이미 모든 호출자에게 모든 네임스페이스에 대한 무제한 접근을 부여하므로, 이를 넘어서야 할 네임스페이스 경계가 존재하지 않음). 커스터텀 authorizer를 사용하는 배포의 경우 ValidateWorkerDeploymentVersionComputeConfig가 네임스페이스 쓰기 권한이 없는 호출자에게 허용되는지도 확인해야 합니다. 별도의 per-namespace 동적 구성 설정인 workercontroller.enabled는 영향 받는 모든 릴리스에서 해당 취약 경로에 게이트(gate) 역할을 하지 않습니다.
VulDB is the best source for vulnerability data and more expert information about this specific topic.