Cloud 환경에서 Application 서비스를 운영할 때 Network Layer 보안만으로는 충분하지 않습니다.
공격자는 직접 Server를 공격하는 것이 아니라 Web Application의 취약점을 대상으로 공격하는 경우가 많습니다.
대표적인 Web 공격:
- SQL Injection
- Cross Site Scripting(XSS)
- 악성 Bot Traffic
- 비정상 Request
- DDoS 공격
AWS에서는 이러한 Web Application 공격을 방어하기 위해 AWS WAF(Web Application Firewall)를 제공합니다.
예:
사용자 요청
↓
CloudFront / Load Balancer
↓
AWS WAF 검사
↓
허용 Traffic 전달
↓
Application Server
AWS WAF는 Application Layer 보안을 담당하는 핵심 Security 서비스입니다.
| 구성 요소 | 역할 |
|---|---|
| Web ACL | 보안 규칙 그룹 |
| Rule | Traffic 검사 조건 |
| Managed Rule | AWS 제공 보안 규칙 |
| IP Set | 차단 IP 관리 |
| CloudWatch | Monitoring |
AWS WAF 구조를 이해하면 안전한 Web Application Security Architecture를 설계할 수 있습니다.
AWS WAF란?
AWS WAF(Web Application Firewall)는 HTTP/HTTPS 요청을 분석하고 악성 Traffic을 차단하는 Managed Firewall 서비스입니다.
보호 대상:
- Web Application
- API Gateway
- CloudFront
- Application Load Balancer
- AWS AppSync
Application Layer 공격을 방어합니다.
AWS WAF Architecture
기본 구조:
User
↓
CloudFront / ALB
↓
AWS WAF
↓
Application
↓
Database
Application 앞단에서 Request를 검사합니다.
AWS WAF Web ACL이란?
Web ACL(Web Access Control List)은 WAF 보안 정책을 정의하는 단위입니다.
구성:
Web ACL
↓
Rules
↓
Conditions
↓
Action
Traffic 허용 또는 차단 기준을 관리합니다.
AWS WAF Rule이란?
Rule은 Traffic 검사 조건입니다.
예:
조건:
특정 IP 접근
↓
Action:
Block
또는:
SQL Injection 패턴 감지
↓
Block
공격 패턴을 분석합니다.
AWS WAF Rule Action
대표 Action:
| Action | 설명 |
|---|---|
| Allow | 허용 |
| Block | 차단 |
| Count | 기록만 수행 |
| CAPTCHA | 사용자 확인 |
| Challenge | 자동 검증 |
보안 정책에 맞게 설정합니다.
AWS WAF Managed Rules란?
AWS Managed Rules는 AWS가 제공하는 보안 규칙 모음입니다.
탐지 대상:
- SQL Injection
- XSS
- Common Vulnerability
- Bot Traffic
직접 모든 Rule을 작성하지 않아도 됩니다.
AWS WAF와 CloudFront 연결
글로벌 Web Security 구조:
User
↓
CloudFront Edge Location
↓
AWS WAF
↓
S3 / ALB
↓
Application
전 세계 사용자 Traffic을 보호합니다.
AWS WAF와 Application Load Balancer 연결
일반적인 Web Architecture:
Internet
↓
ALB
↓
AWS WAF
↓
EC2 / ECS / EKS
↓
Application
Web Server 앞단에서 공격을 차단합니다.
AWS WAF와 EKS Kubernetes 연결
Kubernetes 환경:
User
↓
AWS WAF
↓
ALB Ingress Controller
↓
EKS Service
↓
Pod
Cloud와 Container 보안을 함께 구성합니다.
AWS WAF IP Set 관리
특정 IP를 관리할 수 있습니다.
활용:
허용 IP:
관리자 접근 허용
차단 IP:
악성 IP Block
접근 제어를 강화합니다.
AWS WAF Rate Based Rule
Rate Based Rule은 과도한 Request를 제한합니다.
예:
사용자
↓
1분 동안 10,000 Request 발생
↓
비정상 Traffic 판단
↓
차단
Bot 공격 방어에 활용됩니다.
AWS WAF와 DDoS Protection
AWS WAF는 Application Layer 공격 방어에 사용됩니다.
함께 사용:
- AWS Shield
- CloudFront
- Route 53
다계층 DDoS 방어 구조를 구성합니다.
AWS WAF Logging
WAF Log를 저장할 수 있습니다.
구조:
Request
↓
WAF
↓
Log
↓
CloudWatch / S3
↓
Analysis
공격 패턴 분석에 활용합니다.
AWS WAF Security Best Practice
권장:
- Managed Rule 활성화
- Rate Limit 설정
- Log 활성화
- Rule 정기 검토
- CloudFront 연동
안전한 Web Security 환경을 구축합니다.
AWS WAF 장애 분석
Web ACL 확인:
aws wafv2 list-web-acls
Rule 확인:
aws wafv2 get-web-acl
Logging 확인:
aws wafv2 get-logging-configuration
확인:
- Rule Priority
- Block 조건
- IP 설정
- Logging 상태
AWS WAF 장점
| 장점 | 설명 |
|---|---|
| Web 공격 방어 | Application 보호 |
| Managed Service | 운영 부담 감소 |
| AWS 통합 | CloudFront·ALB 연결 |
| 확장성 | 대규모 Traffic 대응 |
AWS WAF는 Cloud Web Security Architecture의 핵심 서비스입니다.
자주 묻는 질문
AWS WAF는 Firewall과 같은 것인가요?
Network Firewall과 목적이 다릅니다.
WAF는 HTTP/HTTPS Web Application 공격을 방어합니다.
AWS WAF는 DDoS를 완전히 막나요?
WAF는 Application Layer 공격 방어에 집중하며 AWS Shield 등과 함께 사용하는 것이 일반적입니다.
Kubernetes에서도 AWS WAF를 사용할 수 있나요?
가능합니다.
ALB Ingress Controller와 연결하여 EKS Application 앞단 보안 계층으로 사용할 수 있습니다.
마무리
AWS WAF는 HTTP/HTTPS Traffic을 분석하여 SQL Injection, XSS, Bot 공격 등 Web Application 공격을 방어하는 Managed Web Firewall 서비스입니다.
| 구성 요소 | 역할 |
|---|---|
| Web ACL | 보안 정책 |
| Rule | Traffic 검사 |
| Managed Rule | 공격 탐지 |
| IP Set | 접근 제어 |
| Logging | 분석 기록 |
AWS WAF 구조를 이해하면 CloudFront, ALB, EKS 기반 Enterprise Web Security Architecture를 구축할 수 있습니다.