C-19
🏷️ 검증 안된 이미지·latest 태그
클라우드/컨테이너 · 컨테이너
위험도: 중💡 쉽게 말하면
latest 태그는 이름표 없는 택배를 받는 것과 같습니다. 안에 무엇이 든지, 누가 바꿔치기했는지 모릅니다. 다이제스트 고정과 서명은 봉인된 정품 인증 택배만 받습니다.
latest 태그는 이름표 없는 택배를 받는 것과 같습니다. 안에 무엇이 든지, 누가 바꿔치기했는지 모릅니다. 다이제스트 고정과 서명은 봉인된 정품 인증 택배만 받습니다.
🎯 직접 해보기 — 공격을 실행해 보세요
아래에서 시스템 상태를 취약 또는 안전(조치 적용)으로 바꾼 뒤 공격 실행을 눌러, 같은 공격이 어떻게 다르게 끝나는지 직접 확인하세요.
# 레지스트리의 latest 태그를 악성 이미지로 바꿔치기한다
# [공격 실행] 버튼을 누르면 시작합니다.
📋 설정 비교 (왜 막혔나?)
✗ 취약한 설정
# 이미지 태그
$ kubectl get pod -o yaml | grep image:
image: myapp:latest (미고정)
→ 변조/예측불가 버전 배포
✓ 안전한 설정
# 다이제스트/서명
$ image: myapp@sha256:... ; cosign verify
고정 digest + 서명 검증
→ 무결성 보장
🔧 조치 방법
- 이미지를
@sha256다이제스트로 고정하고 서명(cosign)을 검증합니다. - 신뢰된 레지스트리만 허용(admission policy)합니다.
✅ 점검 체크리스트
- 이미지가 고정 다이제스트로 배포됨
- 이미지 서명이 검증됨
점검기준: 컨테이너 보안 > 이미지 무결성