AWS WAF 규칙 - AWS WAF, AWS Firewall Manager, 및 AWS Shield Advanced

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

AWS WAF 규칙

AWS WAF 규칙은 HTTP (S) 웹 요청을 검사하는 방법과 검사 기준과 일치하는 요청에 대해 취할 조치를 정의합니다. 웹 ACL 또는 규칙 그룹의 컨텍스트에 있는 규칙만 정의합니다.

규칙은 그 자체로는 존재하지 않습니다. AWS WAF AWS 리소스가 아니며 Amazon 리소스 이름 (ARN) 도 없습니다. 규칙 그룹 또는 규칙이 정의된 웹 ACL에서 이름으로 규칙에 액세스할 수 있습니다. 규칙 그룹 또는 규칙이 포함된 웹 ACL의 JSON 보기를 사용하여 규칙을 관리하고 다른 웹 ACL로 복사할 수 있습니다. 웹 ACL 및 규칙 그룹에 사용할 수 있는 AWS WAF 콘솔 규칙 빌더를 통해 관리할 수도 있습니다.

규칙 이름

각 규칙에는 이름이 지정해야 합니다. AWS로 시작하는 이름과 다른 서비스에서 관리하는 규칙 그룹 또는 규칙에 사용되는 이름은 사용하지 마십시오. 다른 서비스에서 제공하는 규칙 그룹 섹션을 참조하십시오.

참고

규칙 이름을 변경하고 규칙의 지표 이름에 변경 내용이 반영되도록 하려면 지표 이름도 업데이트해야 합니다. AWS WAF 규칙 이름을 변경할 때 규칙의 지표 이름을 자동으로 업데이트하지 않습니다. 콘솔에서 규칙을 편집할 때 규칙 JSON 편집기를 사용하여 지표 이름을 변경할 수 있습니다. API와 웹 ACL 또는 규칙 그룹을 정의하는 데 사용하는 JSON 목록을 통해 두 이름을 모두 변경할 수도 있습니다.

규칙 문

또한 각 규칙에는 규칙이 웹 요청을 검사하는 방법을 정의하는 규칙 문이 필요합니다. 규칙 문은 규칙 및 문 유형에 따라 기타 모든 깊이에 중첩된 문이 포함될 수 있습니다. 일부 규칙 문에는 일련의 기준이 적용됩니다. 예를 들어, IP 집합 일치 규칙에 대해 최대 10,000개의 IP 주소 또는 IP 주소 범위를 지정할 수 있습니다.

다음과 같이 기준을 검사하는 규칙을 정의할 수 있습니다.

  • 악성일 가능성이 있는 스크립트입니다. 공격자는 웹 애플리케이션의 취약성을 악용할 수 있는 스크립트를 포함시킵니다. 이것은 XXS(교차 사이트 스크립팅)이라고 알려져 있습니다.

  • 요청이 시작되는 IP 주소 또는 주소 범위입니다.

  • 요청이 시작되는 국가 또는 지리적 위치입니다.

  • 쿼리 문자열과 같은 요청에서 지정된 부분의 길이입니다.

  • 악성일 가능성이 있는 SQL 코드입니다. 공격자는 악성 SQL 코드를 웹 요청에 포함시켜서 데이터베이스에서 데이터를 추출하려고 시도합니다. 이것은 SQL 명령어 주입이라고 알려져 있습니다.

  • 요청에 나타나는 문자열입니다. 예를 들어 User-Agent 헤더에 나타나는 값 또는 쿼리 문자열에 나타나는 텍스트 문자열입니다. 정규식을 사용하여 이러한 문자열을 지정할 수도 있습니다.

  • 웹 ACL의 이전 규칙이 요청에 추가한 레이블입니다.

위 목록에 있는 것과 같이 웹 요청 검사 기준이 있는 명령문 외에도 ANDOR, 및 에 대한 논리문을 AWS WAF 지원하여 규칙의 명령문을 NOT 조합하는 데 사용합니다.

예를 들어 공격자에게서 확인한 최근 요청에 따라 다음과 같은 중첩 문을 결합하는 논리적 AND 문을 사용하여 규칙을 생성할 수 있습니다.

  • 요청이 192.0.2.44에서 나옵니다.

  • 요청의 User-Agent 헤더에 BadBot라는 값이 포함되어 있습니다.

  • 요청의 쿼리 문자열에 유사 SQL 코드가 포함되어 있는 것으로 보입니다.

이 경우 모든 문은 최상위 AND 문이 일치하도록 매치되어야 합니다.