안녕하세요 서후아빠입니다. ^_^
이번 세션은 AWS WAF에 대해서 업무적으로 필요한 최소한의 개념에 대해서 간단히 정리해 보았습니다.
이외 내용은 업무적으로 필요할때마다 찾아보시는 것이 효율적이라고 생각합니다.
AWS WAF
Layer 7의 Web Application에 대한 공격 탐지 및 차단
Nginx WAF 유료 모델을 이용하여 만든 서비스
사용 가능한 AWS services : CloudFront, Application LoadBalancer, API Gateway, AWS AppSync
AWS WAF 기능
웹 트래픽 필터링 : IP 주소, HTTP 헤더 및 본문 또는 사용자 정의 URI와 같은 조건을 기준으로 웹 트래픽 필터링
AWS WAF Bot Control (옵션, 유료) : 일반적인 봇 트래픽을 제어하고 가시성을 확보
AWS WAF Fraud Control (옵션, 유료) : 애플리케이션의 로그인 페이지에서 손상된 자격 증명을 사용하여 사용자 계정에 대한 무단 액세스 모니터링
AWS Firewall Manager와 통합 : 여러 AWS 게정에 배포된 WAF를 중앙에서 구성 및 관리 가능
실시간 가시성 : IP 주소, 지리적 위치, URI, 사용자 에이전트 및 참조자에 관한 세부 정보를 포함하는 원시 요청을 캡처하고 실시간 지표를 제공
AWS WAF 구조
하나의 Web ACL를 여러개의 Target에 적용 가능
rule groups의 Max Capacity가 1500 초과할 경우 : Web ACL를 2개 이상으로 분리 생성 혹은 AWS에 요청하여 상향 신청
AWS Managed rule groups
- 11개 제공 (2022년 8월 기준)
- group에 포함된 rule에 대해서 범위 축소 기능만 존재 : 오탐지 발생 시 세부적인 rule 조정 불가능
- 세부적인 조정은 My own rules에서 생성하여 사용
3rd Party Managed rule groups : MarketPlace에서 3rd Party 제품 구해한 경우에 사용 가능
Target
- Region 기준으로 동작 : ALB, API Gateway, AWS AppSync
- Global 동작 : CloudFront
AWS WAF 비용
Web ACL 1개당 : $ 5/Month
Rule 1개당 : $ 1/Month
요청 1백만 건당 : $ 0.6
AWS WAF Bot Control (옵션)
- 구독 : $ 10/Month
- 요청 1백만 건당 : $ 1
- 분석된 챌린지(Captcha) 시도 1천개당 : $ 0.4
AWS WAF Fraud Control (옵션)
- 구독 : $ 10/Month
- 분석된 로그인 시도 1천개당 : $ 1
AWS WAF 구성
구성 | 방안 |
CloudFront(CF) 뒤에 ALB 구성하고, CF에 연결된 WAF에 제한(Restricting) 적용 | 대규모 전송 특성상 CF에 적용하는 WAF는 간단한 BlackList 형태로 적용 - IP, HTTP referer, user-agent bot 차단 - Rate-Based Rule CF 원본(Origin)은 반드시 Public 통신되어야 하므로 인터넷에 노출된 ALB에 대해 CF만 접근할 수 있도록 접근 제한 설정 - ALB의 SG에 CF 관리용 접두사를 적용 |
Firewall Manager 이용한 WAF ACLs 중앙 관리 | 전제 조건 : Firewall Manager가 위치한 계정(일명 보안계정)과 WAF가 위치한 계정(일명 일반계정)이 하나의 AWS Organizations로 묶여 있어야 함 개념 : 보안계정의 WAF ACL을 일반계정에서 공유받아 사용 |
WAF 로그를 중앙 관리 | 전제 조건 : Firewall Manager 사용여부 관계없이 구성이 가능하나, 모든 WAF ACLs의 로깅 활성화 |
HTTP referer : 쉽게 말해 A사이트의 링크를 클릭했을 때, B사이트로 이동하는 것으로 B사이트는 A사이트로부터 방문한 사실 확인할 수 있습니다. 조작이 가능하기 때문에 보안상 주의 필요하므로 차단합니다. user-agent bot : robots.txt와 같은 크롤러를 차단하기 위함이며, 크롤러는 한 웹페이지에서 다른 웹페이지로 연결되는 링크를 따라가며 웹사이트를 자동으로 검색하는데 사용되는 프로그램을 가리키는 일반적인 용어입니다. |
참고 URL
WCL(Web ACL Capacity Units) 상향 신청 : https://docs.aws.amazon.com/ko_kr/waf/latest/developerguide/limits.html
WAF 로그 중앙 관리(S3 이용) 방안 : https://aws.amazon.com/ko/premiumsupport/knowledge-center/waf-send-logs-centralized-account/
'Security' 카테고리의 다른 글
[이론] AWS Secrets Manager 기본 개념 (0) | 2022.08.08 |
---|---|
[실습] AWS WAF 구성하기 (0) | 2022.08.05 |
[실습] AWS Network Firewall 구성하기 (0) | 2022.08.01 |
[이론] AWS Network Firewall 기본 개념 (1) | 2022.07.27 |
[이론] AWS KMS (Key Management Service) 기본 개념 (0) | 2022.07.27 |