프리빌리지드 모드에서 컨테이너를 실행하는 것은 보안에 민감합니다.

 

프리빌리지드 모드에서 컨테이너를 실행하면 호스트와 컨테이너 간의 격리가 약해지기 때문에 보안 사고 발생 시 클러스터의 복원력이 감소할 수 있습니다.

프리빌리지드 컨테이너의 프로세스 권한은 기본적으로 호스트의 루트 권한과 동일합니다. 이러한 프로세스가 강력한 보안 조치로 보호되지 않으면 POD의 호스트에서 루트 프로세스를 손상시키는 공격자는 클러스터 내에서 피벗(공격 방향을 바꾸어 나아감)하는 능력을 얻을 수 있습니다.

클러스터의 복원력에 따라 공격자는 클러스터가 프로세스를 시작한 노드를 손상시켜 공격을 클러스터로 확장할 수 있습니다.

다음 질문을 확인하세요

  • 이 POD의 서비스는 Kubernetes 클러스터의 관리자가 아닌 사용자가 접근할 수 있습니다.

만약 상위 질문에 해당된다면 위험이 있을 수 있습니다.

권장되는 보안 코딩 방법
프리빌리지드 모드를 사용하지 마세요.

민감한 코드 예시

apiVersion: v1
kind: Pod
metadata:
  name: example
spec:
  containers:
    - name: web
      image: nginx
      ports:
        - name: web
          containerPort: 80
          protocol: TCP
      securityContext:
        privileged: true # Sensitive

규칙을 준수한 해결책

apiVersion: v1
kind: Pod
metadata:
  name: example
spec:
  containers:
    - name: web
      image: nginx
      ports:
        - name: web
          containerPort: 80
          protocol: TCP
      securityContext:
        privileged: false

같이보면 좋은 자료


If you like SONARKUBE, don’t forget to give me a star. :star2:

원문으로 바로가기

Star This Project