본문으로 건너뛰기
← 뉴스 목록으로
WARNING취약점

Kubernetes 컨테이너 탈출 취약점컨테이너를 넘어 클러스터 전체가 위험하다

5분 읽기
#Kubernetes#컨테이너 탈출#CVE#클라우드보안#RBAC

runc에서 컨테이너 탈출 취약점 3건 발견

2025년 11월, 컨테이너 런타임의 핵심 엔진인 runc에서 3건의 컨테이너 탈출(container escape) 취약점이 공개되었습니다. runc는 Docker, Podman, Kubernetes가 모두 사용하는 저수준 컨테이너 런타임으로, 이 취약점은 거의 모든 컨테이너 환경에 영향을 미칩니다.

컨테이너는 원래 호스트 시스템과 격리되어야 합니다. 그러나 이번 취약점들은 공격자가 컨테이너 내부에서 호스트 운영체제로 탈출할 수 있게 합니다. 아파트의 한 방에서 건물 전체의 마스터키를 획득하는 것과 비슷합니다.

3개 CVE — 어떻게 작동하는가

CVE-2025-31133: /dev/null 심볼릭 링크 공격

runc는 컨테이너 내부의 민감한 호스트 파일을 숨기기 위해 /dev/null로 바인드 마운트(bind-mount)합니다. 이 취약점에서 공격자는 컨테이너 초기화 과정 중 /dev/null심볼릭 링크로 교체하여, runc가 의도하지 않은 파일에 접근하도록 유도합니다.

CVE-2025-52565: /dev/console 바인드 마운트 악용

컨테이너의 /dev/console 바인드 마운트 과정에서 발생하는 결함입니다. 공격자는 심볼릭 링크를 이용해 runc가 procfs의 민감한 파일에 읽기/쓰기 접근을 허용하도록 만듭니다.

CVE-2025-52881: LSM 보안 검사 우회

가장 정교한 취약점입니다. Linux Security Modules(AppArmor, SELinux 등)의 보안 검사를 우회합니다. 공격자는 쓰기 작업을 /proc/sysrq-trigger(호스트 크래시 유발)나 /proc/sys/kernel/core_pattern(완전한 컨테이너 탈출)으로 리다이렉트할 수 있습니다.

세 취약점 모두 **레이스 컨디션(race condition)**과 마운트 조작을 기반으로 하며, 컨테이너 시작 과정의 짧은 시간 창을 악용합니다.

Kubernetes 환경에서의 파급력

일반 서버에서 컨테이너 탈출은 해당 호스트 하나의 문제입니다. 그러나 Kubernetes 환경에서는 파급력이 급격히 확대됩니다:

  1. 컨테이너 탈출 — 공격자가 Pod에서 노드(호스트)로 탈출
  2. Kubelet 접근 — 노드의 kubelet 권한을 획득하여 해당 노드의 모든 Pod 제어
  3. 클러스터 확산 — Service Account 토큰, Secret 등을 탈취하여 다른 노드로 이동
  4. 전체 장악 — 클러스터 전체의 데이터와 워크로드를 제어

CNCF(Cloud Native Computing Foundation)는 2025년 11월 기술 분석 보고서에서 이 취약점들의 심각성을 상세히 다루었습니다. Sysdig 역시 탐지 및 대응 가이드를 발표했습니다.

관련 취약점: NVIDIAScape (CVE-2025-23266)

동일 시기에 NVIDIA 컨테이너 환경에서도 CVSS 9.0의 컨테이너 탈출 취약점(NVIDIAScape)이 발견되었습니다. GPU 워크로드를 사용하는 AI/ML 클러스터에 추가적인 위험을 제기합니다.

지금 할 수 있는 대응법

  1. runc 즉시 업데이트 — 패치된 버전으로 업그레이드합니다. Docker Engine, containerd, CRI-O 등 상위 런타임의 최신 버전에 패치가 포함되어 있습니다
  2. Pod Security Standards 적용 — Kubernetes의 Pod Security Admission(PSA)을 restricted 프로파일로 설정하여 권한 상승을 제한합니다
  3. RBAC 최소 권한 원칙 — Service Account에 최소한의 권한만 부여합니다. cluster-admin 바인딩을 감사하고 불필요한 권한을 제거합니다
  4. 런타임 보안 모니터링 — Falco, Sysdig 등 런타임 보안 도구로 비정상적인 시스템 콜을 탐지합니다. mount, ptrace, setns 호출을 모니터링합니다
  5. Seccomp/AppArmor 프로파일 적용 — CVE-2025-52881은 LSM 우회를 시도하지만, 올바른 Seccomp 프로파일은 공격 표면을 줄입니다. 기본 프로파일이라도 적용하는 것이 무방비보다 안전합니다
  6. 네트워크 정책(NetworkPolicy) 설정 — Pod 간 불필요한 네트워크 통신을 차단하여 횡적 이동을 제한합니다
항목내용
영향 범위Docker, Podman, Kubernetes (runc 사용 환경 전체)
CVE 수3건 (CVE-2025-31133, CVE-2025-52565, CVE-2025-52881)
공격 유형레이스 컨디션 + 마운트 조작
최악의 시나리오컨테이너 → 호스트 → 클러스터 전체 장악
핵심 대응runc 업데이트, PSA restricted, RBAC 최소 권한

컨테이너는 격리를 보장하지 않습니다. 올바른 보안 설정과 적시 패치가 없으면, 하나의 취약한 Pod가 클러스터 전체의 문을 여는 열쇠가 됩니다.


참고

공유

보안 뉴스 알림 받기

새로운 보안 뉴스를 이메일로 전달합니다.