설명
seccomp는 컨테이너가 사용할 수 있는 시스템 호출을 제한해 커널 노출 범위를 줄여 주는 기본 보안 장치입니다.
security_opt에 seccomp:unconfined 같은 설정을 넣으면 이 보호 장치를 사실상 끄게 됩니다. 특별한 이유 없이 기본 seccomp를 해제하면 컨테이너 격리 수준이 낮아질 수 있습니다.
잠재적 영향
- 컨테이너가 더 많은 시스템 호출을 사용할 수 있어 공격 표면이 넓어집니다.
- 애플리케이션 취약점이 있을 때 커널 수준 악용 가능성이 커질 수 있습니다.
- 보안 표준에서 기대하는 기본 컨테이너 격리가 약해질 수 있습니다.
해결 방법
security_opt에서 seccomp 비활성화 설정을 제거하세요.- 정말 필요한 시스템 호출이 있다면 전체 해제 대신 맞춤 seccomp 프로필을 검토하세요.
- 디버깅용 예외 설정이 운영 환경으로 넘어오지 않도록 배포 기준을 분리하세요.
예시
Linux Docker에서 seccomp를 지원하는 실행 환경을 전제로 한 발췌입니다. sample/app:latest는 실제 서비스 이미지로 바꾸세요.
변경 전
yaml
services:
demo:
image: sample/app:latest
security_opt:
- seccomp:unconfined
변경 후
yaml
services:
demo:
image: sample/app:latest
설명:
- 변경 전: seccomp 보호를 해제해 컨테이너가 더 넓은 시스템 호출 범위를 사용할 수 있습니다.
- 변경 후: seccomp 해제 옵션을 제거합니다. 실행 환경에서 기본 프로필이 실제 적용되는지 확인하세요.