Amazon Web Services 한국 블로그

Amazon GuardDuty, Amazon ECS 및 AWS Fargate에서 런타임 보안 위협 탐지

오늘 우리는 AWS FargateAmazon Elastic Compute Cloud(Amazon EC2) 모두에서 실행되는 Amazon Elastic Container Service(Amazon ECS) 클러스터의 잠재적인 런타임 보안 문제를 탐지하는 데 도움이 되는 Amazon GuardDuty ECS 런타임 모니터링을 발표합니다.

GuardDuty는 다양한 AWS 데이터 소스에 대해 기계 학습(ML), 이상 탐지, 네트워크 모니터링 및 악성 파일 탐지를 결합합니다. 위협이 탐지되면 GuardDuty는 보안 조사 결과를 생성하고 AWS Security Hub, Amazon EventBridgeAmazon Detective에 자동으로 전송합니다. 이러한 통합은 AWS 및 파트너 서비스에 대한 모니터링을 중앙 집중화하고, 자동 응답을 시작하고, 보안 조사를 시작하는 데 도움이 됩니다.

GuardDuty ECS 런타임 모니터링은 런타임 위협을 나타낼 수 있는 파일 액세스, 프로세스 실행 및 네트워크 연결과 같은 런타임 이벤트를 탐지하는 데 도움이 됩니다. 수백 개의 위협 벡터와 지표를 검사하고 30가지 이상의 다양한 조사 결과 유형을 생성할 수 있습니다. 예를 들어 권한 상승 시도, 암호화폐 채굴자 또는 멀웨어에 의해 생성된 활동, 공격자의 정찰을 암시하는 활동을 탐지할 수 있습니다. 이는 GuardDuty의 기본 탐지 범주에 추가됩니다.

GuardDuty ECS 런타임 모니터링은 개별 컨테이너 런타임 동작에 대한 가시성을 추가하는 관리형 경량 보안 에이전트를 사용합니다. AWS Fargate를 사용하면 에이전트를 설치, 구성, 관리 또는 업데이트할 필요가 없습니다. AWS에서 이 작업을 수행합니다. 이렇게 하면 클러스터 관리가 간소화되고 일부 작업을 모니터링하지 않은 상태로 남겨둘 위험이 줄어듭니다. 또한 보안 태세를 개선하고 런타임 위협에 대한 규제 준수 및 인증을 통과하는 데도 도움이 됩니다.

GuardDuty ECS 런타임 모니터링 결과는 콘솔에서 직접 확인할 수 있습니다. 결과를 여러 AWS 서비스 또는 보안 운영 센터(SOC)에 연결된 서드 파티 모니터링 시스템으로 전송하도록 GuardDuty를 구성할 수도 있습니다.

이번 출시를 통해 Amazon Detective는 이제 GuardDuty ECS 런타임 모니터링으로부터 보안 결과를 받아 데이터 컬렉션에 포함하여 분석 및 조사를 수행합니다. 탐지는 잠재적인 보안 문제나 의심스러운 활동의 근본 원인을 분석, 조사하고 신속하게 식별하는 데 도움을 줍니다. AWS 리소스에서 로그 데이터를 수집하고 기계 학습, 통계 분석 및 그래프 이론을 사용하여 보안 조사를 쉽게 수행할 수 있는 연결된 데이터 세트를 구축합니다.

AWS Fargate에서 GuardDuty ECS 런타임 모니터링 구성
이 데모에서는 AWS Fargate에 제공된 환경을 보여 드리겠습니다. Amazon ECS를 사용할 때는 EC2 인스턴스에 GuardDuty 에이전트가 설치되어 있는지 확인해야 합니다. 에이전트를 수동으로 설치하거나 에이전트를 AMI에 포함하거나 GuardDuty에서 제공하는 AWS Systems Manager 문서를 사용하여 에이전트를 설치할 수 있습니다(콘솔에서 Systems Manager로 이동하여 문서를 선택한 다음 GuardDuty를 검색). 문서에는 EC2 인스턴스에 에이전트를 설치하는 방법에 대한 자세한 내용이 나와 있습니다.

GuardDuty 관리자 계정으로 운영하는 경우 조직 수준에서 GuardDuty ECS 런타임 모니터링을 활성화하여 모든 조직의 AWS 계정에 있는 모든 ECS 클러스터를 모니터링할 수 있습니다.

이 데모에서는 AWS Management Console을 사용하여 런타임 모니터링을 활성화합니다. 콘솔에서 GuardDuty ECS 런타임 모니터링을 활성화하면 모든 클러스터에 영향을 미칩니다.

GuardDuty가 Fargate에 GuardDuty ECS 런타임 모니터링 에이전트를 자동으로 배포하도록 하려면 GuardDuty agent management(GuardDuty 에이전트 관리)를 활성화합니다. 자동 관리에서 개별 클러스터를 제외하려면 GuardDutyManaged=false로 태그를 지정할 수 있습니다. 콘솔에서 ECS 런타임 모니터링을 활성화하기 전에 클러스터에 태그를 지정해야 합니다. 자동 관리 옵션을 사용하지 않으려면 옵션을 비활성화된 상태로 두고 GuardDutyManaged=True 태그를 사용하여 모니터링할 클러스터를 선택할 수 있습니다.

Amazon ECS 또는 AWS Fargate 클러스터 관리자는 클러스터의 태그를 관리할 권한이 있어야 합니다.

작업에 연결하는 IAM TaskExecutionRole에는 프라이빗 ECR 리포지토리에서 GuardDuty 에이전트를 다운로드할 수 있는 권한이 있어야 합니다. 이는 AmazonECSTaskExecutionRolePolicy 관리형 IAM 정책을 사용할 때 자동으로 수행됩니다.

런타임 모니터링 및 에이전트 관리가 활성화된 경우의 콘솔의 보기는 다음과 같습니다.

GuardDuty ECS로 모니터링 활성화

모든 ECS 클러스터에서 적용 범위 통계를 평가하여 보안 에이전트의 배포를 추적할 수 있습니다.

GuardDuty ECS 클러스터 적용 범위

모니터링이 활성화되면 더 이상 수행해야 할 작업은 없습니다. 간단한 데모 클러스터에서 어떤 모니터링 결과를 감지하는지 살펴보겠습니다.

GuardDuty ECS 런타임 보안 결과 확인
GuardDuty ECS 런타임 모니터링에서 잠재적 위협을 탐지하면 이러한 위협이 다음과 같은 목록에 표시됩니다.

ECS 런타임 모니터링 - 모니터링 결과 목록

이에 대한 자세한 내용을 보려면 특정 모니터링 결과를 선택합니다.

ECS 런타임 모니터링 - 모니터링 결과 세부 정보

주요 사항
기본적으로 Fargate 작업은 변경할 수 없습니다. GuardDuty는 기존 작업의 컨테이너를 모니터링하기 위해 에이전트를 배포하지 않습니다. 컨테이너에서 이미 실행 중인 작업을 모니터링하려면 GuardDuty ECS 런타임 모니터링을 활성화한 후 작업을 중지하고 시작해야 합니다. 마찬가지로, Amazon ECS 서비스를 사용할 때는 에이전트를 통해 작업이 다시 시작되도록 새 배포를 강제로 실행해야 합니다. 이미 언급했듯이 작업에 Amazon ECR에서 GuardDuty 모니터링 에이전트를 다운로드할 수 있는 IAM 권한이 있는지 확인합니다.

GuardDuty 에이전트는 성능에 거의 영향을 주지 않도록 설계했지만 Fargate 작업 규모 계산 시 이에 대한 계획을 세워야 합니다.

자동 에이전트 관리를 선택하면 GuardDuty는 에이전트가 GuardDuty API와 통신할 수 있도록 VPC 엔드포인트도 생성합니다. 일정 기간이 지난 후 클러스터를 삭제하기 위해(예: 지속적 통합 시나리오의 경우) CDK 또는 CloudFormation 스크립트로 클러스터를 생성하는 경우, CloudFormation에서 스택을 삭제하려면 VPC 엔드포인트를 수동으로 삭제해야 한다는 점을 명심하세요.

요금 및 가용성
이제 AWS Fargate와 Amazon EC2 인스턴스에서 GuardDuty ECS 런타임 모니터링을 사용할 수 있습니다. GuardDuty ECS 런타임 모니터링을 사용할 수 있는 리전의 전체 목록을 보려면 리전별 기능 사용 가능 여부 페이지를 참조하세요.

GuardDuty ECS 런타임 모니터링을 30일 동안 무료로 사용해 볼 수 있습니다. GuardDuty를 처음 활성화하는 경우 GuardDuty ECS 런타임 모니터링을 명시적으로 활성화해야 합니다. 평가 기간이 끝나면 모니터링 에이전트의 시간당 vCPU별 요금이 청구됩니다. 모든 세부 정보는 GuardDuty 요금 페이지에서 확인할 수 있습니다.

컨테이너에 대한 위협 관련 인사이트를 얻고 지금 GuardDuty ECS 런타임 모니터링을 활성화합니다.

— seb