보안 및 준수 기초
AWS Artifact
- 규정 준수와 관련된 정보를 제공하는 신뢰할 수 있는 리소스
AWS 공동 책임 모대
- AWS는 ‘클라우드 보안’을 책임지고, 고객은 ‘클라우드에서의 보안’의 책임을 준수
- 하드웨어, 소프트웨어, 시설, 운영 → AWS 책임
- OS 패칭, 앱 보안, 데이터 암호화, SSH,HTTPS,IAM → 고객 책임
- 내가 할 수 있으면 내 책임, AWS 책임
공유 제어 항목
- 고객과 AWS가 동시에 책임
- 패치 관리
- AWS는 인프라와 관련된 결함 수정 패치에 대한 책임이 있으며, 고객은 게스트 OS와 애플리케이션 패치에 대한 책임
- 구성관리
- AWS 인프라 디바이스의 구성을 유지 관리하고, 고객은 자체 게스트 운영 체제, 데이터베이스 및 애플리케이션의 구성에 대한 책임
- 인지 및 교육
- AWS는 AWS 직원을 교육하고, 고객은 자사의 직원을 교육해야 함
주 서비스별 책임
DynamoDB
- OS 패치, 업그레이드, 데이터센터 보안 : AWS
- 저장된 데이터의 암호화 : 고객
RDS
- OS 패치, 업그레이드, 데이터센터 보안 : AWS
- 저장된 데이터의 암호화, HTTPS 연결, DB 암호 보관 : 고객
EC2
- 하드웨어 보안, 펌웨어 패치, 데이터 센터 보안 : AWS
- OS 업데이트, EBS 암호화 체크, 키파일 보관, SSH 연결, 포트 관리 : 고객
S3
- 하드웨어 보안, 펌웨어 패치, 데이터 센터 보안 : AWS
- HTTPS 연결, 버킷 정책, 접근 권한, S3 암호화 체크, IAM 관리 : 고객
AWS 환경에서 보안 테스트(Penetration Test)
- 구축한 서비스의 보안 취약점을 점검하기 위해 직접 공격을 시뮬레이팅 하는 테스트
- 서비스 런칭 전 혹은 주기적 테스트
- 테스트 가능한 서비스
- EC2, ELB, RDS, Cloudfront, API Gateway, Lambda, Lighsail 등
- 금지된 테스트
-
DNS Zone Walking
-
DDOS
-
포트 플러딩
-
프로토콜 프러딩
-
요청 플로딩
AWS CloudTrail
AWS 설명 : AWS 계정의 거버넌스, 규정 준수, 운영 감사, 위험 감사를 지원하는 서비스입니다. CLoudTrail을 사용하면 AWS 인프라에서 계정 활동과 관련된 작업을 기록하고 지속적으로 모니터링하며 보관할 수 있습니다. CloudTrail은 AWS Management Console, AWS SDK, 명령줄 도구 및 기타 AWS 서비스를 통해 수행된 작업을 비롯하여 AWS 계정 활동의 이벤트 기록을 제공합니다.
-
AWS의 보안 및 감사를 위한 서비스 : 감시(CCTV)
-
여러 서비스에 대해 API 이용 로그 등을 제공
- API 호출의 시간 및 결과, 에러, 사용 인증 정보 등을 기록
- AWS CLI, 콘솔 이용, API 호출 등 모든 이벤트가 대상
- 몇몇 Data API의 경우 수동으로 활성화가 필요 (S3, Lambda, DynamoDB)
CloudTrail vs CloudWatch
CloudTrail : AWS를 감사하기 위한 서비스
-
AWS의 모든 서비스가 사용될 때 마다 사용 로그를 저장
-
AWS가 언제 어디서 누구에 의해 사용되었는가?
-
단순하게 AWS 사용 로그만 저장
CloudWatch
-
AWS의 서비스 뿐만 아니라 어플리케이션의 로그 및 동작 로그를 취합
-
어플리케이션이 어떻게 동작하였는가? 무슨 버그가 있었는가? 메모리는 얼마나 소모했는가?
-
대시보드 및 알람 등 모니터링을 위한 서비스 제공
AWS Secret Manager
AWS 설명 : 애플리케이션, 서비스, IT리소스에 액세스할 때 필요한 보안 정보를 보호하는데 도움이 됩니다. 이 서비스를 사용하면 수명 주기에 걸쳐 데이터베이스 자격 증명, API 키 및 다른 보안 정보를 손쉽게 교체, 관리 및 검색할 수 있습니다.
-
보안 정보를 안전하게 저장하고 손쉽게 사용할 수 있도록 도와주는 서비스
- RDS, Redshift 등의 암호를 안전하게 저장하고 관리
-
보안 정보의 주기적인 교체 지원
- 일정 주기로 자동으로 RDS의 암호를 교체 및 데이터베이스에 적용
-
CloudFormation 등 다른 서비스와 연동하여 안전한 보안 확보 가능
-
보안 정보를 저장하고 불러오는데 비용이 발생
- Parameter Store와의 가장 큰 차이점 : Parameter Store은 무료 (1,0000개 이하)
-
구조

- DB의 암호가 바뀌면 EC2마다 전부 바꿔주어야 함

- Secert Manager을 통해 관리시 Secret Manger의 보안 설정만 해주면 됨
AWS WAF (Web Application Firewall), AWS Shied
AWS WAF
AWS 설명 : 가용성에 영향을 주거나, 보안을 위협하거나, 리소스를 과도하게 사용하는 일반적인 웹 공격으로부터 웹 애플리케이션이나 API를 보호하는 데 도움이 되는 웹 애플리케이션 방화벽입니다.
- 트래픽을 모니터링하여 공격을 방어해주는 서비스
- 트래픽을 실제로 보고 분석하여 공격 여부를 확인
- AWS의 여러 서비스와 연동
- CloudFront, ELB, AppSync, API Gateway
- 실제 공격이 발생하면 해당 트래픽이 서비스에 도달하지 않도록 하여 보호
- 여러 조건에 따라 트래픽을 제어 가능
- IP 주소
- 지역
- 특정 헤더 혹은 쿼리스트링 값의 존재 여부
- 정규식 혹은 실제 스트링 값이 요청에 존재하는지 여부 등
AWS Shield
AWS 설명 : AWS에서 실행되는 애플리케이션을 보호하는 DDoS 보호 서비스입니다. 애플리케이션 가동 중지 및 지연 시간을 최소화하는 상시 탐지 및 자동 인라인 통합을 제공하므로 DDoS 보호를 위해 AWS Support를 이용할 필요가 없습니다.
- DDOS 공격을 방어해주는 서비스
- 모든 AWS 계정에 기본적으로 적용되어 있음
- AWS Shield Standard : 무료, 기본 모니터링
- AWS Shield Adcanced : 월 $3000
- 어플리케이션 모니터링 (Layer 7)
- 커스터마이징 모니터링 등
- Cost Protection : DDOS로 발생한 비용을 보호하여 청구하지 않음
Amazon Inspector
AWS 설명 : AWS에 배포된 애플리케이션의 보안 및 규정 준수를 개선하는데 도움이 되는 자동 보안 평가 서비스입니다. 모범 사례로부터 애플리케이션의 노출, 취약성 및 편차를 자동으로 평가합니다. 평가를 수행한 후, Amazon Inspector는 심각도 수준에 따라 우선 순위가 지정된 상세한 본 평가 결과 목록을 생성합니다. 이러한 평가 결과는 직접 검토하거나, Amazon Inspector 콘솔 또는 API를 통해 제공되는 상세한 평가 보고서에 포함된 내용을 확인해도 됩니다.
- EC2 인스턴스의 취약점을 조사하여 리포트를 만들어주는 서비스
- CloudWatch 등의 서비스를 이용해서 자동화 가능
- EC2에 에이전트를 설치 후 서비스를 실행해 EC2의 취약점을 분석
- 취약점에 대해 조사 완료 후 그에 대한 보고서를 작성하여 제공
Amazon Macie
AWS 설명 : 완전관리형 데이터 보안 및 데이터 프라이버스 서비스로서, 머신러닝 및 패턴 일치를 활용하여 AWS에서 민감한 데이터를 검색하고 보호합니다.
- AWS 환경에서 개인식별 정보(PII)를 탖아주는 서비스
- 대시보드와 알람 기능을 제공
- 주로 S3의 정보를 탐색
AWS GuardDuty
AWS 설명 : AWS 계정, 워크로드 및 Amazon S3에 저장된 데이터를 보호하기 위해 악의적 활동 또는 무단 동작을 지속적으로 모니터링하는 위협 탐지 서비스입니다.
- 머신러닝을 이용하여 어카운트의 수상한 활동 및 위험을 탐지하여 알려주는 서비스
- APC Flow 로그, CloudTrail 로그, DNS 로그 등에서 데이터를 분석하여 비정상적인 행동을 탐지
- 간단하게 활성화 시켜 사용 가능
AWS KMS, AWS CloudHSM
AWS KAM
AWS 설명 : 손쉽게 암호화 키를 생성 및 관리하고 다양한 AWS 서비스와 애플리케이션의 사용을 제어할 수 있습니다.
- 안전하게 키를 생성하고 보관해주는 서비스
- 리전 단위로 키를 보관 → 리전 밖으로 키가 유출되지 않음
- 고객 마스터키를 사용하여 다양한 키 생성
- 마스터키 : 다른 키를 생성하기 위한 키
- 즉 하나의 마스터키로 다양한 키를 생성 사능
- HSM과 다르게 여러 계정에서 하드웨어를 공유함
- 다양한 AWS암호화 로직에 활용됨
- ex. S3의 데이터 암호화, RDS 암호화, EBS 암호화
AWS CloudHSM (Cloud Hardware Security Module)
AWS 설명 : AWS 클라우드에서 자체 암호화 키를 손쉽게 생성 및 사용할 수 있도록 지원하는 클라우드 기반 하드웨어 보안 모듈(HSM)입니다. CloudHSM에서는 FIPS 140-2 레벨3 인증 HSM을 사용하여 자체 암호화 키를 관리할 수 있습니다.
- 지정된 하드웨어 (공유X)
- FIPS 140-2 레벨 3 인증 사용 (KMS는 레벨2)
- HSM에 맞는 인터페이스 제공
Amazon Cognito
AWS 설명 : 웹과 모바일 앱에 빠르고 손쉽게 사용자 가입, 로그인 및 액세스 제어 기능을 추가할 수 있습니다. Amazon Cognito에서는 수백만의 사용자로 확장할 수 있고, Apple, Facebook, Google, Amazon과 같은 소셜 자격 증명 공급자와 엔터프라이즈 자격 증명 공급자(SAML 3.0, Open ID Connect 사용)를 통한 로그인을 지원합니다.
- AWS에서 제공하는 로그인 및 인증 서비스
- 어플리케이션에서 AWS의 서비스에 접근, 액세스 가능한 권한을 확보할 수 있음.
- 소셜 자격 증명 공급자(Facebook, Google, Apple 등)과 연동 가능
- SAML 3.0, Open ID Connect 로그인 지원
- 구조

Amazon Detective
AWS 설명 : Amazon Detective를 사용하면 잠재적 보안 문제나 의심스러운 활동의 근본 원인을 빠르게 분석, 조사 및 식별할 수 있습니다. AWS 리소스에서 로그 데이터를 자동으로 수집하고 , ML, 통계분석 및 그래프 이론을 사용하여 보다 쉽고 빠르게 효율적인 보안 관련 조사를 시행할 수 있도록 지원하는 연결된 데이터 집합을 구축합니다.
- AWS의 보안 문제 및 의심스러운 활동의 원인을 찾아주는 서비스
- AWS 로그(VPC Flow Log, CloudTrail, GuardDuty 등)를 분석하여 보안 문제의 원인을 식별
- 이를 기반으로 대화형 시각화 제공