이두잉의 AWS 세상

AWS WAF&Shield 소개

2017.11.23 13:37 - leedoing leedoing

AWS WAF&Shield 소개

(http://docs.aws.amazon.com/ko_kr/waf/latest/developerguide/ddos-overview.html


AWS는 Document 정리가 잘 되어 있어서 좋다. 너무 잘 되어 있어서 불편할 정도...


1. WAF

AWS WAF는 CloudFront 및 ELB/ALB/EIP/Route 53과 연동되는 서비스(국내는 아직 불가하며 글로벌 서비스인 CF, Route 53만 가능)로 따로 WAF를 위한 팜이 빠져있는지는 모르겠지만, Apache나 Tomcat 보안 모듈이랑 비슷하다고 생각하면 좋을 듯 하다. (개인적인 의견)


가령, 그림으로 이해하자면 아래와 같은 그림으로 구성된다. (아래 그림은 Web log를 Lambda로 분석하여 실시간으로 WAF에 Rule Set을 적용하는 이상적인 Architecture)


기타 서비스와 같이 AWS Web Console이나 API를 통해 구성이 가능하며, 방식도 비슷하다.

Web ACLs이라는 Group을 만들고, 해당 Group에 각각의 Rules을 Attach하고 Group을 CloudFront Distribution 혹은 ELB(ALB)와 같은 다른 서비스와 연동한다. 

가능한 룰은 왼쪽 리스트처럼 cross-site 스크립팅, Geo IP, IP ACL, 컨텐츠 업로드 사이즈 제한, SQL 인젝션, HTTP 헤더, 쿼리스트링 차단(레퍼러나 기타 등등)이 있다.

기본적인 Rule Set을 만들고, 이상 징후 발생 시 사후 대처로 능동적으로 대처할 수 있다. (보안 공부를...)

비용은 Rule Set 당 요금을 받으며(이건 얼마 안 하는데..), Request 별로 과금이 된다. 가령 API나 LOG 파일 전송이 필요한 서비스에 WAF를 적용하면 요금 폭탄을 받을 가능성이 매우 크니 적용 전에 비용에 대한 고려가 꼭 필요하다.

(https://aws.amazon.com/ko/waf/pricing/


일단 문제 발생 시에는 간단한 룰이라도 구성하여 사후 대처는 할만하다. 그렇게 조금 더 발전하면 능동적으로 WAF를 언젠가는 잘 사용할 수 있을 것 같다.


2. Shield

AWS Shield Standard는 기본적으로 제공되는 무료 서비스이며, VIP 서비스인 Advance가 있다. 보안에 대한 소비자 욕구가 커지므로써 해당 서비스를 만들었다. 

Advance가 생기기 전까지는 Shield Standard 라는 서비스 자체가 존재하지 않았다. "님들 모르게 L3/4 Layer를 우리가 방어해주고 있어요" 라고 광고 하는데 어차피 자기들 팜에 대한 방어가 필요하니, 이건 기타 IDC에서도 어느정도 지원은 해주는 것으로 알고 있다. 


알고 있듯이, AWS 팜 내에는 appliance 보안 장비를 올릴 수 없다. 그래서 VM에 보안 S/W를 올려서 사용하곤 하는데 비용이나 관리가 좀 어렵다. 그래서 WAF를 출시했고, 고객 욕구를 더 충족(돈?)시키기 위해 Shield Advance를 만든 듯 하다. Sheild Advance 서비스는 AWS 내의 보안팀(DRT)이 레포팅도 해주고, WAF Rules도 구성해주며 보안 컨설팅도 해준다고 한다.


AWS 콘솔에서 WAF & Shield->Protect resources->Activate AWS Shield Adavanced를 선택하고 I agree를 치면 이제 여러분의 계정에서 1년동안 매월 $3000가 과금이 된다.  

Standard와 가장 큰 차이는 L7 트래픽 모니터링, WAF RuleSet 구성, 레포팅, DDoS로 인한 요금 배상인 듯 하다.

(Standard VS Advanced http://docs.aws.amazon.com/ko_kr/waf/latest/developerguide/ddos-overview.html#ddos-drt)


실제 I agree를 하면 Shield를 직관적으로 구성할 수 있게 UI를 잘 해놨다. 기본적으로 Shield를 실행해도 바로 DRT 팀이 WAF Rule Set 적용 등은 해주진 않는다. Support Case를 통해 요청이 필요하다. 요청하고 싶으나 월 $3000를 낼 수 없기 때문에 사용하지 않았으니 환불해달라고 했다... (시말서 각인가..) 가입되어 있는 시간으로 요금이 지불될지는 모르겠다...


엔터프라이즈급 서비스를 운영한다면 고려해볼만하다고 생각한다. 실제 사용을 못해봐서 장단점을 말해줄 수 없는게 안타깝지만.. 더이상 도전은 여기서 멈춰야겠다. 어제 오늘만해도 벌써 $200인가....

저작자 표시
신고