SAABlog
보안중급

AWS WAF & Shield: 웹 애플리케이션과 DDoS 방어 완벽 가이드

AWS WAF로 웹 공격을 차단하고 Shield로 DDoS를 방어하는 방법과 아키텍처 설계를 알아봅니다.

PHILOLAMB-
WAFShieldDDoS웹 보안CloudFront

관련 시험 도메인

  • Domain 1: Design Secure Architectures

핵심 요약 (BLUF)

AWS Shield Standard는 무료로 L3/L4 DDoS를 방어하고, WAF는 L7 웹 공격(SQL 인젝션, XSS 등)을 차단합니다. Shield Advanced는 유료로 고급 DDoS 보호, SRT 지원, 비용 보호를 제공합니다. CloudFront + WAF 조합이 엣지 방어의 모범 사례입니다.

시험 팁

시험 핵심: "L3/L4 DDoS = Shield", "L7 웹 공격 = WAF", "고급 DDoS + SRT + 비용 보호 = Shield Advanced"

AWS Shield

Shield Standard vs Advanced

항목Shield StandardShield Advanced
비용무료 (자동 적용)월 $3,000 + 데이터 전송
보호 계층L3/L4L3/L4 + L7
적용 대상모든 AWS 리소스CloudFront, ALB, NLB, EC2, Global Accelerator, Route 53
DDoS 탐지기본고급 (실시간 가시성)
SRT 지원✅ 24/7
비용 보호✅ DDoS로 인한 스케일링 비용 크레딧
WAF 통합✅ WAF 비용 포함
상태 기반 탐지✅ 리소스별 트래픽 베이스라인
약정없음1년

Shield Standard

모든 AWS 고객에게 자동으로 적용됩니다.

보호 범위:
- SYN/UDP Flood
- Reflection 공격
- 기타 L3/L4 DDoS 공격

자동 탐지 + 자동 완화 (사용자 설정 불필요)

Shield Advanced

대규모, 정교한 DDoS 공격에 대한 고급 보호입니다.

추가 기능:
1. 실시간 공격 가시성 (CloudWatch 지표)
2. Shield Response Team (SRT) 24/7 지원
3. DDoS 비용 보호 (스케일링 비용 크레딧)
4. WAF 규칙 자동 생성 (L7 DDoS 완화)
5. 상태 기반 탐지 (정상 트래픽 베이스라인)

시험 팁

Shield Advanced 키워드: "24/7 전문가 지원", "DDoS 비용 보호", "실시간 가시성" → Shield Advanced 선택

AWS WAF

WAF란?

웹 애플리케이션 방화벽으로, HTTP/HTTPS 요청을 검사하여 악성 트래픽을 차단합니다.

WAF 적용 가능한 서비스

서비스보호 대상
CloudFront글로벌 엣지에서 차단 (권장)
ALB리전별 웹 앱 보호
API GatewayAPI 엔드포인트 보호
AppSyncGraphQL API 보호
Cognito User Pool인증 엔드포인트 보호

시험 팁

WAF 미지원: NLB, EC2 직접 연결에는 WAF를 적용할 수 없습니다. CloudFront나 ALB를 앞에 두어야 합니다.

WAF 규칙 유형

1. 일반 규칙 (Regular Rule)

특정 조건을 검사하여 허용/차단합니다.

조건설명
IP 세트특정 IP 허용/차단
지역 일치국가별 차단
문자열 일치URI, 헤더, 본문 검사
정규식패턴 매칭
크기 제약요청 크기 제한
SQL 인젝션SQL 삽입 공격 탐지
XSS크로스 사이트 스크립팅 탐지

2. 속도 기반 규칙 (Rate-Based Rule)

5분간 동일 IP에서 임계치 초과 요청 시 자동 차단

예시: 5분간 2,000건 초과 → IP 차단
→ HTTP Flood DDoS 방어에 효과적

3. 관리형 규칙 그룹 (Managed Rule Groups)

AWS 및 AWS Marketplace 파트너가 제공하는 사전 구성된 규칙입니다.

규칙 그룹보호 대상
Core Rule Set일반 웹 취약점 (OWASP Top 10)
SQL InjectionSQL 삽입 공격
Known Bad Inputs알려진 악성 패턴
IP Reputation악성 IP 차단
Bot Control봇 트래픽 관리
Account Takeover Prevention계정 탈취 방지

WAF Web ACL 구조

Web ACL (웹 접근 제어 목록)
│
├── Rule 1: AWS 관리형 규칙 (Core Rule Set)    [Priority: 0]
│   → Action: Block
│
├── Rule 2: 속도 기반 규칙 (2000건/5분)        [Priority: 1]
│   → Action: Block
│
├── Rule 3: 지역 차단 (특정 국가)              [Priority: 2]
│   → Action: Block
│
├── Rule 4: IP 화이트리스트                    [Priority: 3]
│   → Action: Allow
│
└── Default Action: Allow

시험 팁

WAF 규칙 평가 순서: 우선순위(Priority) 번호가 낮은 규칙부터 평가합니다. 매칭되면 해당 액션 실행 후 평가 종료.

다층 방어 아키텍처

모범 사례: CloudFront + WAF + Shield

[인터넷]
    │
    ▼
[CloudFront] ← WAF Web ACL 연결
    │            ├── 관리형 규칙 (OWASP)
    │            ├── 속도 기반 규칙
    │            └── 지역 차단
    │
    │  Shield Standard (자동, 무료)
    │  Shield Advanced (선택, 유료)
    │
    ▼
[ALB] ← 추가 WAF 가능
    │
    ▼
[EC2 / ECS / Lambda]

방어 계층별 역할

계층서비스방어 대상
엣지 (L3/L4)Shield StandardSYN Flood, UDP Flood
엣지 (L7)WAF on CloudFrontSQL 인젝션, XSS, 봇
리전 (L7)WAF on ALB추가 규칙 적용
고급 DDoSShield Advanced대규모 정교한 공격

WAF 비용 구조

항목비용
Web ACL$5/월
규칙$1/규칙/월
요청$0.60/백만 건
관리형 규칙 그룹그룹별 상이
예시: Web ACL 1개, 규칙 5개, 월 1000만 건
- Web ACL: $5
- 규칙: $5 (5 × $1)
- 요청: $6 (10 × $0.60)
- 합계: $16/월

AWS Firewall Manager

여러 계정의 WAF, Shield Advanced, Security Group을 중앙 관리합니다.

Organizations + Firewall Manager:

Management Account
└── Firewall Manager
    ├── WAF 정책 → 모든 계정의 CloudFront/ALB에 적용
    ├── Shield Advanced 정책 → 지정 계정에 적용
    └── Security Group 정책 → VPC 리소스에 적용

시험 팁

Firewall Manager 전제 조건: AWS Organizations + WAF 활성화가 필요합니다.

SAA-C03 시험 출제 포인트

  1. Shield Standard: "무료, 자동, L3/L4 DDoS 방어"
  2. Shield Advanced: "유료, SRT 24/7, DDoS 비용 보호"
  3. WAF 적용 대상: "CloudFront, ALB, API Gateway (NLB 불가)"
  4. 모범 사례: "CloudFront + WAF = 엣지 방어"
  5. 속도 기반 규칙: "HTTP Flood 방어"

시험 팁

시험 문제 예시: "웹 애플리케이션이 SQL 인젝션 공격을 받고 있습니다. 어떻게 방어할까요?" → 정답: AWS WAF에 SQL 인젝션 관리형 규칙 적용 (CloudFront 또는 ALB에 연결)

자주 묻는 질문 (FAQ)

Q: Shield Standard만으로 충분한가요?

대부분의 일반적인 DDoS 공격에 대해 Shield Standard로 충분합니다. 대규모 공격, SRT 전문가 지원, 비용 보호가 필요한 경우에만 Shield Advanced를 고려하세요.

Q: WAF를 NLB에 직접 적용할 수 있나요?

아니요. WAF는 L7(HTTP/HTTPS) 서비스에만 적용 가능합니다. NLB는 L4이므로 직접 적용할 수 없습니다. NLB 앞에 CloudFront를 두거나, ALB로 전환을 고려하세요.

Q: Shield Advanced를 활성화하면 WAF도 포함되나요?

네. Shield Advanced에는 WAF 사용 비용이 포함됩니다. WAF Web ACL, 규칙, 요청 비용이 Shield Advanced 구독에 포함됩니다.

Q: WAF 규칙을 테스트하려면 어떻게 하나요?

규칙 액션을 Count(카운트) 모드로 설정하면 실제 차단 없이 매칭 건수만 기록합니다. 충분히 테스트한 후 Block으로 변경하세요.

Q: Firewall Manager는 언제 사용해야 하나요?

여러 AWS 계정에 걸쳐 WAF 규칙이나 Shield Advanced를 일관되게 적용해야 할 때 사용합니다. 단일 계정이면 Firewall Manager 없이 WAF를 직접 설정하는 것이 간단합니다.

관련 글

참고 자료