ysuekkom의 IT study note

[AWS 실습] 공격 테스트 대응 WAF 설정 및 로깅 확인하기III -WAF 설정, 공격 차단 본문

Cloud Service/AWS

[AWS 실습] 공격 테스트 대응 WAF 설정 및 로깅 확인하기III -WAF 설정, 공격 차단

ysuekkom 2022. 10. 30. 16:54

개인 공부 기록용

aws waf 공격 및 방어 실습 따라하기

(sessin.github.io)

 

I편 바로가기

https://ysuekkom8915.tistory.com/14

 

[AWS 실습] 공격 테스트 대응 WAF 설정 및 로깅 확인하기I -실습 환경 구축

개인 공부 기록용 aws waf 공격 및 방어 실습 따라하기 (sessin.github.io) CloudFormation로 생성한 DVWA 웹 서버를 공격 대상으로하는 모의 웹 공격 실습을 따라해보자! -웹 어플리케이션: DVWA(웹 취약점에

ysuekkom8915.tistory.com

 

II편 바로가기

https://ysuekkom8915.tistory.com/15?category=1049317 

 

[AWS 실습] 공격 테스트 대응 WAF 설정 및 로깅 확인하기II -모의 웹 공격(SQL Injection, XSS Attack)

개인 공부 기록용 aws waf 공격 및 방어 실습 따라하기 (sessin.github.io) I편 바로가기 https://ysuekkom8915.tistory.com/14 [AWS 실습] 공격 테스트 대응 WAF 설정 및 로깅 확인하기I -실습 환경 구축 개인 공..

ysuekkom8915.tistory.com

 

 

실습 환경을 구축했고(I편), 공격테스트를 진행해봤다(II편).

이제 AWS에서 WAF를 이용하여 공격을 차단하고, 로깅기능을 활용하여 로그를 확인해보자

 

 

AWS WAF를 이용하여 ACL을 생성하고, 정책에 맞는 Rule을 추가해보자.

추가한 룰을 이용하여, I편에서 구축한 환경의 SQL injection & XSS Attack을 차단해 보는 실습을 진행한다.

-AWS Managed Rule 셋팅

-custome Rule을 이용하여 특정 국가에서 유입되는 트래픽 차단 실습

 

 

 

I. AWS Managed Rule 적용하기

ACL에 룰을 적용하기 위해서는 적용하고자 하는 정책과 목적에 따라 Rule/Rule Group을 생성해야 한다. AWS가 관리하는 룰을 사용하거나(AWS Managed Rule) 파트너가 제공하는 관리형 룰을 사용할 수도 있고, 혹은 공격 타입별로 각각의 룰을 셋팅해 ACL에 적용할 수도 있다. 

본 실습에서는 AWS Managed Rule을 적용하여 룰을 셋팅한다. 

 

>생성 리전 선택(Seoul) > AWS WAF > Web ACLs > MyWAF > Rule > Add rules > Add managed rule groups 

 

 

AWS managed rule groups에서 적용가능한 Rule Group들이 나타난다.

이러한 룰들은 OWASP 발행물 및 CVE에 설명된 취약점을 포함하여, 취약점을 악용한 공격에 대응할 수 있도록 보호한다. 

 

이번 실습에서는 Core Rule set과 SQL database에 대해 Add to web ACL을 선택하고, 룰을 추가한다.

>SQL database rule group에는 SQL 주입 공격과 같은 SQL 데이터베이스 악용과 관련된 트래픽을 차단한다. 즉 비인가 쿼리가 삽입되는 것을 방지할 수 있으며, 자세한 내용은 아래 AWS 문서를 참고하면 된다.

 https://docs.aws.amazon.com/waf/latest/developerguide/aws-managed-rule-groups-list.html

 

AWS Managed Rules rule groups list - AWS WAF, AWS Firewall Manager, and AWS Shield Advanced

Thanks for letting us know this page needs work. We're sorry we let you down. If you've got a moment, please tell us how we can make the documentation better.

docs.aws.amazon.com

 

>AWS WAF > Web ACLs > MyWAF > Add managed groups 

 

>적용 결과

 

 

>>전 포스팅에서 수행했던 동일한 공격을 수행해보자

SQL Injection

>XSS Attack

 

같은 공격을 수행하였을 때, 차단 된 상태를 확인할 수 있다. 

 

참고) 

HTTP Status Code(4xx client error)

400 Bad Request error: 요청 메시지 문법 오류

403 Forbidden error: 클라이언트 요청에 대한 접근 차단

404 Not found error: 클라이언트의 요청자료가 서버에 없음