목차
1. 사전 리소스 구성
2. 만들어진 DVWA 확인
3. WAF Web ACL 구성
1. 사전 리소스 구성
위 템플릿 파일을 다운받아 CloudFormation 스택을 생성해보자
인스턴스 타입과 VPC 대역은 변경 가능하다
디폴트값으로 진행했을 때 생성되는 리소스들은 아래와 같다
준비된 환경에 WAF까지 구현한 아키텍처는 다음과 같다
2. 만들어진 DVWA 확인
스택 배포로 생성된 ALB의 DNS로 접속해보면
DVWA의 로그인 페이지로 접속된다
초기 ID : admin / 비밀번호 : password
왼쪽의 메뉴들 중 DVWA Security 탭으로 이동해 Security Level을 Low로 설정한 후 Submit을 해주자
취약점을 공격하기 쉬운 단계로 낮추는 것이다 (레벨별로 공격하는 방법이 다르다)
2. WAF Web ACL 구성
콘솔 > 서비스 > WAF > Create web ACL
먼저 가운데의 Region을 서울로 설정해주고, 이름은 맘대로 정해준다
아래의 Add AWS resources를 눌러 생성되어 있는 ALB를 선택해 Add 해준다
그 뒤론 쭉 Next만 누르다가 Create web ACL을 눌러서 생성을 완료해주자
(Rule은 공격 먼저 해보고 나중에 추가할 것)
그리고 로깅을 활성화해줘야 한다 : WAF는 Kinesis Firehose로밖에 못보냄
이미 Firehose와 S3 버킷은 서로 연결되어 있다
방금 만든 WAF를 눌러 Logging and metrics 탭으로 들어가보자
Enable logging을 눌러 Kinesis Firehose를 선택
Redacted fields에선 필요 없다고 생각되는 필드를 선택래주면 된다
이번 실습에선 필요 없는 Query string을 체크해준 후 Enable logging을 눌러주자
완료해주면 Logging 상태가 Enabled가 된걸 확인할 수 있다
이제 ALB로 들어오는 로그들은 Query string 필드만 제외한 채 Kinesis Firehose를 타고 S3 버킷에 쌓이게 된다
다음 글부터 DVWA 사이트를 공격하고 방어하는 실습을 진행해보겠다
실습 시리즈
#2 SQL Injection & XSS 공격과 방어 (AWS managed rule)
'공부 > AWS' 카테고리의 다른 글
[AWS WAF] #3 특정 국가 or User-Agent 차단 (custom rule) (0) | 2021.02.25 |
---|---|
[AWS WAF] #2 SQL Injection & XSS 공격과 방어 (AWS managed rule) (1) | 2021.02.25 |
[AWS WAF] #0 실습 전 준비 (0) | 2021.02.25 |
[AWS] VPN과 TGW, VGW, CGW (+TGW cost) (0) | 2021.02.04 |
[AWS] Lambda로 EC2 Start/Stop + CloudWatch 규칙으로 트리거 (0) | 2021.01.19 |
댓글