Security

클라우드 보안 체크리스트

클라우드 환경(AWS/GCP/Azure)의 보안 설정을 점검하세요. · 2025.02 기준

전체 진행률
0%
0 / 44 항목 완료
IAM/계정 관리0/7
스토리지 보안0/7
네트워크 보안0/7
모니터링/로깅0/7
컴퓨팅 보안0/8
규정 준수0/8
루트 계정 사용 제한

AWS 루트 계정(또는 Azure/GCP 최고 관리자 계정)은 일상 업무에 사용하지 않아야 합니다. 루트 계정은 별도의 MFA를 설정하고, 접근 키를 삭제하며, 긴급 상황에서만 사용하도록 제한해야 합니다.

확인 방법:AWS 콘솔에서 IAM 대시보드의 "보안 상태" 섹션을 확인하여 루트 계정 액세스 키가 비활성화되어 있는지, 루트 계정에 MFA가 설정되어 있는지 검증합니다. CloudTrail에서 루트 계정 사용 이력을 조회하여 불필요한 사용이 없는지 확인합니다.
모든 사용자 계정 MFA 적용

콘솔에 접근하는 모든 IAM 사용자에게 다중 인증(MFA)을 필수로 적용해야 합니다. 하드웨어 토큰 또는 가상 MFA 디바이스(Google Authenticator 등)를 사용하며, 특히 관리자 권한을 가진 계정에는 반드시 적용해야 합니다.

확인 방법:IAM 콘솔에서 사용자 목록을 확인하고, MFA 열에 디바이스가 할당되어 있는지 검사합니다. AWS CLI로 aws iam get-credential-report를 실행하여 MFA 미적용 사용자를 일괄 확인합니다.
IAM 역할 최소 권한 원칙 적용

각 IAM 사용자, 그룹, 역할에는 업무 수행에 필요한 최소한의 권한만 부여해야 합니다. 와일드카드(*) 권한 사용을 지양하고, 리소스 단위로 세분화된 정책을 적용해야 합니다.

확인 방법:IAM Access Analyzer를 활성화하여 사용하지 않는 권한을 식별합니다. 각 IAM 정책에서 Action과 Resource에 와일드카드(*)가 사용되고 있는지 검토하고, AWS Policy Simulator로 권한 범위를 테스트합니다.
서비스 계정 키 주기적 교체

IAM 사용자의 액세스 키와 서비스 계정 키는 90일 이내 주기적으로 교체해야 합니다. 오래된 액세스 키는 비활성화 후 삭제하고, 가능한 경우 임시 자격 증명(STS AssumeRole)을 사용해야 합니다.

확인 방법:IAM 자격 증명 보고서를 생성하여 각 액세스 키의 생성일과 마지막 사용일을 확인합니다. 90일 이상 된 키를 식별하고, 키 교체 자동화 정책이 적용되어 있는지 점검합니다.
미사용 계정 및 권한 정리

90일 이상 미사용된 IAM 사용자, 역할, 정책을 정기적으로 식별하고 비활성화 또는 삭제해야 합니다. 퇴사자 계정, 프로젝트 종료 후 불필요한 서비스 계정도 즉시 정리해야 합니다.

확인 방법:IAM 자격 증명 보고서에서 password_last_used 및 access_key_last_used 필드를 확인하여 90일 이상 미사용 계정을 식별합니다. AWS Config 규칙으로 미사용 계정 자동 탐지를 설정합니다.
교차 계정 접근 제어

멀티 계정 환경에서 교차 계정 접근은 IAM 역할 기반으로 설정하고, 신뢰 정책(Trust Policy)에서 허용 계정을 명시적으로 지정해야 합니다. 외부 ID(External ID) 조건을 활용하여 혼동된 대리인 공격을 방지해야 합니다.

확인 방법:모든 IAM 역할의 신뢰 관계(Trust Relationship)를 검토하여 허용된 계정 ID가 적절한지 확인합니다. 외부 서비스에 위임하는 역할에 ExternalId 조건이 설정되어 있는지 점검합니다.
IAM 비밀번호 정책 강화

IAM 비밀번호 정책에서 최소 길이 14자 이상, 대소문자/숫자/특수문자 조합 요구, 비밀번호 재사용 방지(최근 24개), 만료 기간(90일) 등을 설정해야 합니다.

확인 방법:IAM 콘솔의 "계정 설정"에서 비밀번호 정책을 확인합니다. 최소 길이, 문자 유형 요구사항, 만료 기간, 재사용 방지 횟수가 조직 보안 정책에 부합하는지 검증합니다.
S3 버킷 퍼블릭 접근 차단

모든 S3 버킷에 퍼블릭 액세스 차단 설정(Block Public Access)을 활성화해야 합니다. 계정 수준 및 개별 버킷 수준 모두에서 퍼블릭 ACL, 퍼블릭 버킷 정책을 차단하는 4가지 옵션을 모두 활성화해야 합니다.

확인 방법:S3 콘솔의 "이 계정의 퍼블릭 액세스 차단 설정"에서 4개 옵션이 모두 활성화되어 있는지 확인합니다. 개별 버킷의 "권한" 탭에서도 퍼블릭 액세스 차단이 적용되어 있는지 점검합니다.
스토리지 저장 데이터 암호화(SSE)

S3 버킷, EBS 볼륨, RDS 인스턴스 등 모든 스토리지 서비스에 저장 시 암호화(Server-Side Encryption)를 적용해야 합니다. AWS KMS 관리형 키(SSE-KMS) 또는 고객 관리형 키(CMK)를 사용하여 암호화 수준을 강화해야 합니다.

확인 방법:S3 버킷의 "속성" 탭에서 기본 암호화 설정이 활성화되어 있는지 확인합니다. EBS 볼륨은 EC2 콘솔에서 "기본 암호화" 설정을 확인하고, RDS 인스턴스의 암호화 상태를 점검합니다.
S3 버킷 버전 관리 활성화

중요 데이터를 저장하는 S3 버킷에는 버전 관리(Versioning)를 활성화하여 실수로 인한 삭제나 덮어쓰기로부터 데이터를 보호해야 합니다. MFA Delete를 함께 설정하여 무단 삭제를 방지해야 합니다.

확인 방법:S3 버킷의 "속성" 탭에서 버전 관리 상태를 확인합니다. 중요 버킷에 MFA Delete가 활성화되어 있는지 AWS CLI(aws s3api get-bucket-versioning)로 점검합니다.
스토리지 접근 로깅 설정

S3 서버 액세스 로깅 또는 CloudTrail 데이터 이벤트를 활성화하여 버킷에 대한 모든 접근 기록을 남겨야 합니다. 로그 버킷은 별도로 분리하고 변경 불가능하도록 설정해야 합니다.

확인 방법:S3 버킷의 "속성" 탭에서 서버 액세스 로깅이 활성화되어 있는지 확인합니다. 로그 대상 버킷의 접근 권한과 수명 주기 정책이 적절하게 설정되어 있는지 점검합니다.
스토리지 수명 주기 정책 설정

불필요한 데이터의 자동 삭제 및 비용 절감을 위해 스토리지 수명 주기(Lifecycle) 정책을 설정해야 합니다. 오래된 객체는 저비용 스토리지 클래스로 전환하고, 보존 기간이 만료된 데이터는 자동 삭제되도록 구성해야 합니다.

확인 방법:S3 버킷의 "관리" 탭에서 수명 주기 규칙이 설정되어 있는지 확인합니다. 전환 규칙(Standard -> IA -> Glacier)과 만료 규칙이 데이터 보존 정책에 맞게 구성되어 있는지 검증합니다.
버킷 정책 및 ACL 최소 권한 적용

S3 버킷 정책에서 불필요한 와일드카드 Principal("*")을 제거하고, 필요한 계정/역할에만 접근을 허용해야 합니다. ACL 대신 버킷 정책과 IAM 정책을 사용하여 접근을 제어하고, ACL 비활성화(Bucket Owner Enforced)를 권장합니다.

확인 방법:각 버킷의 버킷 정책을 검토하여 Principal에 "*"가 포함된 문장이 있는지 확인합니다. IAM Access Analyzer를 사용하여 외부에 공유된 리소스를 식별하고, 불필요한 ACL 항목을 제거합니다.
전송 중 데이터 암호화(TLS) 강제

S3 버킷 정책에 aws:SecureTransport 조건을 추가하여 HTTPS를 통한 접근만 허용해야 합니다. HTTP를 통한 평문 전송을 차단하여 전송 중 데이터 가로채기를 방지해야 합니다.

확인 방법:버킷 정책에 "aws:SecureTransport": "false" 조건으로 Deny 문이 포함되어 있는지 확인합니다. 실제로 HTTP로 접근을 시도하여 차단되는지 테스트합니다.
VPC 네트워크 분리 설계

프로덕션, 스테이징, 개발 환경을 별도의 VPC로 분리하고, 퍼블릭/프라이빗 서브넷을 적절히 구성해야 합니다. 데이터베이스와 내부 서비스는 프라이빗 서브넷에 배치하여 인터넷에서 직접 접근할 수 없도록 해야 합니다.

확인 방법:VPC 콘솔에서 환경별 VPC 분리 여부를 확인합니다. 서브넷 라우팅 테이블을 검토하여 프라이빗 서브넷이 인터넷 게이트웨이에 직접 연결되지 않았는지 확인합니다.
보안 그룹 인바운드 규칙 최소화

보안 그룹(Security Group)의 인바운드 규칙에서 0.0.0.0/0으로 열린 포트를 최소화해야 합니다. SSH(22), RDP(3389) 포트는 특정 IP 대역으로 제한하고, 불필요한 포트는 모두 차단해야 합니다.

확인 방법:EC2 콘솔의 "보안 그룹"에서 모든 보안 그룹의 인바운드 규칙을 검토합니다. 소스가 0.0.0.0/0인 규칙을 식별하고, SSH/RDP 포트가 특정 IP로 제한되어 있는지 확인합니다. AWS Config 규칙 restricted-ssh를 활성화합니다.
NACL(네트워크 ACL) 적용

서브넷 수준의 추가 방화벽으로 네트워크 ACL을 설정하여 보안 그룹과 함께 이중 방어 체계를 구축해야 합니다. 허용 규칙과 거부 규칙을 명확히 정의하고, 기본 NACL의 규칙을 검토해야 합니다.

확인 방법:VPC 콘솔의 "네트워크 ACL"에서 각 서브넷에 연결된 NACL 규칙을 확인합니다. 기본 NACL이 모든 트래픽을 허용하고 있지 않은지 점검하고, 중요 서브넷에 커스텀 NACL이 적용되어 있는지 확인합니다.
VPC Flow Logs 활성화

모든 VPC에 Flow Logs를 활성화하여 네트워크 트래픽을 기록하고 분석할 수 있어야 합니다. 거부된 트래픽 로그를 통해 비정상 접근 시도를 탐지하고, CloudWatch 또는 S3로 로그를 전송하여 장기 보관해야 합니다.

확인 방법:VPC 콘솔에서 각 VPC의 "Flow Logs" 탭을 확인하여 로그가 활성화되어 있는지 점검합니다. 로그 대상(CloudWatch Logs 그룹 또는 S3 버킷)이 적절히 설정되어 있는지 확인합니다.
퍼블릭 IP 할당 최소화

인스턴스에 퍼블릭 IP를 직접 할당하는 것을 지양하고, 필요한 경우 Elastic IP를 사용해야 합니다. 외부 접근이 필요한 서비스는 로드 밸런서(ALB/NLB)를 통해 노출하고, NAT Gateway를 사용하여 프라이빗 인스턴스의 아웃바운드만 허용해야 합니다.

확인 방법:EC2 콘솔에서 퍼블릭 IP가 할당된 인스턴스 목록을 확인합니다. 서브넷 설정에서 "자동 할당 퍼블릭 IPv4 주소"가 불필요하게 활성화되어 있지 않은지 점검합니다.
DNS 보안 및 DDoS 방어 설정

Route 53에 DNSSEC를 적용하고, AWS Shield Advanced를 활성화하여 DDoS 공격에 대비해야 합니다. CloudFront와 WAF를 함께 사용하여 애플리케이션 계층 공격을 방어하고, Rate Limiting 규칙을 설정해야 합니다.

확인 방법:Route 53 콘솔에서 DNSSEC 서명 상태를 확인합니다. AWS Shield 콘솔에서 보호 대상 리소스 목록을 점검하고, WAF 웹 ACL에 Rate-based 규칙이 설정되어 있는지 확인합니다.
VPN/Direct Connect를 통한 안전한 연결

온프레미스와 클라우드 간 통신은 Site-to-Site VPN 또는 AWS Direct Connect를 사용하여 암호화된 전용 연결을 구성해야 합니다. VPN 터널의 암호화 알고리즘과 키 교환 방식이 최신 보안 기준을 충족하는지 확인해야 합니다.

확인 방법:VPC 콘솔의 "VPN 연결"에서 Site-to-Site VPN 터널 상태 및 암호화 설정을 확인합니다. IKEv2 사용 여부와 Phase 1/2 암호화 알고리즘(AES-256 등)이 적절한지 점검합니다.
CloudTrail 전체 리전 활성화

AWS CloudTrail을 모든 리전에서 활성화하여 API 호출 기록을 수집해야 합니다. 관리 이벤트와 데이터 이벤트를 모두 기록하고, 로그 파일 무결성 검증(Log File Validation)을 활성화하여 로그 변조를 방지해야 합니다.

확인 방법:CloudTrail 콘솔에서 "추적"을 확인하여 모든 리전에 적용되는 추적이 있는지 확인합니다. 로그 파일 무결성 검증이 활성화되어 있는지, 로그가 암호화된 S3 버킷에 저장되는지 점검합니다.
보안 경보(Alarm) 설정

루트 계정 로그인, 콘솔 로그인 실패, IAM 정책 변경, 보안 그룹 변경, NACL 변경, S3 버킷 정책 변경 등 주요 보안 이벤트에 대해 CloudWatch 경보를 설정하고 SNS를 통한 즉시 알림을 구성해야 합니다.

확인 방법:CloudWatch 콘솔에서 보안 관련 메트릭 필터와 경보가 설정되어 있는지 확인합니다. CIS Benchmark에서 권고하는 14개 이상의 경보 항목이 구성되어 있는지 점검합니다. SNS 구독이 올바른 담당자에게 연결되어 있는지 확인합니다.
GuardDuty 위협 탐지 활성화

Amazon GuardDuty를 활성화하여 악성 IP 통신, 암호화폐 마이닝, IAM 자격 증명 유출 등 지능형 위협을 자동으로 탐지해야 합니다. 모든 리전 및 계정에서 활성화하고, 발견 사항에 대한 대응 프로세스를 수립해야 합니다.

확인 방법:GuardDuty 콘솔에서 서비스 활성화 상태를 확인합니다. 발견 사항(Findings)의 심각도별 분류를 검토하고, 높은 심각도 발견 사항에 대한 자동 대응(Lambda, Step Functions)이 구성되어 있는지 점검합니다.
중앙 집중 로그 관리

모든 클라우드 서비스의 로그를 중앙 로그 계정 또는 SIEM(Security Information and Event Management) 시스템으로 수집해야 합니다. CloudWatch Logs, VPC Flow Logs, ELB 로그, WAF 로그 등을 통합하여 상관 분석이 가능하도록 해야 합니다.

확인 방법:로그 아키텍처를 검토하여 모든 주요 서비스의 로그가 중앙 저장소로 전송되고 있는지 확인합니다. 로그 보존 기간이 규정(최소 1년)을 충족하는지 점검하고, 로그 검색 및 분석 도구가 구성되어 있는지 확인합니다.
AWS Config 규칙 설정

AWS Config를 활성화하여 리소스 구성 변경을 추적하고, 관리형/커스텀 규칙을 통해 보안 정책 위반을 자동으로 탐지해야 합니다. 비준수 리소스에 대한 자동 교정(Remediation) 액션을 설정하여 신속하게 대응해야 합니다.

확인 방법:AWS Config 콘솔에서 레코더가 모든 리소스 유형을 기록하도록 설정되어 있는지 확인합니다. 규칙 목록에서 CIS Benchmark 관련 규칙이 활성화되어 있는지 점검하고, 비준수 리소스 목록을 검토합니다.
비용 이상 탐지 알림 설정

AWS Budgets 또는 Cost Anomaly Detection을 설정하여 비정상적인 비용 증가를 탐지해야 합니다. 암호화폐 마이닝이나 리소스 남용 등의 보안 사고는 비용 급증으로 먼저 발견되는 경우가 많으므로 비용 모니터링도 보안의 일부입니다.

확인 방법:AWS Budgets 콘솔에서 월별 예산과 임계값 알림이 설정되어 있는지 확인합니다. Cost Explorer의 이상 탐지 기능이 활성화되어 있는지 점검하고, 알림이 적절한 담당자에게 전달되는지 확인합니다.
인시던트 대응 플레이북 수립

보안 사고 발생 시 대응 절차를 문서화한 인시던트 대응 플레이북을 수립해야 합니다. 자격 증명 유출, 데이터 침해, 랜섬웨어 등 시나리오별 대응 절차와 담당자를 명시하고, 정기적으로 모의 훈련을 실시해야 합니다.

확인 방법:인시던트 대응 플레이북 문서의 존재 여부와 최신성을 확인합니다. 주요 시나리오(자격 증명 유출, EC2 침해 등)에 대한 단계별 대응 절차가 포함되어 있는지 검토하고, 최근 모의 훈련 수행 기록을 확인합니다.
EC2 인스턴스 메타데이터 보호(IMDSv2)

모든 EC2 인스턴스에서 인스턴스 메타데이터 서비스 v2(IMDSv2)를 필수로 설정하여 SSRF 공격을 통한 자격 증명 탈취를 방지해야 합니다. IMDSv1을 비활성화하고, 토큰 기반 세션 방식을 적용해야 합니다.

확인 방법:EC2 콘솔에서 각 인스턴스의 "인스턴스 설정 > 메타데이터 옵션 수정"에서 IMDSv2가 "필수"로 설정되어 있는지 확인합니다. AWS CLI로 aws ec2 describe-instances 명령을 사용하여 MetadataOptions.HttpTokens 값을 일괄 점검합니다.
AMI/컨테이너 이미지 보안 스캔

사용 중인 AMI와 컨테이너 이미지(ECR)에 대해 정기적으로 취약점 스캔을 수행해야 합니다. Amazon Inspector 또는 ECR 이미지 스캐닝을 활용하여 알려진 CVE를 탐지하고, Critical/High 취약점이 포함된 이미지 사용을 차단해야 합니다.

확인 방법:Amazon Inspector 콘솔에서 EC2 인스턴스와 ECR 이미지의 스캔 결과를 확인합니다. Critical/High 심각도의 취약점 목록을 검토하고, 패치 적용 여부 및 대응 계획을 점검합니다.
OS 및 소프트웨어 패치 관리

EC2 인스턴스의 운영체제와 설치된 소프트웨어에 대해 정기적인 보안 패치를 적용해야 합니다. AWS Systems Manager Patch Manager를 사용하여 패치 기준선을 정의하고, 자동 패치 적용 일정을 설정해야 합니다.

확인 방법:Systems Manager 콘솔의 "Patch Manager"에서 패치 기준선과 패치 그룹이 설정되어 있는지 확인합니다. 최근 패치 적용 보고서를 검토하고, 미적용 Critical 패치가 있는 인스턴스를 식별합니다.
IAM 역할 기반 인스턴스 자격 증명

EC2 인스턴스에서 AWS 서비스에 접근할 때 액세스 키를 하드코딩하지 않고, IAM 인스턴스 프로파일(역할)을 사용해야 합니다. 각 인스턴스에는 업무에 필요한 최소 권한만 부여된 역할을 연결해야 합니다.

확인 방법:EC2 콘솔에서 각 인스턴스에 IAM 역할이 연결되어 있는지 확인합니다. 인스턴스 내부에서 환경 변수나 설정 파일에 하드코딩된 액세스 키가 없는지 점검합니다. 연결된 역할의 권한이 최소 권한 원칙을 준수하는지 검토합니다.
사용하지 않는 리소스 정리

미사용 EC2 인스턴스, 할당되지 않은 EBS 볼륨, 오래된 스냅샷, 미사용 Elastic IP 등을 정기적으로 식별하고 정리해야 합니다. 불필요한 리소스는 공격 표면을 확대하고 비용을 증가시킵니다.

확인 방법:AWS Trusted Advisor 또는 Cost Explorer에서 미사용 리소스를 식별합니다. 중지된 상태로 오래 방치된 인스턴스, 연결되지 않은 EBS 볼륨, 30일 이상 된 스냅샷을 검토하고 정리 계획을 수립합니다.
컨테이너 런타임 보안 설정

ECS/EKS 컨테이너에서 루트 사용자로 실행되지 않도록 하고, 읽기 전용 파일시스템을 적용해야 합니다. 특권 모드(privileged) 사용을 금지하고, 리소스 제한(CPU/메모리)을 설정하여 리소스 남용을 방지해야 합니다.

확인 방법:ECS 태스크 정의 또는 EKS Pod 보안 정책에서 runAsNonRoot, readOnlyRootFilesystem, privileged 설정을 확인합니다. 리소스 제한이 적절히 설정되어 있는지 점검하고, 보안 컨텍스트 구성을 검토합니다.
Lambda 함수 보안 설정

Lambda 함수에 최소 권한 IAM 역할을 부여하고, 환경 변수에 민감 정보를 저장할 때는 KMS로 암호화해야 합니다. VPC 내에서 실행되도록 구성하여 네트워크 격리를 적용하고, 함수 URL의 인증 유형을 적절히 설정해야 합니다.

확인 방법:Lambda 콘솔에서 각 함수의 IAM 역할 권한을 검토하고, 환경 변수 암호화 여부를 확인합니다. 함수 URL이 있는 경우 인증 유형(AWS_IAM/NONE)이 적절한지 점검합니다. VPC 설정이 필요한 함수가 올바르게 구성되어 있는지 확인합니다.
SSH/RDP 접근 통제

EC2 인스턴스에 대한 SSH/RDP 접근은 AWS Systems Manager Session Manager를 사용하여 포트 개방 없이 안전하게 접속해야 합니다. 키 페어 기반 인증을 사용하고, 패스워드 인증은 비활성화해야 합니다.

확인 방법:Systems Manager 콘솔에서 Session Manager가 활성화되어 있는지 확인합니다. 보안 그룹에서 SSH(22)/RDP(3389) 포트가 0.0.0.0/0으로 열려 있지 않은지 점검합니다. EC2 인스턴스의 sshd_config에서 PasswordAuthentication이 no로 설정되어 있는지 확인합니다.
데이터 저장 위치(리전) 관리

개인정보 및 중요 데이터의 저장 위치를 파악하고, 데이터 주권 법규(개인정보보호법, GDPR 등)에 따라 허용된 리전에서만 처리되도록 해야 합니다. S3 버킷 리전, RDS 인스턴스 위치, 백업 저장소 위치를 포함하여 모든 데이터 저장소를 관리해야 합니다.

확인 방법:모든 AWS 리소스의 리전을 목록화하고, 개인정보가 포함된 서비스가 국내 리전(ap-northeast-2)에서만 운영되는지 확인합니다. S3 교차 리전 복제 설정에서 데이터가 허용되지 않은 리전으로 복제되지 않는지 점검합니다.
KMS 키 관리 정책 수립

AWS KMS 키의 생성, 사용, 교체, 폐기에 대한 명확한 정책을 수립해야 합니다. 키 교체 주기(자동 교체 1년)를 설정하고, 키 사용 권한을 최소화하며, 키 삭제 대기 기간을 충분히(최소 7일) 설정해야 합니다.

확인 방법:KMS 콘솔에서 모든 CMK(고객 관리형 키)의 키 교체 설정을 확인합니다. 키 정책에서 관리자/사용자 역할이 분리되어 있는지 점검하고, 비활성화되거나 삭제 예정인 키가 없는지 검토합니다.
CIS Benchmark 준수 점검

CIS(Center for Internet Security) AWS Foundations Benchmark를 기반으로 클라우드 환경의 보안 설정을 정기적으로 점검해야 합니다. AWS Security Hub에서 CIS 표준을 활성화하여 자동 평가를 수행하고, 비준수 항목에 대해 교정 계획을 수립해야 합니다.

확인 방법:AWS Security Hub 콘솔에서 CIS AWS Foundations Benchmark 표준이 활성화되어 있는지 확인합니다. 전체 보안 점수와 비준수 항목 목록을 검토하고, Critical/High 심각도의 비준수 항목에 대한 교정 일정을 점검합니다.
개인정보 암호화 정책 적용

개인정보보호법에 따라 고유식별정보(주민등록번호, 여권번호 등), 비밀번호, 바이오 정보는 반드시 암호화하여 저장해야 합니다. 전송 구간에서도 TLS 1.2 이상을 사용하고, 암호화 알고리즘은 국가 권고 기준(ARIA-128, AES-256 등)을 충족해야 합니다.

확인 방법:데이터베이스에 저장된 개인정보 필드의 암호화 방식을 확인합니다. RDS의 TLS 설정과 인증서를 점검하고, 애플리케이션 레벨에서의 필드 암호화 로직이 적절한 알고리즘을 사용하는지 검토합니다.
감사 로그 보존 및 무결성 보장

규정에서 요구하는 기간(최소 1년, 금융권 5년) 동안 감사 로그를 안전하게 보존해야 합니다. S3 Object Lock 또는 CloudWatch Logs 보존 정책을 사용하여 로그 변조 및 삭제를 방지하고, 정기적으로 로그 무결성을 검증해야 합니다.

확인 방법:CloudTrail 로그가 저장된 S3 버킷의 Object Lock(WORM) 설정을 확인합니다. CloudWatch Logs 그룹의 보존 기간이 규정을 충족하는지 점검하고, CloudTrail 로그 파일 무결성 검증이 활성화되어 있는지 확인합니다.
태그 기반 리소스 관리 정책

모든 클라우드 리소스에 일관된 태깅 정책을 적용하여 소유자, 환경, 프로젝트, 데이터 분류 등급 등을 명시해야 합니다. 태그를 기반으로 접근 제어(ABAC), 비용 할당, 규정 준수 모니터링을 수행할 수 있어야 합니다.

확인 방법:AWS Organizations의 태그 정책 또는 AWS Config의 required-tags 규칙이 설정되어 있는지 확인합니다. 필수 태그(Owner, Environment, DataClassification 등)가 정의되어 있고, 미태깅 리소스가 없는지 점검합니다.
정기 보안 감사 및 침투 테스트

클라우드 환경에 대해 최소 연 1회 이상 보안 감사와 침투 테스트를 수행해야 합니다. AWS의 침투 테스트 정책에 따라 사전 승인 없이 테스트 가능한 서비스와 사전 승인이 필요한 서비스를 구분하고, 결과에 따른 개선 조치를 이행해야 합니다.

확인 방법:최근 보안 감사 및 침투 테스트 보고서의 존재 여부와 수행 시기를 확인합니다. 발견된 취약점에 대한 조치 현황을 점검하고, 다음 감사 일정이 계획되어 있는지 확인합니다. AWS 침투 테스트 정책 준수 여부도 검토합니다.
재해 복구(DR) 계획 수립 및 테스트

클라우드 환경의 재해 복구 계획을 수립하고, RPO(복구 시점 목표)와 RTO(복구 시간 목표)를 정의해야 합니다. 멀티 리전 또는 멀티 AZ 아키텍처를 구성하고, 정기적으로 DR 전환 훈련을 실시하여 실효성을 검증해야 합니다.

확인 방법:재해 복구 계획 문서에서 RPO/RTO 목표가 정의되어 있는지 확인합니다. 주요 서비스의 멀티 AZ 또는 멀티 리전 구성 여부를 점검하고, 최근 DR 전환 훈련 수행 기록 및 결과를 검토합니다. 백업 복원 테스트가 정기적으로 수행되는지 확인합니다.