소프트웨어 분해를 위한 컨테이너 이미지 스캔

  • 릴리스 버전: Yokohama
  • 업데이트 날짜 2025년 01월 30일
  • 읽기5분
  • 앱과 디스커버리 및 서비스 매핑 패턴Kubernetes Visibility Agent는 ITOM 가시성 컨테이너 Aqua Trivy 이미지 및 OS 패키지에 대한 데이터를 수집하기 위해 통합됩니다. 컨테이너 구성요소에 대한 가시성을 확보하여 컨테이너 배포에 대한 제어력을 높일 수 있습니다.

    소프트웨어 분해를 위한 컨테이너 이미지 스캔 다이어그램

    이미지 스캔의 이점

    컨테이너를 스캔하면 내부 Kubernetes , Docker 컨테이너 또는 OS 패키지에 대한 가시성을 확보할 수 있습니다. 이미지 스캔은 여러 가지 방법으로 도움이 될 수 있습니다.
    • 이는 규제 및 규정 준수 사용 사례를 위해 컨테이너에 설치된 소프트웨어를 식별하는 데 도움이 됩니다.
    • 이는 골든 이미지 사용, 오래된 소프트웨어, 필수 레이블 또는 구성 정책과 같은 회사 정책을 준수하는 데 도움이 됩니다​.
    • 또한 컨테이너에서 실행되는 라이센스 소프트웨어를 관리하는 데에도 도움이 됩니다.
    • 또한 태그 및 서비스 메시를 사용하여 서비스 컨텍스트를​ 파악함으로써 조직에 미치는 영향을 이해할 수 있습니다.

    를 사용한 이미지 스캔 사용 사례 ITOM 가시성

    두 개의 ITOM 가시성 앱을 사용하여 컨테이너 이미지를 디스커버리 및 서비스 매핑 패턴 스캔하고 Kubernetes Visibility Agent를 사용할 수 있습니다. 패턴은 , 클라우드 디스커버리, 및 서비스 매핑에서 사용하는 디스커버리기능 세트입니다. Kubernetes 가시성 에이전트는 의 에이전트 클라이언트 수집기기능입니다. Kubernetes Visibility Agent(이전의 CNO-V)는 컨테이너화된 동적 워크로드에 Kubernetes 더 적합하지만 패턴 기반 검색은 비 Kubernetes Docker 컨테이너에 더 적합합니다.

    사용 사례 # 1
    애플리케이션이 컨테이너 이미지로 패키징되면 보안 전문가는 기본 이미지와 최종 이미지에서 취약성을 스캔하고 OS 패키지, 소프트웨어 종속성 및 애플리케이션 레코드를 식별할 수 있습니다. 이는 특히 컨테이너화된 MSSQL Server를 위한 것입니다.
    표 1. 사용 사례 # 1에 대한 가시성 메서드
    가시성 방법 방법 특성 검색된 내용
    디스커버리 및 서비스 매핑 패턴 그리고 Aqua Trivy:
    • 전달자 토큰 및 자격 증명에 액세스할 수 있는 자체 호스팅 또는 클라우드 Kubernetes 배포에 가장 적합합니다.
    • 퍼블릭 및 자체 호스팅 리포지토리 이미지 스캔을 지원합니다.
    • 클라우드 검색이 없는 패턴 기반 검색:
      • 전달자 토큰을 사용합니다.
      • 클러스터당 수동으로 생성된 Kubernetes 검색 일정입니다.
    • 클라우드 검색을 사용한 패턴 기반 검색:
      • 전달자 토큰이 필요하지 않습니다.
      • 클라우드 자격 증명을 사용합니다.
      • 검색 일정 자동 생성 Kubernetes .
    • 를 사용하여 Aqua Trivy이미지를 스캔하는 방법에 대한 자세한 내용은 을 참조하십시오 컨테이너 이미지 스캔.

    다음을 사용하여 디스커버리 및 서비스 매핑 패턴검색됨:

    • Kubernetes 클러스터
    • Kubernetes 서비스
    • Kubernetes 위상수학
    • Docker 컨테이너 및 이미지
    • Kubernetes OpenShift를 포함한 배포
    • 네임스페이스
    • 레이블 및 태그
    • 컨테이너의 소프트웨어
    • 계정 지역 상세 정보는 다음 경우에만 검색할 수 있습니다. 클라우드 디스커버리
    • Docker 패턴은 Linux 호스트에서 실행되는 Docker 엔진의 특정 객체에 대한 데이터를 수집합니다
    자세한 내용은 다음을 참조하십시오.
    Kubernetes 가시성 에이전트 및 Aqua Trivy:
    • 클라우드 네이티브 앱 팀의 배포에 가장 적합합니다.
    • AIOps로 모니터링하는 Kubernetes 선택적 기능입니다.
    • 클라우드 환경의 경우 AWS ECR(퍼블릭 및 프라이빗)만 지원됩니다.

    Kubernetes 가시성 에이전트 기반 검색에는 자격 증명 설정이 필요하지 않으며 MID 서버. ServiceAccount/ClusterRole을 통해 액세스할 수 있습니다. 설치는 Helm 차트 또는 Kubernetes YAML 파일을 통해 이루어집니다. 검색은 거의 실시간으로 실행됩니다.

    탐색기를 사용하여 Kubernetes .SBOM

    가시성 에이전트를 사용하여 Kubernetes 검색됨

    • Kubernetes 네임스페이스
    • 노드 및 포드
    • 배치
    • Statefulsets
    • Daemonsets
    • Replicasets
    • 작업
    • Cronjobs
    • 서비스
    • Docker 컨테이너
    • Docker 이미지
    • 컨테이너 리포지토리
    • 계정 지역 상세 정보는 다음 경우에만 검색할 수 있습니다. 클라우드 디스커버리
    사용 사례 #2
    규정 준수 담당자는 컨테이너 이미지의 종속성에 대한 자세한 목록을 얻고 소프트웨어가 산업 규정을 준수하는지 확인하기 위해 생성할 SBOM 수 있습니다.
    표 2. 사용 케이스 #2에 대한 가시성 메서드
    가시성 방법 방법 특성
    Kubernetes 패턴 또는 Docker 패턴 SBOM 생성은 컨테이너 검사의 일부입니다.
    Kubernetes 가시성 에이전트 SBOM 생성도 컨테이너 검사의 일부이지만 ACC를 사용하는 것은 전체 검색과 지속적인 검색을 모두 수행할 수 있는 유연성이 필요한 조직에 가장 적합합니다.
    사용 사례 #3

    엔지니어가 사용자 지정 구축 이미지에서 결함을 발견했으며 해당 이미지를 사용하여 실행 중인 모든 Kubernetes 포드를 찾아야 합니다.

    표 3. 사용 사례 #3의 가시성 메서드
    가시성 방법 방법 특성 검색된 내용
    Kubernetes패턴 Aqua Trivy 컨테이너 스캔은 필요하지 않습니다. 패턴을 사용하여 포드를 식별할 수 있습니다.
    • Kubernetes 클러스터
    • Kubernetes 컨테이너
    • Kubernetes 서비스
    • 레이블
    • 포드
    • 이미지
    • 태그
    Kubernetes 클라우드 검색이 포함된 패턴 Aqua Trivy 컨테이너 스캔은 필요하지 않습니다. 패턴을 사용하여 포드를 식별할 수 있습니다. 위의 모든 항목과 계정 또는 지역 상세 정보
    사용 사례 #4
    엔지니어는 사용자 지정 구축 이미지에서 결함을 발견하고 해당 이미지를 사용하여 실행 중인 모든 Docker 컨테이너(비 Kubernetes)를 찾아야 합니다.
    가시성 방법 방법 특성 검색된 내용
    실행 중인 Docker VM의 가로 디스커버리(Docker 패턴) Aqua Trivy 컨테이너 스캔은 필요하지 않습니다. 패턴을 사용하여 포드를 식별할 수 있습니다. 보다: Docker 가상화

    를 사용한 이미지 스캔 디스커버리 및 서비스 매핑 패턴

    KubernetesDocker 패턴은 Aqua Trivy 도구와 통합되고 예약된 작업을 실행하여 분당 10개 이미지의 고정 간격으로 컨테이너 이미지 및 OS 패키지를 검색합니다. 스캔하는 동안 패턴은 스캔 상태를 나타냅니다. 패턴은 이미지와 관련된 OS 패키지를 검색합니다. 그런 다음 CI 클래스와 같은 이미지 명령 속성을 찾습니다. 패턴은 명령 속성을 기반으로 애플리케이션 기록을 생성합니다. 또한 패턴은 보강된 스크립트를 사용하여 애플리케이션 기록에 상세 정보를 추가합니다. 그 후 패턴은 OS 패키지와 컨테이너 간의 관계를 매핑합니다.

    데이터의 일부는 테이블에 채워지고 일부는 변환 테이블(비 CMDB 임시 테이블)에 채워집니다 CMDB . 변환 테이블은 패턴과 함께 설치됩니다. 예를 들어 스캔을 통해 얻는 정보에는 원본 레지스트리, 소프트웨어 이름 및 버전이 포함됩니다.