🇰🇷 한글 설명
Traefik의 Kubernetes Gateway API에서 HTTPRoute 생성 권한을 가진 테넌트가 @internal로 끝나는 서비스명을 이용해 REST provider 핸들러를 노출하고 providers.rest.insecure=false 설정을 우회할 수 있습니다. 공유 Gateway 환경에서 낮은 권한의 공격자가 Traefik의 동적 설정에 쓰기 접근을 획득해 라우터와 서비스를 무단으로 재구성할 수 있습니다.
💡 쉬운 설명
Traefik 사용자 권한으로 특정 이름의 라우트를 만들 수 있는 사람이 전체 시스템 설정을 변경할 수 있게 됩니다. Kubernetes를 통해 HTTP 트래픽을 관리하는 서버에서 심각한 접근 제어 문제가 발생합니다.
🇺🇸 원문 (English)
Traefik is an HTTP reverse proxy and load balancer. Prior to 2.11.46, 3.6.17, and 3.7.1, Traefik's Kubernetes Gateway API provider allows a tenant with HTTPRoute creation permissions to expose the REST provider handler, bypassing the providers.rest.insecure=false setting. The Gateway provider accepts any TraefikService backend reference whose name ends with @internal, making it possible to route traffic to rest@internal in addition to the intended api@internal. In shared Gateway deployments where the REST provider is enabled, this allows a low-privileged actor to gain live dynamic configuration write access to Traefik, enabling unauthorized reconfiguration of routers and services. This vulnerability is fixed in 2.11.46, 3.6.17, and 3.7.1.
📍 영향받는 시스템
Traefik 2.11.46 이전, 3.6.17 이전, 3.7.1 이전 (Kubernetes Gateway API 제공자 활성화 시)
⚔️ 공격 벡터
HTTPRoute 생성 권한을 가진 테넌트가 @internal 접미사를 사용하는 서비스명으로 rest@internal 핸들러를 통해 REST API에 접근
🛡️ 대응 방법
Traefik을 2.11.46, 3.6.17 또는 3.7.1 이상으로 업그레이드
🔧 검증 코드
출력된 버전이 2.11.46, 3.6.17, 3.7.1 이상이면 패치됨, 그 이하면 취약함
traefik version 2>/dev/null | grep -oP 'Version\s*:\s*\K[0-9.]+'