제3자가 계정 도용, 암호화, 데이터 도용을 목적으로 시스템에 침입하기 위해 만든 코드를 랜섬웨어라고 부릅니다. Google Cloud 는 랜섬웨어 공격을 완화하기 위해 공격에 대해 식별, 보호, 감지, 대응, 복구하는 데 필요한 제어 기능을 제공합니다. 이러한 제어 기능을 통해 다음을 수행할 수 있습니다.
- 위험을 평가합니다.
- 위협으로부터 비즈니스를 보호합니다.
- 지속적 운영 상태를 유지합니다.
- 빠른 대응 및 복구를 지원합니다.
이 문서는 보안 설계자와 관리자를 대상으로 합니다. 여기에서는 랜섬웨어 공격의 진행 단계와 Google Cloud 가 조직의 랜섬웨어 공격 영향을 완화하는 방법을 설명합니다.
랜섬웨어 공격 순서
랜섬웨어 잠재적인 취약점을 찾기 위한 대규모 캠페인으로 시작되거나, 특정 대상을 겨냥한 지향형 캠페인으로 시작될 수 있습니다. 지향형 캠페인은 식별 및 정찰 단계에서 시작되며, 이 단계에서 공격자는 어떤 조직이 취약한지, 그리고 어떤 공격 벡터를 사용할지를 결정합니다.
랜섬웨어 공격에는 다양한 공격 벡터가 존재합니다. 가장 일반적인 공격 벡터는 악성 URL을 포함한 피싱 이메일 또는 공개된 소프트웨어 취약점을 악용하는 것입니다. 이러한 소프트웨어 취약점은 조직에서 사용하는 소프트웨어에 있을 수도 있고, 소프트웨어 공급망 내에 존재할 수도 있습니다. 랜섬웨어 공격자는 조직 자체뿐 아니라 그 공급망과 고객까지도 공격 대상으로 삼습니다.
초기 공격이 성공하면, 랜섬웨어는 시스템에 자기 자신을 설치하고 C&C(Command and Control) 서버에 연결하여 암호화 키를 가져옵니다. 랜섬웨어가 네트워크 전체로 퍼지면서 리소스를 감염시키고, 가져온 키를 이용해 데이터를 암호화하며, 데이터를 외부로 유출할 수 있습니다. 공격자는 일반적으로 암호화폐 형태로 몸값을 요구하며, 그 대가로 복호화 키를 제공하겠다고 합니다.
다음 다이어그램은 이전 단락에서 설명한 전형적인 랜섬웨어 공격 시퀀스를 요약한 것으로, 식별 및 정찰 단계에서 데이터 유출 및 몸값 요구 단계에 이르기까지의 과정을 보여줍니다.
랜섬웨어는 감지하기 어려운 경우가 많습니다. 따라서 예방, 모니터링, 감지 기능을 미리 준비하고 공격이 발견되는 즉시 빠르게 대응할 수 있도록 준비하는 것이 매우 중요합니다.
Google Cloud의 보안 및 복원력 제어 기능
Google Cloud 에는 고객이 랜섬웨어 공격으로부터 보호받을 수 있도록 지원하는 기본 제공되는 보안 및 복원력 제어 기능이 포함되어 있습니다. 이러한 제어 기능에는 다음이 포함됩니다.
- 정보 처리 수명 주기 전반에서 보안을 고려하여 설계된 글로벌 인프라
- 모니터링, 위협 감지, 데이터 손실 방지, 액세스 제어 등 다양한 Google Cloud 제품과 서비스에 기본 제공되는 감지 기능
- Assured Workloads와 같은 기본 제공 예방 제어 기능
- 리전별 클러스터 및 전역 부하 분산기를 통한 고가용성 기능
- 확장 가능한 서비스 기반의 기본 제공 백업 기능
- 코드형 인프라와 구성 가드레일을 활용한 자동화 기능
Google Threat Intelligence, VirusTotal, Mandiant Digital Threat Monitoring은 Google 인프라 및 제품 전반에서 랜섬웨어를 포함한 여러 유형의 멀웨어를 추적하고 이에 대응합니다. Google Threat Intelligence는 Google Cloud 제품을 위한 위협 인텔리전스를 개발하는 전문 연구팀입니다. VirusTotal은 멀웨어 데이터베이스이자 시각화 솔루션으로, 조직 내에서 멀웨어가 어떻게 작동하는지를 더 잘 이해하도록 돕습니다. Mandiant Digital Threat Monitoring 및 기타 Mandiant 서비스는 위협 연구, 컨설팅, 사고 대응 지원을 제공합니다.
기본 제공되는 보안 제어 기능에 대한 자세한 내용은 Google 보안 개요와 Google 인프라 보안 설계 개요를 참고하세요.
Google Workspace, Chrome 브라우저, Chromebook의 보안 및 복원 제어 수단
Google Cloud내의 제어 기능 외에도, Google Workspace, Google Chrome 브라우저, Chromebook와 같은 다른 Google 제품에도 조직을 랜섬웨어 공격으로부터 보호할 수 있는 보안 제어 기능이 포함되어 있습니다. 예를 들어 Google 제품은 원격 근무자가 사용자의 신원(identity) 및 상황(예: 위치 또는 IP 주소)을 기준으로 어디서든 리소스에 액세스할 수 있도록 하는 보안 제어 기능을 제공합니다.
앞선 랜섬웨어 공격 순서 섹션에 설명했듯이, 이메일은 많은 랜섬웨어 공격의 핵심 벡터입니다. 이메일은 사용자 인증 정보를 탈취하여 불법적으로 네트워크에 액세스하거나, 랜섬웨어 바이너리를 직접 배포하는 데 악용될 수 있습니다. Gmail의 고급 피싱 및 멀웨어 방지 기능은 이메일 격리, 위험한 첨부파일 유형 차단, 인바운드 스푸핑 이메일 방어 등을 위한 제어 기능을 제공합니다. 또한 보안 샌드박스는 첨부파일 내 미확인 멀웨어가 있는지 감지하도록 설계되었습니다.
Chrome 브라우저에는 사용자가 감염되거나 악성 사이트에 액세스하려 할 때 경고를 제공하는 Google 세이프 브라우징 기능이 포함되어 있습니다. 또한 샌드박스 및 사이트 격리 기능은 동일한 탭 내의 여러 다른 프로세스 간에 악성 코드가 확산되는 것을 방지합니다. 비밀번호 보호 기능은 기업용 비밀번호가 개인 계정에서 사용될 때 알림을 제공하고, 사용자가 저장한 비밀번호가 온라인 침해 사고로 유출되었는지 확인합니다. 이 경우 브라우저는 사용자가 비밀번호를 변경하도록 알림을 표시합니다.
다음은 Chromebook에서 피싱 및 랜섬웨어 공격으로부터 보호하기 위한 주요 기능입니다.
- 읽기 전용 운영체제(Chrome OS): 지속적이고 백그라운드에서 자동 업데이트되도록 설계되어 있습니다. Chrome OS에는 최신 취약점을 방어하고 애플리케이션과 확장 프로그램이 시스템을 수정하지 못하도록 보장하는 제어 기능이 포함되어 있습니다.
- 샌드박싱: 각 애플리케이션이 격리된 환경에서 실행되므로, 하나의 유해한 애플리케이션이 다른 애플리케이션을 쉽게 감염시킬 수 없습니다.
- 자체 검사 부팅: Chromebook이 부팅되는 동안 시스템이 변경되지 않았는지를 검사하도록 설계되어 있습니다.
- 세이프 브라우징: Chrome은 주기적으로 최신의 안전하지 않은 사이트 목록을 다운로드합니다. 이러한 목록을 기준으로 사용자가 방문하는 각 사이트의 URL과 다운로드하는 파일을 검사합니다.
- Google 보안 칩: 운영체제를 악의적인 변조로부터 보호합니다.
조직의 공격 표면을 줄이기 위해, 주로 브라우저 환경에서 작업하는 사용자는 Chromebook 사용을 고려해 보시기 바랍니다.
Google Cloud에서 랜섬웨어 공격을 완화하기 위한 권장사항
기업 리소스 및 데이터를 랜섬웨어 공격으로부터 보호하기 위해서는 온프레미스 및 클라우드 환경 전반에 걸쳐 다층적 제어 체계를 구축해야 합니다.
다음 섹션에서는 조직이 Google Cloud에서 랜섬웨어 공격을 식별, 예방, 감지, 대응할 수 있도록 지원하는 권장사항을 설명합니다.
위험 및 자산 식별
다음은Google Cloud에서 위험과 자산을 식별하기 위한 권장사항입니다.
- Cloud 애셋 인벤토리를 사용하여 Google Cloud의 리소스 인벤토리를 최대 5주간 유지합니다. 변경사항을 분석하기 위해 자산 메타데이터를 BigQuery로 내보냅니다.
- Security Command Center 내의 감사 관리자 및 공격 경로 시뮬레이션과 위험 평가를 활용해 현재 위험 프로필을 평가합니다. 위험 보호 프로그램을 통해 제공되는 사이버 보험 옵션을 검토합니다.
- Sensitive Data Protection을 사용하여 민감한 정보를 탐지하고 분류합니다.
리소스 및 데이터 액세스 제어
다음은 Google Cloud리소스 및 데이터 액세스를 제한하기 위한 권장 사항입니다.
- Identity and Access Management(IAM)를 사용하여 세분화된 액세스 권한을 설정합니다. 또한 역할 추천자, 정책 분석 도구, 클라우드 인프라 사용 권한 관리(CIEM)를 사용해 정기적으로 권한을 분석합니다.
- 서비스 계정을 높은 권한이 부여된 ID로 간주합니다. 워크로드 아이덴티티 제휴를 통한 키 없는 인증을 고려하고, 권한 범위를 적절하게 제한합니다. 서비스 계정 보호에 대한 자세한 내용은 서비스 계정 보안 권장사항을 참조하세요.
- Cloud ID를 통해 모든 사용자에게 다중 인증(MFA)을 의무화하고, 피싱 방지용 Titan 보안 키를 사용하도록 합니다.
핵심 데이터 보호
민감한 정보를 보호하기 위해 다음 권장사항을 고려하세요.
- 데이터를 저장하는 클라우드 스토리지 옵션에 중복 구성(N+2)을 설정합니다. Cloud Storage를 사용하는 경우 객체 버전 관리 또는 버킷 잠금 기능을 사용 설정할 수 있습니다.
- 데이터베이스(예: Cloud SQL) 및 파일 저장소(예: Filestore)의 백업을 구현하고 정기적으로 테스트하며, 복사본을 격리된 위치에 저장합니다. 전체 워크로드 백업을 위해 백업 및 DR 서비스를 고려합니다. 복구 기능이 제대로 작동하는지 자주 검증합니다.
- 키를 정기적으로 순환하고 키 관련 활동을 모니터링합니다. 고객 제공 키(CSEK) 또는 Cloud External Key Manager(Cloud EKM)를 사용하는 경우, 강력한 외부 백업 및 키 순환 프로세스를 보장해야 합니다.
네트워크 및 인프라 보호
네트워크와 인프라를 보호하기 위해 다음 권장사항을 고려하세요.
- Terraform과 같은 코드형 인프라 도구를 사용하여 엔터프라이즈 기반 청사진을 보안 기준선으로 삼으세요. 이를 통해 검증된 안정 상태를 보장하고, 빠르고 일관된 배포를 구현할 수 있습니다.
- VPC 서비스 제어를 사용 설정하여 리소스와 데이터를 격리된 경계 내에서 보호합니다. Cloud Load Balancing과 방화벽 규칙을 함께 사용하고, Cloud VPN 또는 Cloud Interconnect를 통해 보안 연결을 설정하여 하이브리드 환경을 보호합니다.
다음과 같은 제한적 조직 정책을 구현합니다.
- 새 Vertex AI Workbench 노트북 및 인스턴스의 공개 IP 액세스 제한
- Cloud SQL 인스턴스의 공개 IP 액세스 제한
- VM 직렬 포트 액세스 사용 중지
- 보안 VM
워크로드 보호
워크로드를 보호하기 위해 다음 권장사항을 고려하세요.
- 소프트웨어 개발 수명 주기의 모든 단계에 보안을 통합합니다. GKE 워크로드의 경우 신뢰할 수 있는 빌드, 애플리케이션 격리, 포드 격리 등 소프트웨어 공급망 보안을 구현합니다.
- Cloud Build를 사용하여 빌드 단계를 추적하고 Artifact Registry에서 컨테이너 이미지에 대한 취약점 스캔을 완료합니다. Binary Authorization을 사용하여 이미지가 보안 기준을 충족하는지 확인합니다.
- Google Cloud Armor를 사용하여 레이어 7 필터링 및 일반적인 웹 공격에 대한 보호를 구현합니다.
- GKE 자동 업그레이드 및 유지보수 기간을 사용합니다. Cloud Build에서 코드를 커밋할 때마다 자동 빌드 및 취약점 스캔이 수행되도록 자동화합니다.
공격 감지
공격을 감지하기 위해 다음 권장사항을 고려하세요.
- Cloud Logging을 사용하여 Google Cloud 의 서비스 로그를 관리 및 분석하고 Cloud Monitoring을 통해 서비스 및 리소스의 성능을 측정합니다.
- Security Command Center를 사용하여 잠재적인 공격을 감지하고 알림을 분석합니다.
- 심층 보안 분석과 위협 헌팅을 위해 Google Security Operations와 통합합니다.
사고 대응 계획
비즈니스 연속성 계획 및 재해 복구 계획을 수립합니다.
랜섬웨어 사고 대응 플레이북을 작성하고 모의 훈련을 수행합니다. 복구 절차를 정기적으로 연습하여 대비 상태를 유지하고, 부족한 부분을 식별합니다.
공격 보고 의무를 이해하고, 플레이북에 관련 기관 연락처 정보를 포함합니다.
추가적인 보안 권장사항은 Well-Architected Framework: 보안, 개인 정보 보호, 규정 준수 영역을 참조하세요.
공격 대응 및 복구
랜섬웨어 공격이 감지되면 사고 대응 계획을 즉시 활성화하세요. 사고가 오탐이 아니며 실제로Google Cloud 서비스에 영향을 미치는 것이 확인되면 P1 지원 케이스를 개설하세요. Cloud Customer Care는 Google Cloud: 기술 지원 서비스 가이드라인에 명시된 절차에 따라 대응합니다.
계획이 활성화되면 조직 내에서 사고 조정 및 해결 프로세스에 참여해야 하는 팀을 소집합니다. 사고를 조사하고 해결하기 위한 도구 및 프로세스가 사전에 준비되어 있는지 확인합니다.
사고 대응 계획에 따라 랜섬웨어를 제거하고 환경을 정상 상태로 복구합니다. 공격의 심각도와 사용 설정된 보안 제어 수준에 따라 계획에는 다음과 같은 활동이 포함될 수 있습니다.
- 감염된 시스템 격리
- 정상 백업에서의 복구
- CI/CD 파이프라인을 사용하여 이전의 검증된 정상 상태로 인프라 복원
- 취약점이 제거되었는지 검증
- 유사한 공격에 노출될 수 있는 모든 시스템 패치
- 동일한 유형의 공격을 방지하기 위한 추가 보안 제어 구현
대응 절차를 진행하는 동안, Google 지원 티켓을 지속적으로 모니터링합니다. Cloud Customer Care는 필요한 경우Google Cloud 내에서 사용자 환경을 격리, 제거, 복구하는 데 필요한 조치를 취합니다.
사고가 해결되고 환경이 복원되면 이를 Cloud Customer Care에 알리세요. 사후 회고 회의가 예정되어 있다면 Google 담당자와 함께 참여하세요.
사고로부터 얻은 교훈을 반드시 기록하고, 동일한 공격이 재발하지 않도록 필요한 보안 제어를 추가하세요. 공격의 유형에 따라 다음과 같은 조치를 고려할 수 있습니다.
- 동일한 공격이 재발할 경우 자동으로 감지하도록 감지 규칙 및 알림을 만듭니다.
- 사고 대응 플레이북을 업데이트하여 교훈을 반영합니다.
- 회고 결과를 바탕으로 보안 상황을 강화합니다.
다음 단계
- 보안 및 복원력 프레임워크를 활용하여 비즈니스 연속성을 확보하고 악의적인 사이버 공격에 대비하세요.
- Mandiant 컨설턴트에게 랜섬웨어 방어 평가를 의뢰하세요.
- 추가 권장사항은 Google Cloud Well-Architected Framework를 참조하세요.
- Google의 사고 관리 방법은 데이터 사고 대응 프로세스를 참조하세요.