AWS WAF를 적용한 뒤에도 공격 트래픽이 꾸준히 유입된다면, 룰 자체가 우회를 허용하고 있을 가능성이 큽니다.
특히 URI 인코딩, Query 파라미터 변조, User-Agent 위장 등의 기법은 단순한 룰 필터링으로는 잡히지 않는 경우가 많습니다.
이번 글에서는 AWS WAF에서 우회 공격 트래픽까지 탐지하고 차단할 수 있는 고급 룰 구성 전략을 실무 중심으로 정리합니다.
RegexPatternSet, Header 검사, 쿠키 필터링 등 잘 알려지지 않은 기능까지 활용해, 보다 정밀한 보안 정책을 수립해보세요.
🔎 1. 인코딩 우회 탐지 – URLDecode, Base64 처리
많은 공격자들이 URI나 파라미터에 인코딩을 섞어 필터 우회를 시도합니다.
예: /login
→ %2flogin
, 또는 ../
→ %2e%2e%2f
AWS WAF의 정규식 패턴(RegexPatternSet)을 활용하면 이런 패턴을 탐지할 수 있습니다.
- URI 및 쿼리 문자열에 인코딩 문자열 패턴 포함 여부 확인
- Base64로 인코딩된 페이로드 탐지 (
eyJ
,dGVzdA==
등 공통 시그니처)
🧪 2. 헤더 기반 우회 탐지 – User-Agent, Referer 분석
일반적인 브라우저가 아닌 스크립트/봇은 종종 비정상적인 User-Agent 값을 보냅니다. 또는 특정 공격자는 아예 Referer 없이 직접 요청을 넣기도 하죠.
- User-Agent 패턴 중 잘 알려진 봇 시그니처 필터링 (예: curl, python-requests)
- 빈 Referer 헤더 요청 탐지
- 쿠키 헤더 유무로 브라우저 접근 여부 구분
이런 필터링은 Rule Group 내 Header 검사 조건을 활용하면 구현할 수 있습니다.
⚙️ 3. 우회 시도 패턴의 정규식 구성 예시
다음은 실무에서 많이 사용하는 우회 시도 탐지용 Regex 예시입니다.
%2e%2e%2f
,\.\./
– 디렉토리 트래버설base64_decode
,eval
,exec
– 웹쉘 또는 인젝션 시도\b(select|union|drop|insert)\b
– SQL 키워드 탐지
이러한 정규식 패턴은 AWS WAF의 RegexPatternSet에 등록하여 WebACL에 연결할 수 있습니다.
💡 실무 팁: 조건을 세분화하고 Count 모드로 먼저 테스트하세요
공격 우회 트래픽은 일반 사용자와 구분이 애매할 수 있기 때문에, 바로 차단하지 말고 Count 모드로 먼저 테스트하는 것이 중요합니다.
이후 로그를 분석해 오탐 없는 조건을 확인하고, 실제 차단 룰로 전환하세요.
정리하며 ✍️
AWS WAF는 기본 설정만으로는 정교한 우회 공격을 막기 어렵습니다.
RegexPatternSet, Header 조건, 쿠키 검사 등을 조합하면 탐지 우회까지 대응하는 룰 체계를 만들 수 있습니다.
방어는 룰의 디테일에서 갈립니다. 한 줄의 정규식이 실제 사고를 막는 열쇠가 될 수 있습니다.
도움이 되셨다면 댓글이나 구독 부탁드립니다! 🙏
'클라우드 보안 실무 가이드 > AWS' 카테고리의 다른 글
[클라우드 보안 실무 #9] AWS KMS, 고객 키 관리 전략 – CMK, BYOK, 키 로테이션 실무 가이드 (2) | 2025.05.10 |
---|---|
[클라우드 보안 실무 #7] AWS WAF, 실무 운영 전략 총정리 – 무엇을 남기고 어떻게 자동화할 것인가 (0) | 2025.05.09 |
AWS 2025년 4월 보안 업데이트 요약 및 실무 팁 (1) | 2025.05.02 |
[클라우드 보안 실무 #5] AWS WAF, 차단 로그를 자동으로 대응하는 구조 만들기 (0) | 2025.04.30 |
[클라우드 보안 실무 특집 #5] AWS Security Hub, 실무 적용 가이드 (0) | 2025.04.29 |