DEEP DIVE REPORT

Contrast 기밀 컨테이너 취약점 점검과 대응: LUKS2 영구 볼륨·로그 비밀 유출·복구 신뢰 경계

SecurityDesk
• 2026.09.29 • 조회 2

개요

개요 인포그래픽
Edgeless Systems Contrast는 Kubernetes 위에서 기밀 컨테이너(confidential container)를 실행하는 런타임입니다. 최근 공개된 세 가지 취약점은 이 런타임의 보안 보장을 약화시키는 경로입니다.

1.12.1 이전 버전의 보안 영구 볼륨(secure persistent volume) 기능은 악의적인 호스트가 조작된 LUKS2 볼륨을 파드에 제공하면, 본래 암호화되었어야 할 기밀 데이터가 평문으로 노출될 수 있습니다(CVE-2025-71422). Coordinator 복구 경로에서는 기존 Mesh CA 키가 매니페스트 경계를 넘어 이동해 다른 매니페스트 레플리카의 기밀성이 침해될 수 있고, 이 취약점은 v1.24.1에서 패치되었습니다. 또한 v1.12.1에서는 워크로드 비밀이 INFO 수준 로그에 유출될 수 있습니다.

이 글은 세 경로의 작동 방식을 기술 절차로 정리하고, 현재 운영 환경에 어떤 패치 버전이 필요한지 판단하며, 점검과 대응을 어떤 순서로 진행하면 되는지 조건부 해석으로 보여줍니다.

적용 환경·전제조건

Contrast는 게스트 안에서 데이터를 보호하되, 호스트 운영자나 인프라 관리 권한을 가진 주체를 신뢰하지 않는다는 가정을 전제로 합니다. 특히 LUKS2 영구 볼륨 경로(CVE-2025-71422)는 제공된 근거가 명시하듯, 악의적인 호스트가 조작된 LUKS2 볼륨을 파드에 제공하는 시나리오가 위협 모델입니다. 다음 환경이라면 점검 대상입니다.

  • Contrast 1.12.1 미만 버전을 운영하면서 보안 영구 볼륨 기능을 쓰는 환경
  • Coordinator 복구 절차를 사용하는 환경
  • v1.12.1에서 워크로드 비밀이 INFO 수준 로그에 남을 수 있고, 이 비밀이 암호화 저장·Vault 연동에 사용되는 환경

영구 볼륨 기능이 실제로 사용되지 않거나 복구 절차를 사용하지 않는 환경이라면 각각의 경로가 적용되지 않을 수 있습니다. 반대로 해당 기능이 활성이라면 노출 표면이 열려 있다고 보아, 점검 우선순위를 높여야 합니다.

기술 절차·판단 근거

LUKS2 영구 볼륨 경로(CVE-2025-71422)

Contrast Initializer는 영구 볼륨을 설정할 때 비밀 시드(secret seed)를 cryptsetup 암호화 키로 사용하고, 이 과정에서 cryptsetup CLI를 호출합니다. 이때 Kubernetes가 제공한 장치가 이미 cryptsetup 장치로 식별되면, Initializer는 파드 재시작으로 인한 기존 볼륨이라고 가정하고 그대로 열어 사용합니다.

악의적인 호스트는 바로 이 가정을 악용합니다. 조작된 LUKS2 볼륨을 제공하면, 예컨대 사용된 키슬롯(keyslot)이 암호화되지 않은 널(null) 암호 방식인 경우 데이터가 실제로 암호화되지 않은 상태로 호스트가 읽을 수 있게 됩니다.

이 경로를 원천 차단하는 것이 cryptsetup 2.8.1의 변경입니다. 2.8.1은 사용된 키슬롯이 암호화되지 않은(널 암호) LUKS2 장치의 활성화를 허용하지 않습니다.

패치 버전의 차등은 다음과 같습니다.

  • v1.12.1: cryptsetup 2.8.1을 포함하며, 패스프레이즈가 비어 있지 않을 때 키슬롯의 널 암호 사용을 비활성화합니다.
  • v1.13.0: 게스트 메모리 내 디태치드 헤더(detached-header) 검증과 무결성 보호를 추가해 LUKS2 관련 방어를 더 강화합니다.

판단 기준으로는, 현재 버전이 1.12.1 미만이면 널 암호 키슬롯을 활용한 경로가 열려 있다고 보고, 1.13.0 미만이면 디태치드 헤더 검증과 무결성 보호가 없어 헤더 조작에 대한 방어가 부족하다고 구분할 수 있습니다.

Coordinator 복구 경로(GHSA-rxcv-p3px-m3c3)

기존 구조에서는 Coordinator 복구 시 서빙 중인 Coordinator의 최신 전이 해시(transition hash) 일치 여부를 검증하지 않아, 기존 Mesh CA 키가 매니페스트 경계를 넘어 재사용될 수 있었습니다. 이 경우 다른 매니페스트의 레플리카가 그 키를 접하게 되어 기밀성이 침해될 수 있습니다.

v1.24.1에서 패치되었습니다. Mesh API 복구 응답이 서빙 중인 Coordinator의 최신 전이 해시를 전달하게 되고, 복구하려는 Coordinator는 해당 해시가 이력 선두(head)와 일치하지 않으면 복구를 거부합니다. 따라서 복구 절차를 사용하는 환경이라면 이 검증의 유무가 판별 기준으로 작용합니다.

워크로드 비밀 로그 유출 경로(GHSA-vxg3-w9rv-rhr2)

v1.12.1에서는 워크로드 비밀이 INFO 수준 로그에 유출될 수 있습니다. 권고에 따르면 이 취약점은 v1.12.2 및 v1.13.0에서 수정됩니다. 여기서 중요한 연관은, 워크로드 비밀이 암호화 저장(encrypted storage)와 Vault 연동에 사용된다는 점입니다. 비밀이 로그에 노출되면 이 두 자산으로 보호되던 데이터까지 침해된 것으로 간주해야 합니다.

운영상 영향

세 경로는 개별적이지 않고, 호스트를 신뢰하지 않는다는 Contrast의 근본 전제가 흔들린다는 공통점이 있습니다. LUKS2 경로에서는 기밀 데이터가 평문으로 노출되고, Mesh CA 경로에서는 매니페스트 경계의 기밀성이 침해되며, 로그 경로에서는 워크로드 비밀이 평문으로 남을 수 있습니다.

영향의 크기는 환경 조건에 따라 달라집니다.

  • 보안 영구 볼륨을 쓰지 않는 환경이라면 LUKS2 경로의 직접적 영향은 제한적일 수 있습니다. 다만 영구 볼륨을 쓰는 파드가 섞여 있다면 그 파드에 한해 영향을 한정해야 합니다.
  • Coordinator 복구를 사용하지 않는 환경이라면 Mesh CA 경로는 발생하지 않으므로, 이 부분은 검증 수준만 점검하면 됩니다.
  • v1.12.1에서 INFO 수준 로그가 남았고, 이 로그에 워크로드 비밀이 포함될 수 있는 환경이라면, 유출된 비밀이 암호화 저장과 Vault 자산까지 확장된다는 점에서 노출 범위가 넓다고 볼 수 있습니다.

대응 우선순위는 취약점별로 달라집니다. LUKS2 영구 볼륨 경로는 최소 v1.12.1, 권장 v1.13.0이 적용 버전입니다. Coordinator 복구 경로는 v1.24.1이 적용 버전입니다. 워크로드 비밀 로그 유출 경로는 수정 버전이 v1.12.2 및 v1.13.0이므로, 이 경로가 적용되는 환경이라면 v1.12.2 이상으로의 업그레이드가 필요합니다.

탐지·대응

탐지

  • v1.12.1을 운영했거나 운영 중인 환경에서, 워크로드 비밀이 INFO 수준 로그에 노출될 수 있는지를 점검하세요. 워크로드 비밀이 암호화 저장(encrypted storage)와 Vault 연동에 사용된다면, 이 두 자산까지 침해된 것으로 간주해야 합니다.
  • v1.12.1 이전 버전을 운영했거나 운영 중인 환경에서는, 보안 영구 볼륨 기능이 악의적인 호스트에 의해 조작된 LUKS2 볼륨으로 노출될 수 있었는지 확인하세요. 노출된 경우 관련 기밀 데이터가 평문으로 읽혔을 수 있습니다.
  • Coordinator 복구 기능을 사용한 환경에서는, v1.24.1 패치 적용 여부를 확인하고 적용되지 않았다면 기존 Mesh CA 키가 다른 매니페스트의 레플리카로 이동했을 가능성을 점검하세요.

대응 순서

  • LUKS2 영구 볼륨 경로를 닫으려면 Contrast를 v1.12.1 이상으로 업그레이드하세요. v1.12.1은 cryptsetup 2.8.1을 포함해, 패스프레이즈가 비어 있지 않을 때 키슬롯의 널 암호 사용을 비활성화합니다.
  • 운영 중인 환경에서 Coordinator 복구 기능을 사용한다면, 복구 관련 취약점이 패치된 v1.24.1로 업그레이드하세요.
  • v1.12.1을 운영했으며 워크로드 비밀이 INFO 로그에 유출됐을 수 있다면, 수정 버전인 v1.12.2 및 v1.13.0으로 업그레이드하고, 해당 비밀이 암호화 저장과 Vault 연동에 쓰인 경우 침해된 것으로 간주해 교체하세요.
  • 중장기적으로는 v1.13.0 이상(디태치드 헤더 검증과 무결성 보호) 업그레이드를 목표로 하고, 복구 경로는 v1.24.1 이상에서 전이 해시 일치 검증이 적용되므로 해당 최신 버전을 유지하세요.

한계 및 참고자료

다음 항목은 제공된 근거로 확인할 수 없는 부분이며, 확정된 사실이 아닙니다.

  • 세 취약점의 실제 야생(exploit-in-the-wild) 악용 사례나 CISA KEV 등재 여부는 확인되지 않았습니다. 다만 LUKS2 취약점은 악의적인 호스트가 조작된 LUKS2 볼륨을 제공한다 는 시나리오가 공개 권고에 명시된 위협 모델이므로, 호스트 접근 권한이 있는 공격자에게는 악용 가능성이 열려 있는 것으로 볼 수 있습니다.
  • 각 취약점의 CVSS 점수, 공개 날짜, 세부 패치 커밋 정보는 근거에 포함되지 않아 언급하지 않았습니다.
  • Mesh CA 복구 취약점(GHSA-rxcv-p3px-m3c3)의 영향 버전 하한과 정확한 발생 조건은 근거에 명시되지 않았습니다.
  • 로그 유출 취약점의 수정 버전 경계는 근거에서 v1.12.2 및 v1.13.0 수준으로만 확인 가능합니다.

참고자료

함께 읽으면 좋은 글

본 콘텐츠는 AI 기술로 작성된 분석 리포트를 포함하고 있습니다. 내용 중 사실과 다르거나 보완이 필요한 정보를 발견하셨으면 댓글을 통해 의견을 부탁드립니다. 여러분의 피드백은 더 정확한 보안 정보 공유에 큰 도움이 됩니다.

댓글 (0)

댓글을 작성하려면 로그인이 필요합니다.

로그인

아직 댓글이 없습니다.

첫 번째 댓글을 작성해보세요!

IT 도구 서랍

→ Unix: 2025-01-15T09:30:00
→ 날짜: 1736934600

→ ASCII: ABC
→ 문자: 65 66 67

ASCII 코드표 — 클릭하면 입력란에 추가

DecHex약어설명
DecHex문자
DecHex문자

→ 유니코드: 홍길동
→ 문자: \ud64d\uae38\ub3d9