Runtime Monitoring을 사용하여 무단 동작 식별 - Amazon Elastic Container Service

Runtime Monitoring을 사용하여 무단 동작 식별

Amazon GuardDuty는 AWS 환경 내 계정, 컨테이너, 워크로드 및 데이터를 보호하는 데 도움이 되는 위협 감지 서비스입니다. GuardDuty는 기계 학습(ML) 모델, 이상 및 위협 감지 기능을 통해 다양한 로그 소스와 런타임 활동을 지속적으로 모니터링하여 사용자 환경의 잠재적 보안 위험과 악의적 활동을 식별하고 우선순위를 지정합니다.

GuardDuty의 Runtime Monitoring은 AWS 로그 및 네트워킹 활동을 지속적으로 모니터링하여 악의적 동작 또는 무단 동작을 식별함으로써 Fargate 및 EC2 컨테이너 인스턴스에서 실행되는 워크로드를 보호합니다. Runtime Monitoring은 파일 액세스, 프로세스 실행 및 네트워크 연결과 같은 호스트 내 동작을 분석하는 경량의 완전관리형 GuardDuty 보안 에이전트를 사용합니다. 여기에는 권한 에스컬레이션, 노출된 자격 증명 사용 또는 악의적인 IP 주소 및 도메인과의 통신, 그리고 Amazon EC2 인스턴스 및 컨테이너 워크로드에 존재하는 맬웨어 같은 문제가 포함됩니다. 자세한 내용은 GuardDuty 사용 설명서의 GuardDuty Runtime Monitoring을 참조하세요.

보안 관리자는 GuardDuty의 AWS Organizations에서 단일 또는 여러 계정에 대해 Runtime Monitoring을 활성화합니다. 또한 Fargate를 사용할 때 GuardDuty가 GuardDuty 보안 에이전트를 자동으로 배포할지 여부도 선택합니다. 모든 클러스터는 자동으로 보호되며 GuardDuty는 사용자를 대신하여 보안 에이전트를 관리합니다.

다음과 같은 경우에도 GuardDuty 보안 에이전트를 수동으로 구성할 수 있습니다.

  • EC2 컨테이너 인스턴스 사용

  • 클러스터 수준에서 Runtime Monitoring을 활성화하려면 세분화된 제어가 필요합니다.

Runtime Monitoring을 사용하려면 보호되는 클러스터를 구성하고 EC2 컨테이너 인스턴스에 GuardDuty 보안 에이전트를 설치 및 관리해야 합니다.

Amazon ECS에서 Runtime Monitoring이 작동하는 방식

Runtime Monitoring은 애플리케이션의 요청, 액세스 확보, 기본 시스템 리소스 소비 방식에 관한 Amazon ECS 워크로드 활동을 모니터링하는 경량 GuardDuty 보안 에이전트를 사용합니다.

Fargate 작업의 경우 GuardDuty 보안 에이전트는 각 작업의 사이드카 컨테이너로 실행됩니다.

EC2 컨테이너 인스턴스의 경우 GuardDuty 보안 에이전트는 인스턴스에서 프로세스로 실행됩니다.

GuardDuty 보안 에이전트는 다음 리소스에서 데이터를 수집하고, GuardDuty로 데이터를 전송하여 처리합니다. 조사 결과는 GuardDuty 콘솔에서 볼 수 있습니다. 또한 집계 및 문제 해결을 위해 다른 AWS 서비스(예: AWS Security Hub) 또는 타사 보안 공급업체에 전송할 수도 있습니다. 조사 결과를 보고 관리하는 방법에 대한 자세한 내용은 Amazon GuardDuty 사용 설명서의 Managing Amazon GuardDuty findings를 참조하세요.

고려 사항

Runtime Monitoring을 사용할 때는 다음 사항을 고려합니다.

  • Runtime Monitoring에는 관련 비용이 있습니다. 자세한 내용은 Amazon GuardDuty 요금을 참조하세요.

  • Amazon ECS Anywhere에서는 Runtime Monitoring이 지원되지 않습니다.

  • Runtime Monitoring은 Windows 운영 체제에서 지원되지 않습니다.

  • Fargate에서 Amazon ECS Exec을 사용하는 경우 GuardDuty 보안 에이전트가 사이드카 컨테이너로 실행되기 때문에 컨테이너 이름을 지정해야 합니다.

  • GuardDuty 보안 에이전트 사이드카 컨테이너에서 Amazon ECS Exec를 사용할 수 없습니다.

  • 클러스터 수준에서 Runtime Monitoring을 제어하는 IAM 사용자는 태그 지정을 위한 적절한 IAM 권한을 보유해야 합니다. 자세한 내용은 IAM 사용 설명서의 IAM 튜토리얼: 태그를 기반으로 AWS 리소스에 액세스할 수 있는 권한 정의를 참조하세요.

  • Fargate 작업에서는 작업 실행 역할을 사용해야 합니다. 이 역할은 사용자를 대신하여 Amazon ECR 프라이빗 리포지토리에 저장된 GuardDuty 보안 에이전트를 검색, 업데이트 및 관리할 권한을 작업에 부여합니다.

리소스 사용률

클러스터에 추가한 태그는 클러스터 태그 할당량 계산에 포함됩니다.

GuardDuty 에이전트 사이드카 컨테이너는 작업 정의 할당량당 컨테이너 수 계산에 포함되지 않습니다.

대부분의 보안 소프트웨어와 마찬가지로 GuardDuty에도 약간의 오버헤드가 있습니다. Fargate 메모리 제한에 대한 자세한 내용은 GuardDuty 사용 설명서의 CPU and memory limits를 참조하세요. Amazon EC2 메모리 제한에 대한 자세한 내용은 CPU and memory limit for GuardDuty agent를 참조하세요.