아마존 웹 서비스(Amazon Web Services) (AWS)는 2024년 기준 시장 점유율 50%를 차지했습니다. AWS는 규모에 관계없이 모든 분야의 조직에서 사용됩니다. AWS는 고객이 데이터, 애플리케이션 및 인프라를 보호하는 데 도움이 되는 다양한 도구, 관행 및 정책을 제공함으로써 모든 조직의 인프라 요구 사항을 지원할 수 있습니다.
현재 조직들은 자산을 위한 클라우드 보안의 중요성을 이해해야 합니다. 사이버 보안 벤처스는 더 나아가 2025년까지 사이버 범죄로 인해 전 세계적으로 연간 10조 5천억 달러의 손실이 발생할 것으로 추정합니다. AWS의 경우, 보안은 AWS 자체가 클라우드의 보안을 관리하는 반면 고객은 클라우드 내에서 보안을 유지하는 공동 책임 모델입니다. 이 구분이 중요합니다.
이 블로그에서는 AWS 보안의 필수 개념을 살펴본 후 주요 보안 문제와 그 해결책을 살펴보고, SentinelOne과 같은 고급 보안 솔루션이 이러한 AWS 보안 문제를 해결하는 데 어떻게 도움이 될 수 있는지 알아보겠습니다. 마지막으로 AWS 환경을 보호하기 위한 AWS 보안의 최적 구현 방법을 살펴보겠습니다.
AWS 보안이란 무엇일까요?
AWS 보안은 제어, 서비스 및 기능의 조합입니다. 클라우드에 존재하는 기업의 데이터, 애플리케이션 및 인프라를 보호하는 데 도움이 됩니다. AWS 보안 프레임워크는 AWS 플랫폼의 기밀성, 무결성 및 가용성을 보장하는 도구와 관행의 조합입니다. 이 다중 계층 보안 프레임워크는 조직이 네트워크 보안, 액세스 관리, 데이터 암호화, 모니터링 및 규정 준수를 보호하는 데 도움이 됩니다.
AWS 보안은 공유 책임 모델을 기반으로 합니다. 이는 AWS와 이를 사용하는 고객의 책임을 명확히 정의하는 데 도움이 됩니다. AWS는 "클라우드 보안"에 대한 책임을 지며, 이는 AWS 클라우드에서 모든 관련 서비스를 실행하는 인프라를 보호함을 의미합니다. 이러한 인프라 측면에는 AWS 클라우드 서비스를 지원하고 실행하는 데 사용되는 모든 하드웨어, 소프트웨어, 네트워킹 및 시설이 포함됩니다. 한편, 고객은 "클라우드 내 보안"을 담당하며, 여기에는 다양한 AWS 보안 문제 해결과 AWS 서비스에 관한 보안 제어의 구성 및 구현이 포함됩니다.
AWS 보안의 필요성
조직이 AWS 보안을 필요로 하는 데에는 여러 가지 이유가 있습니다. 그 중 일부는 다음과 같습니다.
- 진화하는 위협 환경: 기술의 발전은 사이버 위협의 증가를 의미합니다. 시간이 지남에 따라 이러한 위협은 정교해지고 빈번해져 기존 방법으로는 추적하기 어려워집니다. AWS 보안은 조직이 이러한 진화하는 위협에 대응하고 새롭게 발생하는 AWS 보안 문제를 해결할 수 있도록 지원합니다.
- 데이터 보호: 클라우드에 데이터를 저장하는 수많은 조직과 개인 사용자가 있습니다. 따라서 클라우드에 저장된 데이터는 기하급수적으로 증가하고 있습니다. 따라서 이러한 민감한 정보를 보호하는 것이 최우선 과제가 됩니다.
- 규정 준수 요구 사항: 산업별로 준수해야 할 규정 기준이 다릅니다. 또한 규정 준수 규칙은 지역에 따라 달라질 수 있습니다. AWS 보안은 이러한 요구 사항을 지원하며 조직이 규제 기관의 규정을 준수할 수 있도록 돕는 도구와 기능을 제공합니다.
- 비즈니스 연속성: DDoS 공격이나 기타 보안 사고 발생 시 서비스 장애 및 애플리케이션 다운타임이 발생할 수 있습니다. 이는 비즈니스 기능에도 차질을 빚을 수 있습니다. 그러나 AWS는 위협을 자동으로 실시간 탐지 및 대응하여 이러한 사고를 방지할 수 있습니다.
- 확장성 및 유연성: 비즈니스가 성장함에 따라 AWS는 요구 사항에 따라 확장 가능하고 유연한 솔루션을 제공할 수 있습니다.
AWS 보안 문제 상위 10가지
AWS 보안은 여러 위협과 AWS 보안 문제 해결에 도움이 됩니다. 이 섹션에서 그 중 일부를 살펴보겠습니다.
#1. 잘못 구성된 S3 버킷
데이터 유출로 이어질 수 있는 가장 흔한 문제는 잘못 구성된 Amazon S3(Simple Storage Service) 버킷입니다. 대부분 버킷 정책이나 접근 제어 목록(ACL)의 잘못된 구성으로 인해 버킷에 대한 읽기 또는 쓰기 권한과 같은 공개 접근 권한과 같은 너무 많은 권한이 부여될 때 발생합니다. 2017년에는 약 1억 9800만 명의 미국 유권자들이 공개 S3 버킷 구성 오류로 인해 민감한 데이터가 노출되었습니다.
#2. 부적절한 신원 및 접근 관리(IAM)
최소 권한 원칙을 따르지 않을 경우, 공격자가 리소스에 대한 무단 접근 권한을 획득할 수 있습니다. 또한 IAM 정책이 적절히 구성되지 않으면 위협 행위자나 내부 직원에게 필요한 권한보다 더 많은 권한이 부여될 수 있습니다. 주요 문제점 중 하나는 일상적인 작업(예: VM 생성)에 루트 계정을 사용하면서 다단계 인증을 구현하지 않아 모범 사례를 따르지 않는 경우입니다.
#3. 안전하지 않은 API 및 취약한 API 게이트웨이 구성
API(애플리케이션 프로그래밍 인터페이스)는 AWS 내 다양한 서비스 간 통신에 사용됩니다. 이러한 API를 공격에 취약하게 만드는 일반적인 문제로는 부적절한 인증, 데이터 전송 시 암호화 누락, API 접근 시 비효율적인 속도 제한 등이 있습니다.
#4. 불충분한 로깅 및 모니터링
때로는 조직이 모니터링의 가장 중요한 부분 중 하나인 AWS 환경에서의 적절한 로깅 구현을 잊어버리기도 합니다. AWS CloudTrail 활성화가 누락될 수 있는데, 이는 모든 API 호출을 기록하고 AWS 보안에서 발생하는 모든 활동을 추적하는 데 도움이 됩니다. 적절한 경보 메커니즘이 설정되지 않거나 적절한 간격으로 로그 감사가 수행되지 않으면 보안 사고가 무시될 수 있으며, 이는 결국 데이터 유출로 이어질 수 있습니다.
#5. 암호화되지 않은 데이터 저장 및 전송
AWS 환경에서 가장 중요한 문제 중 하나는 암호화되지 않은 데이터입니다. 데이터는 두 단계에서 암호화되어야 합니다. 하나는 데이터가 저장될 때(저장 중인 데이터)이고, 다른 하나는 전송 중(네트워크를 통해 데이터가 전송될 때)입니다. 적절한 암호화 기술이 적용되지 않으면 공격자가 이 데이터에 무단 접근할 수 있으며, 이는 데이터 유출 및 데이터 보호 규정 위반으로 이어져 심각한 재정적·평판적 손실을 초래할 수 있습니다.
#6. 취약한 EC2 인스턴스
오래된 소프트웨어, 패치되지 않은 시스템 또는 잘못된 구성(예: 인그레스 트래픽에 대한 IP 범위가 너무 넓게 설정됨)은 EC2 인스턴스를 취약하게 만들고 악성 코드를 포함한 공격에 노출될 수 있습니다. 열린 포트, SSH 설정 오류, 정기적인 취약점 평가 미실시 등도 악용될 수 있는 다른 방법들입니다.
#7. 불충분한 네트워크 보안
네트워크 인프라는 클라우드 환경에서 가장 취약한 구성 요소입니다. 가상 사설 클라우드(VPC) 및 네트워크 액세스 제어 목록(NACL)이 제대로 구성되지 않은 경우 인터넷을 통해 직접 접근 가능하기 때문입니다.
네트워크 기반 공격에는 인바운드 및 아웃바운드 트래픽에 대한 무제한 접근이 포함될 수 있습니다. 네트워크의 적절한 분할이 이루어지지 않아 인프라의 서로 다른 부분이 서로 노출되거나 공용 인터넷에 노출될 수 있는 경우에도 발생할 수 있습니다.
이러한 보안 연결의 부재는 전송 중 민감한 데이터가 가로채기 및 조작에 노출될 수 있어 전반적인 위험을 증가시킵니다.
#8. 부적절한 비밀 관리
API 키, 액세스 토큰, 비밀번호와 같은 민감한 정보가 조직 내에서 적절히 관리되지 않으면 공격자가 이러한 민감한 비밀에 접근할 수 있습니다. 개발자들은 종종 이러한 인증 정보를 코드 저장소, 구성 파일 또는 환경 변수에 평문으로 저장합니다. 공격자가 이러한 평문 비밀 정보에 접근할 경우 심각한 보안 침해로 이어질 수 있습니다.
KMS 솔루션에 안전하게 저장하는 것 외에도, 침해 발생 시 장기 노출 위험을 방지하기 위해 이러한 인증 정보를 정기적으로 교체하는 것이 중요합니다.
#9. 서버리스 및 람다 함수 취약점
AWS 람다와 같은 서버리스 컴퓨팅은 고유한 도전 과제를 동반합니다. 함수 권한이 부적절하게 구성되면 공격자가 무단 접근할 수 있습니다. API 키나 시크릿을 사용하는 함수가 제대로 관리되지 않으면 서버리스 함수를 악용하려는 공격자의 손에 넘어갈 수 있습니다.
#10. 컨테이너 및 쿠버네티스 보안 문제
조직이 AWS의 ECS나 EKS 같은 서비스를 통해 컨테이너화와 쿠버네티스를 도입함에 따라, 컨테이너 탈출 취약점, 부적절한 네트워크 분할, 불충분한 리소스 격리 등 새로운 보안 문제가 드러나고 있습니다. 여기에는 안전하지 않은 컨테이너 이미지, 지나치게 관대한 포드 보안 정책, 쿠버네티스 RBAC(역할 기반 접근 제어)의 잘못된 구성 등이 포함됩니다. 컨테이너화된 환경의 동적 특성으로 인해 가시성 유지와 일관된 보안 정책 구현이 어려워져 취약점이 탐지되지 않은 채 공격자에게 악용될 수 있습니다.
AWS 보안 모범 사례
조직이 AWS 보안의 효과를 보장하고 이러한 AWS 보안 문제로부터 스스로를 보호하려면 모범 사례를 따라야 합니다. 이러한 AWS 보안 문제를 해결하기 위한 모범 사례 중 일부는 다음과 같습니다:
#1. 강력한 ID 및 액세스 관리(IAM) 구현
AWS 환경을 안전하게 설정하는 유일한 올바른 방법은 강력한 신원 및 접근 관리 정책을 구현하는 것입니다. 조직은 항상 최소 권한 원칙을 따라야 합니다. 이는 실제 업무 수행에 필요한 사용자 및 서비스만 해당 작업을 수행할 수 있도록 허용해야 함을 의미합니다. 특히 일반 사용자보다 더 많은 권한을 가진 사용자(특히 루트 사용자)의 경우 MFA 활성화도 유용합니다.
액세스 키는 정기적으로 감사해야 하며, 비활성 계정도 마찬가지입니다. 더 이상 필요하지 않은 권한은 제거하십시오. 또한 AWS Organizations는 단일 루트 계정에서 여러 계정을 관리할 때 사용할 수 있는 다양한 제어 옵션을 제공합니다.
#2. 저장 중인 데이터 및 전송 중인 데이터 암호화
전송 중인 데이터와 저장 중인 데이터를 암호화하는 것도 또 다른 중요한 조치입니다. 개발자는 AWS 키 관리 서비스(AWS KMS)를 사용하여 암호화 키를 생성 및 관리할 수 있으며, 이 키를 사용하여 다양한 AWS 서비스에서 데이터를 암호화할 수 있습니다. 그러나 조직은 KMS 사용이 S3, EBS 또는 RDS의 데이터를 자동으로 암호화하지 않는다는 점을 인지해야 합니다. 이러한 서비스는 KMS에서 관리하는 키로 암호화를 사용하도록 수동으로 구성해야 합니다. API 호출 및 서로 다른 서비스 간 전송을 포함한 모든 데이터 전송에는 SSL/TLS 사용이 권장됩니다.
또한 조직은 암호화 키가 지속적으로 업데이트되도록 정기적인 키 회전 정책을 구현해야 합니다.
AWS Certificate Manager는 SSL/TLS 인증서 관리에 유용하지만, 저장 중인 데이터에 사용되는 암호화 키를 직접 관리하지는 않습니다. 키 회전을 위해서는 KMS의 자동 키 회전 기능을 사용하거나 사용자 정의 회전 전략을 구현해야 합니다.
#3. 네트워크 보안 강화
또 다른 필수 조치는 네트워크 보안을 강화하는 것입니다. 기업은 자원을 최대한 격리할 수 있도록 적절히 구성 가능한 가상 사설 클라우드(VPC)를 사용해야 합니다. 보안 그룹과 네트워크 ACL을 사용하여 인바운드 및 아웃바운드 트래픽을 제어하고 첫 번째 방어선 역할을 해야 합니다.
조직은 또한 AWS WAF를 사용하여 SQL 인젝션, XSS, 등과 같은 일반적인 취약점으로부터 보호하기 위한 추가 보안 계층을 구축할 수 있습니다. 온프레미스 네트워크와 AWS 리소스 간 안전한 통신을 위해 기업은 VPN 또는 AWS Direct Connect를 사용할 수 있습니다. 이 두 기술 모두 암호화된 전용 연결을 제공하여 하이브리드 클라우드 아키텍처의 보안을 강화합니다. 또한 네트워크 및 네트워크 구성을 정기적으로 검토하여 새로운 잠재적 위협과 취약점을 식별하고 제거해야 합니다.
#4. 포괄적인 로깅 및 모니터링 구현
포괄적인 로깅 및 모니터링을 구현하는 것은 AWS 환경에 대한 가시성을 유지하고 가능한 위협을 식별하는 데 필수적입니다. 우선 인프라 전반의 모든 API 호출을 기록하는 AWS CloudTrail을 활성화하세요. 기본 제공 기능이므로 사용하지 않을 이유가 없습니다. AWS 계정 내에서 발생한 작업에 대한 상세한 감사 추적을 생성하는 데 도움이 됩니다. 위협이나 정책 위반에 즉각 대응하려면 Amazon CloudWatch를 사용하여 환경에 대한 경보를 설정하세요.동시에 AWS Config는 AWS 리소스 구성 평가, 감사, 검토 및 조직 정책 준수 여부 확인에 유용한 도구입니다. 모든 로그는 정기적으로 검토해야 하며, 이상 징후가 발견될 경우 자동 경보가 발령되도록 설정해야 합니다. 동시에 Amazon GuardDuty의 모든 기능을 활용하여 지능형 위협 탐지 및 지속적인 모니터링을 수행함으로써 환경 보안을 한층 강화하십시오.
#5. 정기적인 보안 평가 수행
마지막으로, AWS 환경을 안전하게 유지하기 위해서는 정기적인 보안 평가 및 업데이트가 필수적입니다. 따라서 AWS 환경에 대한 취약점 평가 및 침투 테스트를 수행하여 인프라에 취약점이 있는지 확인하십시오. 동시에 알려진 악용으로부터 환경을 보호하기 위해 모든 시스템과 애플리케이션을 최신 패치로 업데이트하는 것을 잊지 마십시오.
AWS Trusted Advisor를 사용하여 환경을 항상 안전하게 유지하고 최적의 성능 및 비용 상태를 유지할 수 있도록 실시간 지침을 받으십시오. 또한, 환경에 대한 특정 위협에 대응하기 위한 모든 대응 전략을 포함하도록 사고 대응 계획을 정기적으로 업데이트하십시오.
또한, 조직이 HIPAA 또는 PCI DSS와 같은 특정 규정의 적용을 받는 경우, 정기적인 보안 감사 및 규정 준수 점검을 수행해야 합니다.
AWS 보안 문제를 위한 SentinelOne
SentinelOne은 오늘날 가장 견고한 보안 솔루션 중 하나로 떠오르는 지능형 도구입니다. AWS 환경과의 원활한 통합을 제공하여 조직이 위협으로부터 스스로를 보호하고 사고에 대응할 수 있도록 지원합니다. 이 플랫폼은 다양한 AWS 보안 문제를 해결하기 위해 특별히 설계되었습니다. 지능형이라고 불리는 이유는 인공 지능과 머신 러닝을 활용하여 조직이 탐지, 예방 및 대응의 현재 역량을 더 높은 수준으로 향상시키는 데 도움을 주기 때문입니다.
심층적인 AWS 통합
SentinelOne의 핵심 강점 중 하나는 AWS 서비스와의 심층적 통합입니다. Amazon Security Lake, AppFabric, GuardDuty를 포함한 20개 이상의 통합을 통해 가시성을 높이고 위협 탐지 프로세스를 간소화합니다. 이러한 긴밀한 통합은 보다 포괄적인 보안 접근 방식을 가능하게 하여 취약점이 누락되는 것을 방지합니다.
SentinelOne은 최근 AWS Security Hub와의 새로운 통합을 발표했습니다. 이 통합은 SentinelOne Singularity Marketplace를 통해 이용 가능합니다. 이 새로운 통합은 Amazon Web Services(AWS)에서 실행되는 SentinelOne 에이전트로부터 고신뢰도 위협 정보를 AWS Security Hub를 통해 필터링합니다. 통합은 SentinelOne 콘솔에서 메타데이터를 포함한 발견 사항을 가져와 AWS Security Hub로 전송하여 AWS Security Hub에서 직접 사고 조사를 가능하게 합니다. SentinelOne 인시던트는 AWS 보안 발견 형식(ASFF)으로 정규화되어 보안 데이터를 변환하거나 파싱할 필요가 없습니다.
완벽한 가시성
SentinelOne은 조직의 AWS 환경에 대한 완벽한 가시성을 제공합니다. 이 가시성에는 네트워크 트래픽, 파일 시스템 활동 및 프로세스 행동에 대한 정보가 포함됩니다. 보안 팀은 동일한 정보를 사용하여 잠재적 위협을 신속하게 식별하고 조사할 수 있습니다.
자동화된 문제 해결
보안 팀이 SentinelOne을 사용하는 데 매력을 느끼는 이유는 보안 모니터링에 도움이 될 뿐만 아니라 자동화된 문제 해결과 같은 다른 기능도 제공하여 위협에 자동으로 대응할 수 있도록 지원하기 때문입니다. 이 프로세스에는 영향을 받은 리소스의 격리, 악성 리소스의 제거, 시스템을 안전한 단계로 롤백하는 작업이 포함됩니다. 자동화는 또한 보안 사고에 대한 평균 대응 시간(MTTR)을 단축하여 데이터 유출로 인한 피해를 줄이는 데 도움이 됩니다.
규정 준수 지원
규정 준수 요구 사항은 엄격한 기준으로 인해 종종 조직에 골칫거리가 됩니다. 이 플랫폼은 규정 준수 지원을 통해 조직의 부담을 줄여줍니다. GDPR, HIPAA, PCI DSS와 같은 표준 준수를 돕습니다. 감사 목적으로 상세한 보고서를 생성합니다. 또한 확장성이 뛰어나 규모에 관계없이 모든 조직에 완벽하게 적용됩니다.
결론
본 블로그에서 살펴본 바와 같이, AWS 보안은 다층적 아키텍처로 구성되며 클라우드 컴퓨팅 환경에서 운영을 수행하는 기업에게 매우 중요합니다.
AWS 보안은 공유 책임 모델을 기반으로 하며, 이는 AWS와 조직 자체에서 각각 담당해야 할 역할과 책임을 명확히 구분합니다. 본 블로그에서는 다양한 AWS 보안 문제를 살펴보았습니다. 조직이 직면할 수 있는 가장 중요한 AWS 보안 문제로는 잘못 구성된 S3 버킷, 부적절한 IAM 정책, 안전하지 않은 API, 암호화되지 않은 데이터, 취약한 EC2 인스턴스, 네트워크 보안 취약점, 부적절한 비밀 관리, 서버리스 취약점, 컨테이너 보안 과제 등이 있습니다.
조직은 강력한 신원 및 접근 관리, 데이터의 모든 단계에서의 데이터 암호화 등 모범 사례를 구현하여 위에서 언급한 보안 문제로부터 스스로를 보호할 수 있습니다. 이러한 관행은 조직을 보호할 뿐만 아니라 AWS 보안 기능을 최대한 활용하는 데에도 도움이 됩니다.
SentinelOne 플랫폼은 끊임없이 진화하는 위협의 특성으로부터 조직을 보호하는 데 유용합니다. 이 플랫폼은 추가적인 보안 계층 역할을 합니다. 해당 도구는 인공지능과 머신 러닝을 활용하여 위협을 거의 실시간에 가깝게 탐지하고 해결합니다. SentinelOne은 AWS 보안 기능과 통합되어 조직을 위한 탄력적인 방어 체계를 구축할 수 있습니다.
"FAQs
AWS 사용과 관련된 가장 중요한 위험 요소로는 데이터 유출을 초래하는 잘못 구성된 S3 버킷, 무단 접근을 유발하는 부적절하게 설정된 ID 및 접근 관리 정책, 해커에 의해 악용되는 취약한 API, 불충분한 로깅 및 모니터링, 암호화되지 않은 민감한 데이터의 저장 및 전송, 구식 소프트웨어 및 부적절한 구성으로 인한 안전하지 않은 EC2 인스턴스 등이 있습니다.
"SentinelOne은 클라우드 기반 환경을 위한 완벽하게 개발된 풀스펙 보안 솔루션으로 AWS와의 최적의 통합을 제공합니다. AI 기반 플랫폼은 EC2, 컨테이너, 쿠버네티스 클라우드 소프트웨어 등 다양한 서비스 전반에 걸쳐 자율적인 AWS 보안 솔루션을 제공합니다. 이 솔루션의 장점으로는 전체 스택 가시성, 위협 대응 자동화, 가장 상세한 포렌식 분석 수행 능력, 위협 대응에 필요한 시간의 상당한 단축 등이 있습니다.
"