WAF(Web Application Firewall)
http(s) 요청을 모니터링하고 관리하는 방화벽
규칙을 정하고 어떤 액션을 취할지 정의할 수 있음
액션 종류
- 허용(Allow)
- 차단(Block)
- 카운팅(Count)
- CAPTCHAR를 실행시키거나 사람인지, 브라우저인지 체크
WAF Rules
- 요청을 검사할 때 사용할 기준을 정하고 action을 적용할지 정함
- ex) Bot이면 요청을 차단
IP 주소 기준, 지역 기준 등
Actions
- Allow and Block actions
- terminating action
terminate되면 그 후 다른 rule을 거치지 않는다.
- Count action
- non-terminating action
- WAS는 request를 count하고 다음 룰로 넘어간다.
- CAPTCHA and Challenge
- terminating or non-terminating action
- …
Rule action overriding
- Allow
- 보호받는 자원으로 forward하기 전에 request에 custom header를 넣을 수 있다.
- Block
- status code 403
- rule을 통해 response도 커스터마이즈할 수 있다.
- block 당하면 block action setting이 설정한 response를 client에게 전송한다.
- Count
- 남은 rule을 거친다.
- custom header를 request에 넣거나 label을 붙인다.
- CAPTCHA and Challenge
- CAPTCHA plzzle을 쓰거나
- silent challenge를 사용해 request가 bot인지 아닌지 체크한다.
Overriding the rule action to Count
룰의 action을 Count로 overriding할 수 있다. 프로덕션에 룰을 적용하기전에 로그를 보면서 테스트, 모니터링하는데 주로 쓰임.
Temporary inconsistencies during updates
web ACL 생성 혹은 편집 시에 전 영역으로 퍼지는데 시간이 조금 걸리기 때문에 싱크 이슈가 있을 수 있다.