AWS Managed Rules로 인한 오탐을 어떻게 감지할 수 있나요?

3분 분량
0

내 애플리케이션에 대한 정당한 요청이 AWS WAF 내의 AWS Managed Rules 규칙 그룹에 의해 차단되었습니다. 이러한 규칙이 어떻게 오탐을 유발하는지 알고 싶습니다. 또한 관리형 규칙을 유효하게 유지하고 합법적인 트래픽이 통과할 수 있도록 하고 싶습니다.

해결 방법

먼저, AWS Managed Rules로 인한 오탐을 식별하세요. 그런 다음 레이블 또는 scope-down 구문을 사용하여 이러한 오탐들을 허용 목록에 추가하세요.

관리형 규칙 그룹에서 오탐 오류 감지

다음 단계를 완료합니다.

  1. AWS WAF 로그의 terminatingRuleId에서 정당한 요청을 차단하는 관리자 규칙 그룹을 찾으세요. 다음은 AWS WAF 로그의 예입니다.

    "timestamp": 1712236911743,
    "formatVersion": 1,
    "webaclId": "arn:aws:wafv2:us-west-2:***:regional/webacl/WAFtester/3c372***-***",
    "terminatingRuleId": "AWS-AWSManagedRulesCommonRuleSet",
    "terminatingRuleType": "MANAGED_RULE_GROUP",
    "action": "BLOCK",
    "terminatingRuleMatchDetails": [],
    "ruleGroupList": [{
    "ruleGroupId": "AWS#AWSManagedRulesCommonRuleSet",
    "terminatingRule": {
    "ruleId": "SizeRestrictions_BODY",
    "action": "BLOCK",
    "overriddenAction": "BLOCK",
    "ruleMatchDetails": null
    },
    "nonTerminatingMatchingRules": [],
    "excludedRules": null,
    "customerConfig": null
    }],
  2. terminatingRule에서 ruleId를 찾아 정당한 요청을 차단하는 규칙을 식별합니다. 예를 들면, 다음과 같습니다. "SizeRestrictions_Body".

  3. 오탐의 원인이 되는 특성 또는 기준을 식별하세요. 예를 들어, 데이터베이스 관리자가 원격으로 저장 절차를 실행하는 경우 요청에 대량의 데이터가 포함될 수 있습니다. ManagedRulesCommonRuleSet 규칙 그룹은 SizeRestrictions_Body 규칙으로 인해 이러한 요청을 차단합니다.

허용 목록에 오탐 추가

관리형 규칙 그룹을 통해 오탐을 유발하는 정당한 요청을 허용하도록 웹 액세스 제어 목록(웹 ACL)을 구성합니다. 관리형 규칙 그룹을 수정하려면 레이블을 사용하거나 scope-down 구문을 사용하세요.

참고: 세분화된 명시적 규칙에는 레이블을 사용하는 것이 가장 좋습니다. scope-down 구문은 범위를 벗어나는 요청을 규칙 그룹의 모든 규칙과 비교하여 검사하지 않습니다.

레이블

AWS Managed Rules에서 추가한 레이블을 사용하여 오탐을 방지하세요. 이러한 레이블이 있는 요청을 일치시키는 사용자 지정 규칙을 만들 때는 관리형 규칙 그룹 내에서 규칙의 기본 동작을 변경하세요.

다음 단계를 완료합니다.

  1. AWS WAF 콘솔을 연 다음 AWS 리전을 선택합니다.
  2. 탐색 창에서 IP 세트를 선택합니다.
  3. 규칙 그룹의 검사에서 제외할 적법한 IP 주소를 포함하는 IP 세트를 생성합니다.
  4. 웹 ACL을 선택한 다음 웹 ACL을 선택합니다.
  5. 규칙에서 오탐 오류를 일으키는 규칙 그룹을 선택한 다음 편집을 선택합니다.
  6. 오탐 오류를 발생시키는 규칙을 선택한 다음 개수 로 설정합니다.
  7. 규칙 저장을 선택합니다.
  8. 규칙 추가를 선택한 다음 내 규칙 및 규칙 그룹 추가를 선택합니다.
  9. 규칙 유형규칙 빌더를 선택합니다.
  10. 규칙 이름을 입력합니다.
  11. 유형일반 규칙을 선택합니다.
  12. 요청 여부 드롭다운 목록을 **모든 구문에 일치(AND)**로 설정합니다.
  13. 구문 1에 대해 다음 매개변수를 선택합니다.
    검사에서 레이블 있음을 선택합니다.
    일치 범위에서 레이블을 선택합니다.
    오탐을 유발하는 규칙의 레이블 이름을 입력합니다.
  14. 구문 2에 대해 다음 매개변수를 선택합니다.
    구문 결과 무효화 기능을 켜세요.
    검사에서 다음 IP 주소에서 시작을 선택합니다.
    IP 세트에 적법한 IP 주소가 포함된 IP 세트를 입력합니다.
    시작 주소로 사용할 IP 주소소스 IP 주소를 선택합니다.
  15. 동작에서 차단을 선택합니다.
  16. 규칙 우선 순위 설정에서 규칙의 우선 순위를 AWS Managed Rules 그룹보다 낮은 우선 순위로 설정합니다.
  17. 저장을 선택합니다.

범위 축소 구문

scope-down 구문을 사용하여 규칙 또는 규칙 그룹이 평가하는 요청의 범위를 좁힐 수 있습니다. 범위 축소 구문을 규칙 그룹에 추가하면 요청을 검사할 수 있습니다. 이 구문은 설명문에 포함된 합법적인 IP 주소를 건너뛰고 있습니다.

다음 단계를 완료합니다.

  1. AWS WAF 콘솔을 연 다음 리전을 선택합니다.
  2. IP 세트를 선택합니다.
  3. 규칙 그룹의 검사에서 제외할 적법한 IP 주소를 포함하는 IP 세트를 생성합니다.
  4. 웹 ACL을 선택한 다음 웹 ACL을 선택합니다.
  5. 규칙에서 범위 축소 설명을 추가할 AWS Managed Rules을 선택한 다음 편집을 선택합니다.
  6. 생성한 IP 세트를 제외하는 범위 축소 구문을 생성하세요. 예를 들면, 다음과 같습니다.
    요청이 있는 경우에 **명령문과 일치하지 않음(NOT)**을 선택합니다.
    검사에서 다음 IP 주소에서 시작을 선택합니다
    IP 세트에 대해 example-IP-set를 입력합니다. 참고:****example-IP-set를 제외하려는 IP 주소로 대체하세요
    시작 주소로 사용할 IP 주소소스 IP 주소를 선택합니다. 참고: 소스 IP 주소를 IP 주소로 대체하세요.
  7. 규칙 저장을 선택합니다.
AWS 공식
AWS 공식업데이트됨 4달 전