본문 바로가기
일반IT/IT보안

AWS 계정 보안 및 침해 사고 대응 완벽 가이드

by gasbugs 2025. 7. 20.

AWS 클라우드를 안전하게 활용하기 위해서는 계정 보안에 대한 깊은 이해와 침해 사고 발생 시 신속하고 효과적으로 대응할 수 있는 준비가 필수적입니다. 이 글에서는 AWS 계정 보안의 주요 패턴, 공동 책임 모델, 필수 보안 설정, 그리고 실제 사고 발생 시 대처 방법에 대해 상세히 다룹니다.

1. AWS 보안 사고의 주요 패턴 이해하기

AWS 계정에서 발생하는 보안 사고는 크게 두 가지 주요 패턴으로 나눌 수 있습니다.

가장 흔한 유형: 엑세스 키 및 시크릿 엑세스 키 유출 이는 GitHub와 같은 코드 저장소, SNS, IoT 기기, 모바일/웹 애플리케이션, 또는 안전하지 않게 설정된 서버나 데스크톱 환경을 통해 발생합니다. 개발자가 실수로 코드를 공개하거나, 설정 오류로 인해 민감한 정보가 노출될 때 주로 발생합니다.

중요 권한 탈취: 루트 계정 또는 중요 권한을 가진 IAM 계정 탈취 루트 계정 공유, 안전하지 않은 네트워크 환경에서의 접근, 또는 허술한 패스워드 관리로 인해 발생할 수 있습니다. 공격자는 이 계정을 통해 시스템 전반에 대한 통제권을 획득하려 합니다.

해킹 진행 단계 공격자는 일반적으로 다음과 같은 단계를 거쳐 시스템을 침해합니다.

  1. 권한 상승 시도: 초기 접근 권한을 넘어 관리자 권한을 획득하려 합니다.
  2. 지속적 공격 경로 확보: IAM 롤 생성, 악성 코드 설치 등을 통해 시스템에 지속적으로 접근할 수 있는 경로를 만듭니다.
  3. 리소스 생성 또는 데이터 탈취: ECS를 활용한 스팸 메일 발송, 랜섬웨어 공격, 또는 민감한 데이터 탈취 등을 시도합니다.

2. AWS 공동 책임 모델 이해하기

AWS 클라우드의 보안은 AWS와 사용자 간의 '공동 책임 모델'을 기반으로 합니다.

  • 클라우드 자체의 보안 (AWS 책임): AWS는 글로벌 인프라, 하드웨어, 네트워크, OS 소프트웨어 등 클라우드 자체의 보안을 책임집니다.
  • 클라우드 내의 보안 (고객 책임): 사용자는 클라우드 내에 배포하는 서비스, 데이터, 네트워크 및 방화벽 설정, IAM 권한 관리 등 클라우드 환경 내에서의 보안을 책임집니다.

서비스 유형에 따라 책임 범위가 달라집니다. 예를 들어, EC2와 같은 IaaS(Infrastructure as a Service)는 사용자의 책임 범위가 넓고, Lambda와 같은 서버리스 서비스는 AWS의 책임 범위가 더 넓습니다.

3. 필수적인 AWS 계정 기본 보안 설정

계정 생성 후 즉시 적용해야 할 핵심 보안 설정은 다음과 같습니다.

  • 루트 계정 사용 금지 및 MFA 설정: 루트 계정은 생성 후 즉시 MFA(Multi-Factor Authentication)를 설정하고, 일상적인 작업에는 관리자 권한을 가진 IAM 사용자를 생성하여 사용해야 합니다. 하드웨어 기반 MFA를 사용하고, 분실에 대비하여 안전한 곳에 보관하는 것이 좋습니다.
  • 중요 IAM 계정 MFA 필수 설정: 리소스 생성, 변경, 삭제 권한을 가진 모든 중요 IAM 계정에는 MFA를 필수로 설정해야 합니다.
  • 루트 계정 엑세스 키 삭제: 불필요한 루트 계정 엑세스 키는 즉시 삭제하여 보안 위협을 최소화합니다.
  • 비용 알림 설정: 예상치 못한 비용 발생을 감지하기 위해 비용 알림을 설정하여 비정상적인 활동을 조기에 파악합니다.
  • 대체 연락처 등록: 결제, 운영, 보안 관련 중요 알림을 받을 수 있도록 팀 이메일 주소 등을 대체 연락처로 등록합니다.
  • AWS 이벤트 로그 관리 (CloudTrail): CloudTrail을 통해 AWS 계정의 모든 API 활동을 기록하고 모니터링해야 합니다. 기본 90일 기록 외에 장기 보관을 위해 S3 버킷에 저장하도록 설정하며, 필요시 데이터 이벤트 로깅도 고려합니다.
  • IAM 권한 관리: 사용자 그룹을 활용하여 권한을 체계적으로 관리하고, 최소 권한 원칙을 따르는 것이 중요합니다. 초기에는 AWS 관리형 직무 정책(AdministratorAccess, PowerUserAccess 등)을 활용할 수 있습니다.
  • Amazon GuardDuty 사용: 기본적인 보안 위협 탐지를 위해 Amazon GuardDuty를 활성화하여 계정 내 의심스러운 활동을 자동으로 감지하도록 합니다.

4. 보안 사고 발생 시 효과적인 대처 방법

만약 AWS 계정에서 보안 사고가 발생했다면, 다음 단계를 따라 신속하게 대응해야 합니다.

  • AWS 서포트 케이스 생성: 가장 먼저 AWS 서포트 케이스를 생성합니다. 베이직 플랜 사용자도 계정 및 결제 관련 보안 문제에 대해서는 무료로 케이스를 열 수 있습니다.
  • 의심스러운 IAM 엔티티 확인 및 조치:
    • IAM 자격 증명 보고서 활용: 4시간마다 업데이트되는 보고서를 통해 계정 내 모든 IAM 사용자 및 자격 증명의 상태를 확인합니다.
    • IAM Access Analyzer의 외부 엑세스 분석기 활용: 외부 계정에서 접근 가능한 리소스가 있는지 확인하여 불필요한 접근 경로를 차단합니다.
    • CloudTrail 로그 확인: CloudTrail 로그를 분석하여 'root' 사용자 활동, 'CreateUser', 'CreateRole', 'CreateAccessKey' 등 의심스러운 API 호출 기록을 확인하고, 이를 기반으로 침해 경로와 범위를 파악합니다.
  • 피해 금액 지원 확인: 신속하고 적극적인 대응은 AWS로부터 피해 금액 지원을 받는 데 중요합니다. 반복적인 사고 발생 시에는 지원이 어려울 수 있으므로, 재발 방지 노력이 필수적입니다.

5. 추가 도움이 되는 자료

AWS 보안 강화를 위한 추가 자료들도 활용할 수 있습니다.

  • AWS Samples - Service Screener: AWS 리소스를 자동으로 점검하고 잠재적인 위험 요소를 확인할 수 있는 도구입니다.
  • GenAI를 이용한 CloudTrail 로그 분석 워크샵/샘플 코드: CloudTrail 로그 분석을 자동화하고 효율화하는 데 도움이 되는 자료입니다.

AWS 계정 보안은 지속적인 관심과 노력이 필요한 영역입니다. 이 가이드가 여러분의 AWS 환경을 더욱 안전하게 보호하는 데 도움이 되기를 바랍니다.

 

https://pawait.africa/a-beginners-guide-to-aws-iam-what-is-iam/