⑤ CloudTrail 이벤트 확인하기 편
AWS 계정을 여러 사용자가 공유하고 있는 A사,
어떤 사용자가 언제 API를 호출했는지 궁금하다면? 🤔
클라우드 계정을 공용으로 사용하는 경우 누가 무엇을 했는지 알 수 없다면 어떻게 될까요?
만약 클라우드 계정에 어떤 사용자가 어떤 리소스에 접근했는지 확인하는 시스템이 없다면, 보안 사고가 발생했을 때 빠르게 대응하기 어렵습니다. 보안 사고를 즉시 인지하거나 대응할 수 없다면 피해 범위는 커지기 마련이죠.
이런 상황을 예방하기 위해서는 누가 어떤 작업을 수행했는지, 언제 이벤트가 발생했는지, 접근한 리소스는 무엇인지 등에 대한 로그 데이터가 필요합니다. 📊
여기서 로그(Log)란 시간의 흐름에 따라 컴퓨터 처리 내용이나 이용 상황을 기록한 것을 의미합니다. 로그 데이터가 있다면 보안 사고가 발생하더라도 원인 규명이나 데이터 복원 조치를 빠르게 할 수 있습니다.
그렇다면 어떤 방법으로 AWS 계정 로그 데이터를 수집하고 관리할 수 있을까요?
로그 데이터를 안전하게 축적하기
앞서 다뤘듯 조직의 보안관리 첫 단계가 ‘로그 관리 및 관리 도구 도입’라고 해도 과언이 아닐 정도로 IT 보안과 로그는 긴밀한 관계입니다.
로그 데이터 관리에서 가장 우선시 되는 것은 로그 축적의 안전성입니다. 로그 데이터가 변조 없이 안전하게 저장되어야 장애나 보안 사고가 발생했을 때 어떠한 위협이 발생했는지 데이터를 기반으로 파악할 수 있습니다.
또한, 보안 사고가 발생한 뒤에도 로그 데이터를 활용함으로써 위협을 예방할 수 있는데요. 네트워크 부정 이용이나 데이터 파괴 방지, 로그 상관 분석을 통해 효율적인 모니터링 체계를 만들 수 있습니다. ⚙
AWS에서는 로그를 안전하게 축적해서 사용자가 AWS 계정을 적절하게 운영하고 있는지 감독하고 검사하는 감사(audit) 서비스를 제공하고 있습니다. 그 중 대표적인 기능이 AWS CloudTrail입니다.
AWS CloudTrail이란?
AWS CloudTrail은 AWS 계정의 API 호출을 기록하고 모니터링할 수 있는 서비스로 저장된 기록은 기본적으로 콘솔에서 90일간 확인할 수 있습니다.
AWS CloudTrail은 AWS 계정의 운영 및 위험 감사, 거버넌스 및 규정 준수를 활성화하는 데 도움이 되는 AWS 서비스입니다. 사용자, 역할 또는 AWS 서비스가 수행하는 작업들은 CloudTrail에 이벤트로 기록됩니다. 이벤트에는 AWS Management Console, AWS Command Line Interface 및 AWS SDK, API에서 수행되는 작업들이 포함됩니다.
CloudTrail 서비스를 통해 로그 이벤트 기록을 확인하고 이벤트 속성 필터를 통해 분석할 수 있습니다.
대표적인 필터링 요소에는 사용자 이름, 이벤트 이름, 리소스 유형, 리소스 이름, 이벤트 소스, 이벤트 ID, AWS 액세스 키 등이 있는데요. 이런 속성을 기반으로 AWS 계정 활동에 대한 가시성을 확보할 수 있습니다. 🔍
로그 이벤트 기록을 다운로드하고 싶다면 최대 90일의 CloudTrail 이벤트가 포함된 CSV 또는 JSON 파일을 받을 수 있습니다.
만약, 90일 이상 CloudTrail 기록을 유지하려면 어떻게 해야 할까요? AWS의 또 다른 기능인 CloudFormation을 활용해서 영구적인 CloudTrail을 생성할 수 있습니다.
AWS CloudFormation 활용법
감사 목적으로 CloudTrail 기록을 사용한다면 AWS CloudFormation을 활용해서 S3 버킷에 기록을 영구 저장하는 방법을 권장합니다. 여기서 AWS CloudFormation이란 인프라 관리를 간소화해 주는 리소스 모델링 서비스입니다.
AWS CloudFormation은 AWS 리소스를 모델링하고 설정하여 리소스 관리 시간을 줄이고 AWS에서 실행되는 애플리케이션에 더 많은 시간을 사용하도록 해 주는 서비스입니다. 필요한 모든 AWS 리소스(예: Amazon EC2 인스턴스 또는 Amazon RDS DB 인스턴스)를 설명하는 템플릿을 생성하면 CloudFormation이 해당 리소스의 프로비저닝과 구성을 담당합니다.
출처: AWS CloudFormation란 무엇입니까?
CloudFormation을 감사에 활용한다면 로그 이벤트를 S3에 파일로 영구적으로 저장함으로써 AWS 계정 활동을 모니터링하게 됩니다. 📥
S3에 로그를 저장하게 되는 만큼 S3 요금 정책에 따라 비용이 발생하게 됩니다. AWS 공식 문서에서 안내하는 요금은 “Amazon S3 요금” 과 같으며 사용량에 따라 차이가 있을 수 있습니다.
자세한 설정 방법은 가비아 AWS의 매뉴얼 “감사 목적으로 CloudTrail 사용”에서 확인하시고 쉽게 따라 하실 수 있습니다.
AWS 계정의 감사와 보안
이제까지 AWS에서 감사를 목적으로 사용하는 CloudTrail 서비스에 대해서 알아보았습니다. CloudTrail 서비스를 사용한다면 로그 분석을 통해 이벤트 중심 보안을 달성할 수 있습니다.
CloudTrail을 사용하면서 비정상적인 이벤트가 감지되었을 때 알림이 필요하다면 “AWS CloudWatch와 연동해서 알림”을 받을 수도 있습니다.
만약, 누군가 AWS 계정에 악의적으로 접근해 로그를 훼손하는 것을 예방하고 싶다면 “여러 AWS 계정 간에 CloudTrail 로그 파일을 공유하는 방법”도 있습니다. IAM 사용자별로 로그 파일을 읽을 수 있는 권한을 부여함으로써 로그를 모니터링하고, 로그 축적의 안정성을 유지할 수 있습니다.
현재 가비아는 AWS의 대표 국내 MSP로서 24시간 모니터링과 장애 대응 등의 클라우드 매니지드 서비스를 제공하고 있습니다.
여기서 클라우드 매니지드 서비스란 문자 그대로 ‘클라우드 인프라 관리 서비스’를 말하며, 고객이 클라우드를 쉽고 효율적으로 사용할 수 있도록 전문 엔지니어가 맞춤형 서비스를 제공합니다.
가비아 AWS 매니지드 서비스를 이용하시면 CloudTrail과 CloudFormation을 활용한 로그 저장을 지원받으실 수 있습니다. 로그 저장 시 발생하는 S3 요금은 매니지드 서비스 이용 요금에 포함됩니다.
자세한 내용이 궁금하다면 지금 바로 가비아 AWS 전문가와 1:1 상담을 받아 보세요!
AWS 보안 가이드 시리즈 보러 가기
AWS 보안 가이드 ① AWS 계정이 해킹됐는데 AWS 책임이 아니라고요?
AWS 보안 가이드 ② 지금 사용하는 비밀번호, 과연 얼마나 안전할까?
AWS 보안 가이드 ③ AWS 요금 폭탄을 피하는 법!
AWS 보안 가이드 ④ IAM 로그인… 반드시 ‘이것’ 해야한다?
AWS 보안 가이드 ⑤ AWS 보안 필수 요소 로그, ‘여기’서 설정하세요! (현재글)
Summary
로그란?
여기서 로그(Log)란 시간의 흐름에 따라 컴퓨터 처리 내용이나 이용 상황을 기록한 것을 의미합니다. 로그 데이터가 있다면 보안 사고가 발생하더라도 원인 규명이나 데이터 복원 조치를 빠르게 할 수 있습니다.
AWS CloudTrail이란?
AWS CloudTrail은 AWS 계정의 API 호출을 기록하고 모니터링할 수 있는 서비스로 저장된 기록은 기본적으로 콘솔에서 90일간 확인할 수 있습니다. CloudTrail 서비스를 통해 로그 이벤트 기록을 확인하고 필터링을 통해 분석할 수 있습니다.
AWS CloudFormation이란?
AWS CloudFormation이란 인프라 관리를 간소화해 주는 리소스 모델링 서비스입니다. 리소스 관리 시간을 줄이고 AWS에서 실행되는 애플리케이션에 더 많은 시간을 사용하도록 해 주는 서비스이기도 합니다.