🇰🇷 한글 설명
Contrast(Edgeless Systems) 1.8.1 미만 버전에서 로그 레벨이 info 또는 debug로 설정될 경우 워크로드 비밀 정보가 stderr를 통해 Kubernetes 로그에 기록됩니다. 이로 인해 Kubernetes 로그에 접근 권한이 있는 사용자나 클라우드 제공업체가 민감한 워크로드 비밀 정보를 노출될 위험이 있습니다.
💡 쉬운 설명
프로그램이 작동 과정을 기록하는 로그 파일에 중요한 비밀번호가 실수로 포함되어 저장되는 문제입니다. 이 로그를 볼 수 있는 권한이 있는 사람은 누구나 시스템의 중요한 비밀 정보를 훔쳐볼 수 있습니다.
🇺🇸 원문 (English)
Contrast (Edgeless Systems) before 1.8.1 logs the workload secret to stderr, and thus to Kubernetes logs, when the Contrast initializer is configured with CONTRAST_LOG_LEVEL set to info or debug. Because info is the default, all installations that do not customize the initializer log level are affected. This exposes workload secrets — normally accessible only to the Contrast Coordinator, the initializer, the seedshare owner, and the workload owner — to Kubernetes users with get or list permission on pods/logs and to anyone with read access to the Kubernetes log storage, such as the cloud provider. Deployments that do not use workload secrets are unaffected.
📍 영향받는 시스템
Contrast (Edgeless Systems) version 1.8.1 미만
⚔️ 공격 벡터
Kubernetes pod/logs에 대한 get 또는 list 권한을 가진 사용자가 로그를 조회하여 비밀 정보 탈취
🛡️ 대응 방법
Contrast를 1.8.1 이상 버전으로 업데이트하거나, CONTRAST_LOG_LEVEL을 warn 또는 error로 설정하여 로그 노출 방지
🔧 검증 코드
명령어 결과로 info 또는 debug가 출력되면 로그를 통해 비밀 정보가 노출될 위험이 있는 상태입니다.
kubectl get pods -A -o jsonpath='{.items[*].spec.containers[*].env[?(@.name=="CONTRAST_LOG_LEVEL")].value}'