적용 대상: ✔️ Application Gateway V2
WAF(Azure Application Gateway Web Application Firewall)는 일반적인 위협 및 공격으로부터 웹 애플리케이션을 보호하는 데 도움이 됩니다. 이 문서에서는 Application Gateway와 연결된 WAF 정책에서 WAF 예외 목록을 구성하는 방법을 설명합니다.
WAF 정책에 대한 개요는 Azure Application Gateway Azure Web Application Firewall 및 Application Gateway에 대한 Web Application Firewall 정책 만들기를 참조하세요.
경우에 따라 WAF는 애플리케이션에 대해 안전하고 예상되는 요청을 차단할 수 있습니다. 예외 목록을 사용하면 특정 요청에 대한 WAF 검사를 무시할 수 있습니다. 규칙, 규칙 그룹 또는 관리되는 규칙 집합 수준에서 예외를 구성할 수 있습니다.
차세대 WAF 엔진만 예외를 지원하며 관리되는 규칙 집합 버전이 CRS 3.2, DRS 2.1 이상인 경우에만 사용할 수 있습니다. 자세한 내용은 CRS 또는 DRS 규칙 집합 버전 업그레이드를 참조하세요.
Important
Azure Application Gateway Web Application Firewall(WAF)의 예외 기능은 현재 미리 보기로 제공됩니다. 베타, 미리 보기로 제공되거나 아직 일반 공급으로 릴리스되지 않은 Azure 기능에 적용되는 약관은 Microsoft Azure 미리 보기에 대한 추가 사용 약관을 참조하세요.
요청 특성 정의
예외를 만들 때 WAF 평가를 바이패스해야 하는 트래픽을 식별하는 요청 특성을 지정합니다. 지원되는 특성은 다음과 같습니다.
- URI 요청
- 원격 IP 주소
- 요청 헤더 이름 및 값
다음 연산자를 사용하여 특성을 정확히 또는 부분적으로 일치합니다.
같음: 정확한 값과 일치합니다.
예: header bearerToken을 선택하려면 bearerToken과 Equals 연산자를 선택기로 사용합니다.다음으로 시작합니다. 지정된 선택기로 시작하는 값과 일치합니다.
다음으로 끝납니다. 지정된 선택기로 끝나는 값과 일치합니다.
포함: 지정된 선택기를 포함하는 값과 일치합니다.
IP 일치: 하나 이상의 IP 주소와 일치합니다.
예외 범위 설정
예외 범위를 다음으로 지정합니다.
특정 규칙
규칙 그룹
전체 관리되는 규칙 집합
예외를 정의하는 경우:
적용되는 규칙, 규칙 그룹 또는 관리되는 규칙 집합을 지정합니다.
제외할 트래픽을 식별하는 요청 특성을 정의합니다.
전체 규칙 그룹을 제외하려면 매개 변수를
ruleGroupName제공합니다. 예외를 해당 그룹 내의rules특정 규칙으로 좁힐 때만 매개 변수를 사용합니다.
Tip
항상 예외를 가능한 한 좁게 만듭니다. 광범위한 예외는 의도치 않게 애플리케이션을 공격에 노출할 수 있습니다. 가능하면 규칙별 예외를 사용합니다.
WAF 정책에 예외 적용
WAF가 SQL 인젝션 규칙을 평가할 때 /login.php 및 /logout.php에 대한 요청을 검사하지 않도록 하려는 경우를 가정해 보겠습니다. 다음과 같이 예외를 구성합니다.
예외를 추가하려는 WAF 정책으로 이동합니다.
설정에서 관리되는 규칙을 선택합니다.
예외 탭에서 예외 추가를 선택합니다.
적용 대상에서 Microsoft_DefaultRuleSet_2.1과 같이 예외를 적용할 DRS 규칙 집합을 선택하고 범위(규칙 그룹, 특정 규칙 또는 전체 규칙 집합)를 선택합니다.
예외 추가를 선택하고 일치 변수, 값 일치 연산자 및 값을 구성합니다.
추가를 선택한 다음 저장을 선택하여 새 예외를 적용합니다.
새 예외가 예외 탭에 나타납니다.
Limitations
WAF 예외에는 다음과 같은 제한 사항이 적용됩니다.
각 Azure WAF 정책은 최대 60개의 예외를 지원합니다.
각 Application Gateway는 해당 게이트웨이와 연결된 WAF 정책에서 모든 예외의 합계로 계산된 총 60개의 예외를 지원합니다.
단일 예외 내에서 다음을 구성할 수 있습니다.
IP 주소 600개 또는
URI 10개 또는
요청 헤더 10개.
Azure WAF를 통한 트래픽을 허용하는 옵션
WAF(Azure Web Application Firewall)는 보호를 유지하면서 필요할 때 트래픽을 안전하게 허용하는 몇 가지 메커니즘을 제공합니다. 요청의 일부 또는 전체 요청에 대한 검사를 무시할지 여부에 따라 제외, 예외 또는 사용자 지정 규칙을 사용합니다.
제외를 사용하여 요청의 특정 부분 허용
WAF가 요청의 나머지 부분에 검사를 적용하면서 헤더, 쿼리 매개 변수 또는 쿠키와 같은 요청 내의 특정 요소 검사를 건너뛰도록 하려면 제외 를 사용합니다.
예제: 합법적인 애플리케이션이 SQL 삽입 가양성 트리거를 자주 트리거하는 임의의 문자가 포함된 세션 쿠키를 보내는 경우 해당 쿠키에 대한 제외를 구성할 수 있습니다. WAF는 쿠키 값에 대한 검사를 건너뛰지만 요청의 나머지 부분에 대한 보호를 계속 적용합니다.
사용자 지정 규칙 및 예외를 사용하여 전체 요청 허용
전체 요청이 WAF 검사를 바이패스하도록 허용하려면 다음 옵션 중 하나를 사용합니다.
허용 작업이 있는 사용자 지정 규칙
허용 작업을 사용하여 사용자 지정 규칙을 구성하면 요청은 DRS(기본 규칙 집합), CRS(핵심 규칙 집합) 및 봇 보호 규칙 집합에 의한 검사를 무시합니다.
Important
이 바이패스는 이러한 규칙 집합에 대해 절대적이며 변경하거나 선택적으로 적용할 수 없습니다. 허용 작업이 트리거되면 이러한 규칙 집합 중 어느 것도 요청을 평가하지 않습니다. 그러나 HTTP DDoS 보호 규칙 집합 은 여전히 요청을 처리합니다. 이 규칙 집합은 다른 모든 규칙 집합을 건너뛰더라도 볼륨 또는 홍수 스타일 공격에 대한 요청을 확인합니다.
서명 및 변칙 검색을 효과적으로 사용하지 않도록 설정하므로 트래픽 원본 또는 애플리케이션을 완전히 신뢰하는 경우에만 이 구성을 사용합니다.
예제: 페이로드 형식으로 인해 DRS 규칙을 자주 트리거하는 신뢰할 수 있는 파트너 API가 있는 경우 파트너의 IP 범위에서 들어오는 트래픽에 대한 사용자 지정 허용 규칙을 만들 수 있습니다. 이 구성은 트래픽이 DRS, CRS 또는 Bot Protection에 의해 차단되지 않도록 하는 동시에 HTTP DDoS 보호 기능을 활용합니다.
예외(보다 세분화된 컨트롤)
반면, 예외를 사용하면 모든 규칙을 한 번에 사용하지 않도록 설정하지 않고 특정 규칙, 규칙 그룹 또는 전체 규칙 집합에 대해서만 검사를 무시할 수 있습니다.
DRS, CRS, Bot Protection 및 HTTP DDoS 규칙 집합에도 예외를 적용할 수 있습니다.
이 방법은 세분화된 제어를 제공하므로 나머지 보호를 활성 상태로 유지하면서 문제가 있는 규칙 하나에 대한 검사를 사용하지 않도록 설정할 수 있습니다.
예: 단일 DRS 규칙(예: 콘텐츠 형식 헤더 제한)이 유효한 모바일 앱 요청을 차단하는 경우 해당 규칙에 대해서만 예외를 만들 수 있습니다. 다른 모든 DRS 규칙, Bot Protection 및 DDoS 보호는 트래픽에서 계속 실행됩니다.