ATP 관리형 규칙 그룹을 새 웹 ACL에 추가 - AWS WAF, AWS Firewall Manager 및 AWS Shield Advanced

ATP 관리형 규칙 그룹을 새 웹 ACL에 추가

이 섹션에서는 AWSManagedRulesATPRuleSet 규칙 그룹을 추가하고 구성하는 방법을 설명합니다.

웹 트래픽의 계정 탈취 활동을 인식하도록 ATP 관리형 규칙 그룹을 구성하려면 클라이언트가 로그인 요청을 해당 애플리케이션에 보내는 방법에 대한 정보를 제공합니다. 보호된 Amazon CloudFront 배포의 경우 애플리케이션이 로그인 요청에 어떻게 응답하는지에 대한 정보도 제공합니다. 이 구성은 관리형 규칙 그룹의 일반 구성에 추가됩니다.

규칙 그룹 설명 및 규칙 목록은 AWS WAF 사기 제어 계정 탈취 방지(ATP) 규칙 그룹 섹션을 참조하세요.

참고

ATP 도용된 보안 인증 데이터베이스에는 이메일 형식의 사용자 이름만 포함됩니다.

이 지침은 AWS WAF 웹 ACL, 규칙 및 규칙 그룹을 만들고 관리하는 방법을 일반적으로 알고 있는 사용자를 대상으로 합니다. 이러한 주제는 이 안내서의 이전 섹션에 설명되어 있습니다. 웹 ACL에 관리형 규칙 그룹을 추가하는 방법에 대한 기본 정보는 콘솔을 통해 웹 ACL에 관리형 규칙 그룹 추가 섹션을 참조하세요.

모범 사례 따르기

AWS WAF의 지능형 위협 완화 모범 사례의 모범 사례에 따라 ATP 규칙 그룹을 사용합니다.

웹 ACL에서 AWSManagedRulesATPRuleSet 규칙 그룹을 사용하려면
  1. AWS 관리형 규칙 그룹인 AWSManagedRulesATPRuleSet을 웹 ACL에 추가하고 저장하기 전에 규칙 그룹 설정을 편집합니다.

    참고

    이 관리형 규칙 그룹은 사용 시 추가 요금이 부과됩니다. 자세한 내용은 AWS WAF 요금을 참조하세요.

  2. 규칙 그룹 구성 창에서 ATP 규칙 그룹이 로그인 요청을 검사하는 데 사용하는 정보를 제공합니다.

    1. AWS WAF에서 로그인 페이지 경로 사양에 대한 정규식 일치를 수행하려면 경로에 정규식 사용에서 이 기능을 켭니다.

      AWS WAF는 일부 예외를 제외하고 libpcre PCRE 라이브러리에서 사용하는 패턴 구문을 지원합니다. 이 라이브러리는 PCRE - Perl 호환 정규식에 문서화되어 있습니다. AWS WAF 지원에 대한 자세한 내용은 AWS WAF에 지원되는 정규식 구문 단원을 참조하세요.

    2. 로그인 경로에 애플리케이션의 로그인 엔드포인트 경로를 입력합니다. 이 규칙 그룹은 지정된 로그인 엔드포인트에 대한 HTTP POST 요청만 검사합니다.

      참고

      엔드포인트에 대한 일치는 대/소문자를 구분하지 않습니다. Regex 사양에는 대소문자를 구분하지 않는 일치를 비활성화하는 플래그 (?-i)이(가) 포함되어서는 안 됩니다. 문자열 사양은 슬래시 /로 시작해야 합니다.

      예를 들어, URL https://example.com/web/login의 경우 문자열 경로 사양 /web/login을(를) 제공할 수 있습니다. 입력한 경로로 시작하는 로그인 경로는 일치하는 것으로 간주됩니다. 예를 들어 /web/login는 로그인 경로 /web/login, /web/login/, /web/loginPage/web/login/thisPage와 일치하지만, /home/web/login 또는 /website/login 로그인 경로와는 일치하지 않습니다.

    3. 요청 검사의 경우 요청 본문에서 사용자 이름 및 암호를 입력하는 필드 이름과 요청 페이로드 유형을 제공하여 애플리케이션에서 로그인 시도를 수락하는 방식을 지정합니다. 필드 이름 사양은 페이로드 유형에 따라 달라집니다.

      • JSON 페이로드 유형 - JSON 포인터 구문으로 필드 이름을 지정합니다. JSON 포인터 구문에 대한 자세한 내용을 알아보려면 Internet Engineering Task Force(IETF) 설명서 JavaScript Object Notation (JSON) Pointer(JavaScript 객체 표기법(JSON) 포인터)를 참조하세요.

        예를 들어 다음 JSON 페이로드 예제의 경우 사용자 이름 필드 사양은 /login/username이고 암호 필드 사양은 /login/password입니다.

        { "login": { "username": "THE_USERNAME", "password": "THE_PASSWORD" } }
      • FORM_ENCODED 페이로드 유형 - HTML 양식 이름을 사용합니다.

        예를 들어 입력 요소의 이름이 username1password1인 HTML 양식의 경우 사용자 이름 필드 사양은 username1이고 암호 필드 사양은 password1입니다.

    4. Amazon CloudFront 배포를 보호하려는 경우 응답 검사에서 애플리케이션이 로그인 시도에 대한 응답에 성공 또는 실패를 어떻게 표시하는지 지정합니다.

      참고

      ATP 응답 검사는 CloudFront 배포를 보호하는 웹 ACL에서만 사용할 수 있습니다.

      ATP에서 검사할 단일 구성 요소를 로그인 응답에 지정합니다. 본문JSON 구성 요소 유형의 경우 AWS WAF 구성 요소의 처음 65,536바이트(64KB)를 검사할 수 있습니다.

      인터페이스에 지정된 구성 요소 유형에 대한 검사 기준을 제공합니다. 구성 요소에서 검사할 성공 및 실패 기준을 모두 제공해야 합니다.

      예를 들어 애플리케이션이 응답의 상태 코드에 로그인 시도의 상태를 표시하고 성공 시 200 OK 그리고 실패 시 401 Unauthorized 또는 403 Forbidden을 사용한다고 가정해 보겠습니다. 응답 검사 구성 요소 유형상태 코드로 설정한 다음 성공 텍스트 상자에 200을 입력하고, 실패 텍스트 상자의 첫 번째 줄에 401 그리고 두 번째 줄에 403을 입력합니다.

      ATP 규칙 그룹은 성공 또는 실패 검사 기준과 일치하는 응답만 계산합니다. 규칙 그룹 규칙은 계산된 응답 중 실패율이 너무 높은 클라이언트에 적용됩니다. 규칙 그룹의 규칙이 정확하게 작동하려면 성공 및 실패한 로그인 시도 모두에 대한 전체 정보를 제공해야 합니다.

      로그인 응답을 검사하는 규칙을 보려면 AWS WAF 사기 제어 계정 탈취 방지(ATP) 규칙 그룹의 규칙 목록에서 VolumetricIpFailedLoginResponseHighVolumetricSessionFailedLoginResponseHigh를 찾아보십시오.

  3. 규칙 그룹에 사용할 추가 구성을 모두 제공합니다.

    관리형 규칙 그룹 문에 범위 축소 문을 추가하여 규칙 그룹이 검사하는 요청의 범위를 추가 제한할 수 있습니다. 예를 들어 특정 쿼리 인수 또는 쿠키가 있는 요청만 검사할 수 있습니다. 규칙 그룹은 범위 축소 문의 기준과 일치하는 지정된 로그인 엔드포인트에 대한 HTTP POST 요청만 검사합니다. 범위 축소 문에 대한 자세한 내용은 AWS WAF에서 범위 축소 문 사용 섹션을 참조하세요.

  4. 웹 ACL에 대한 변경 사항을 저장합니다.

프로덕션 트래픽용 ATP 구현을 배포하기 전에 트래픽에 대한 잠재적 영향을 파악할 때까지 스테이징 또는 테스트 환경에서 이를 테스트하고 조정합니다. 그런 다음 프로덕션 트래픽을 사용하여 규칙을 개수 모드에서 테스트하고 조정한 다음 활성화합니다. 지침은 다음 섹션을 참조하세요.