AWS WAF에 대한 Security Hub 제어
이 AWS Security Hub CSPM 제어들은 AWS WAF 서비스 및 리소스를 평가합니다. 일부 AWS 리전에서는 이러한 제어를 사용하지 못할 수도 있습니다. 자세한 내용은 리전별 제어 기능 사용 가능 여부 섹션을 참조하세요.
[WAF.1] AWS WAF 클래식 글로벌 웹 ACL 로깅을 활성화해야 합니다.
관련 요구 사항: NIST.800-53.r5 AC-4(26), NIST.800-53.r5 AU-10, NIST.800-53.r5 AU-12, NIST.800-53.r5 AU-2, NIST.800-53.r5 AU-3, NIST.800-53.r5 AU-6(3), NIST.800-53.r5 AU-6(4), NIST.800-53.r5 CA-7, NIST.800-53.r5 SC-7(9), NIST.800-53.r5 SI-7(8), PCI DSS v4.0.1/10.4.2
범주: 식별 > 로깅
심각도: 중간
리소스 유형: AWS::WAF::WebACL
AWS Config 규칙: waf-classic-logging-enabled
스케줄 유형: 주기적
파라미터: 없음
이 제어는 AWS WAF 글로벌 웹 ACL에 대한 로깅이 활성화되었는지 여부를 확인합니다. 웹 ACL에 로깅이 활성화되지 않은 경우, 이 제어는 실패합니다.
로깅은 AWS WAF의 신뢰성, 가용성, 성능을 전체적으로 유지하는 중요한 부분입니다. 이는 많은 조직의 비즈니스 및 규정 준수 요구 사항이며, 이를 통해 애플리케이션 동작 문제를 해결할 수 있습니다. 또한 AWS WAF에 연결된 웹 ACL을 통해 분석된 트래픽에 대한 상세 정보도 제공합니다.
문제 해결
AWS WAF 웹 ACL 로깅에 대한 추가 내용을 알아보려면 AWS WAF 개발자 안내서의 웹 ACL 트래픽 정보 로깅을 참조하세요.
[WAF.2] AWS WAF 클래식 리전별 규칙에는 하나 이상의 조건이 있어야 합니다.
관련 요구 사항: NIST.800-53.r5 AC-4(21), NIST.800-53.r5 SC-7, NIST.800-53.r5 SC-7(11), NIST.800-53.r5 SC-7(16), NIST.800-53.r5 SC-7(21)
범주: 보호 > 보안 네트워크 구성
심각도: 중간
리소스 유형: AWS::WAFRegional::Rule
AWS Config 규칙: waf-regional-rule-not-empty
스케줄 유형: 변경이 트리거됨
파라미터: 없음
이 제어는 AWS WAF 리전별 규칙에 하나 이상의 조건이 있는지 확인합니다. 규칙 내에 조건이 없는 경우, 제어가 실패합니다.
WAF 리전별 규칙에는 여러 조건이 포함될 수 있습니다. 규칙의 조건에 따라 트래픽을 검사하고 정의된 조치(허용, 차단 또는 계산)를 수행할 수 있습니다. 아무 조건 없이 트래픽은 검사 없이 통과합니다. 조건은 없지만 허용, 차단 또는 개수를 제안하는 이름이나 태그가 있는 WAF 리전별 규칙은 해당 작업 중 하나가 발생하고 있다고 잘못 가정할 수 있습니다.
문제 해결
빈 규칙에 조건을 추가하려면 AWS WAF 개발자 안내서의 규칙에서 조건 추가 및 제거를 참조하세요.
[WAF.3] AWS WAF 클래식 리전별 규칙 그룹에는 규칙이 하나 이상 있어야 합니다.
관련 요구 사항: NIST.800-53.r5 AC-4(21), NIST.800-53.r5 SC-7, NIST.800-53.r5 SC-7(11), NIST.800-53.r5 SC-7(16), NIST.800-53.r5 SC-7(21)
범주: 보호 > 보안 네트워크 구성
심각도: 중간
리소스 유형: AWS::WAFRegional::RuleGroup
AWS Config 규칙: waf-regional-rulegroup-not-empty
스케줄 유형: 변경이 트리거됨
파라미터: 없음
이 제어는 AWS WAF 리전별 규칙 그룹에 하나 이상의 규칙이 있는지 확인합니다. 규칙 그룹 내에 규칙이 없는 경우, 제어가 실패합니다.
WAF 리전별 규칙 그룹에는 여러 규칙이 포함될 수 있습니다. 규칙의 조건에 따라 트래픽을 검사하고 정의된 조치(허용, 차단 또는 계산)를 수행할 수 있습니다. 규칙이 없으면 트래픽은 검사 없이 통과합니다. 규칙이 없지만 허용, 차단 또는 개수를 암시하는 이름 또는 태그가 있는 WAF 리전별 규칙 그룹은 이러한 작업 중 하나가 발생하고 있다고 잘못 가정할 수 있습니다.
문제 해결
빈 규칙 그룹에 규칙 및 규칙 조건을 추가하려면 AWS WAF 개발자 안내서의 AWS WAF 클래식 규칙 그룹에서 규칙 추가 및 삭제하기 및 규칙에 조건 추가 및 제거를 참조하세요.
[WAF.4] AWS WAF 클래식 리전별 웹 ACL에는 하나 이상의 규칙 또는 규칙 그룹이 있어야 합니다.
관련 요구 사항: NIST.800-53.r5 CA-9(1), NIST.800-53.r5 CM-2
범주: 보호 > 보안 네트워크 구성
심각도: 중간
리소스 유형: AWS::WAFRegional::WebACL
AWS Config 규칙: waf-regional-webacl-not-empty
스케줄 유형: 변경이 트리거됨
파라미터: 없음
이 제어는 AWS WAF Classic Regional 웹 ACL에 WAF 규칙 또는 WAF 규칙 그룹이 포함되어 있는지 확인합니다. 웹 ACL에 WAF 규칙 또는 규칙 그룹이 포함되어 있지 않으면 이 제어가 실패합니다.
WAF 리전별 웹 ACL에는 웹 요청을 검사하고 제어하는 규칙 및 규칙 그룹 모음이 포함될 수 있습니다. 웹 ACL이 비어 있는 경우, 웹 트래픽은 기본 작업에 따라 WAF에 의해 감지되거나 조치되지 않고 통과할 수 있습니다.
문제 해결
빈 AWS WAF 클래식 리전별 웹 ACL에 규칙 또는 규칙 그룹을 추가하려면 AWS WAF 개발자 안내서의 웹 ACL 편집을 참조하세요.
[WAF.6] AWS WAF 클래식 글로벌 규칙에는 하나 이상의 조건이 있어야 합니다.
관련 요구 사항: NIST.800-53.r5 CA-9(1), NIST.800-53.r5 CM-2
범주: 보호 > 보안 네트워크 구성
심각도: 중간
리소스 유형: AWS::WAF::Rule
AWS Config 규칙: waf-global-rule-not-empty
스케줄 유형: 변경이 트리거됨
파라미터: 없음
이 제어는 AWS WAF 글로벌 규칙에 조건이 있는지 확인합니다. 규칙 내에 조건이 없는 경우, 제어가 실패합니다.
WAF 글로벌 규칙은 여러 조건을 포함할 수 있습니다. 규칙의 조건을 통해 트래픽을 검사하고 정의된 조치(허용, 차단 또는 계산)를 수행할 수 있습니다. 아무 조건 없이 트래픽은 검사 없이 통과합니다. 규칙은 없지만 허용, 차단 또는 개수를 암시하는 이름이나 태그가 있는 WAF 글로벌 규칙은 해당 작업 중 하나가 발생하고 있다고 잘못 가정할 수 있습니다.
문제 해결
규칙 생성 및 조건 추가에 대한 지침은 AWS WAF 개발자 안내서의 규칙 생성 및 조건 추가를 참조하세요.
[WAF.7] AWS WAF 클래식 글로벌 규칙 그룹에는 규칙이 하나 이상 있어야 합니다.
관련 요구 사항: NIST.800-53.r5 CA-9(1), NIST.800-53.r5 CM-2
범주: 보호 > 보안 네트워크 구성
심각도: 중간
리소스 유형: AWS::WAF::RuleGroup
AWS Config 규칙: waf-global-rulegroup-not-empty
스케줄 유형: 변경이 트리거됨
파라미터: 없음
이 제어는 AWS WAF 글로벌 규칙 그룹에 하나 이상의 규칙이 있는지 확인합니다. 규칙 그룹 내에 규칙이 없는 경우, 제어가 실패합니다.
WAF 글로벌 규칙 그룹은 여러 규칙을 포함할 수 있습니다. 규칙의 조건에 따라 트래픽을 검사하고 정의된 조치(허용, 차단 또는 계산)를 수행할 수 있습니다. 규칙이 없으면 트래픽은 검사 없이 통과합니다. 규칙은 없지만 허용, 차단 또는 개수를 암시하는 이름이나 태그가 있는 WAF 글로벌 규칙 그룹은 해당 작업 중 하나가 발생하고 있다고 잘못 가정할 수 있습니다.
문제 해결
규칙 그룹에 규칙을 추가하는 방법에 대한 지침은 AWS WAF 개발자 안내서의 AWS WAF 클래식 규칙 그룹 만들기를 참조하세요.
[WAF.8] AWS WAF 클래식 글로벌 웹 ACL에는 하나 이상의 규칙 또는 규칙 그룹이 있어야 합니다.
관련 요구 사항: NIST.800-53.r5 AC-4(21), NIST.800-53.r5 SC-7, NIST.800-53.r5 SC-7(11), NIST.800-53.r5 SC-7(16), NIST.800-53.r5 SC-7(21)
범주: 보호 > 보안 네트워크 구성
심각도: 중간
리소스 유형: AWS::WAF::WebACL
AWS Config 규칙: waf-global-webacl-not-empty
스케줄 유형: 변경이 트리거됨
파라미터: 없음
이 제어는 AWS WAF 글로벌 웹 액세스 제어 목록(웹 ACL)에 하나 이상의 WAF 규칙 또는 WAF 규칙 그룹이 포함되어 있는지 확인합니다. 웹 ACL에 WAF 규칙 또는 규칙 그룹이 포함되어 있지 않으면 제어가 실패합니다.
WAF 글로벌 웹 ACL은 웹 요청을 검사하고 제어하기 위한 규칙 및 규칙 그룹 모음을 포함할 수 있습니다. 웹 ACL이 비어 있는 경우, 웹 트래픽은 기본 작업에 따라 WAF에 의해 감지되거나 조치되지 않고 통과할 수 있습니다.
문제 해결
빈 AWS WAF 글로벌 웹 ACL에 규칙 또는 규칙 그룹을 추가하려면 AWS WAF 개발자 안내서의 웹 ACL 편집을 참조하세요. 필터에서 글로벌(CloudFront)을 선택합니다.
[WAF.10] AWS WAF 웹 ACL에는 규칙 또는 규칙 그룹이 하나 이상 있어야 합니다.
관련 요구 사항: NIST.800-53.r5 CA-9(1), NIST.800-53.r5 CM-2
범주: 보호 > 보안 네트워크 구성
심각도: 중간
리소스 유형: AWS::WAFv2::WebACL
AWS Config 규칙: wafv2-webacl-not-empty
스케줄 유형: 변경이 트리거됨
파라미터: 없음
이 제어는 AWS WAF V2 웹 액세스 제어 목록(웹 ACL)에 하나 이상의 규칙 또는 규칙 그룹이 포함되어 있는지 확인합니다. 웹 ACL에 규칙 또는 규칙 그룹이 포함되어 있지 않으면 제어가 실패합니다.
웹 ACL을 사용하면 보호된 리소스가 응답하는 모든 HTTP(S) 웹 요청을 세밀하게 제어할 수 있습니다. 웹 ACL에는 웹 요청을 검사하고 제어하기 위한 규칙 및 규칙 그룹 모음이 포함되어야 합니다. 웹 ACL이 비어 있는 경우, 웹 트래픽은 기본 작업에 따라 AWS WAF에 의해 감지되거나 조치되지 않고 통과할 수 있습니다.
문제 해결
빈 WAFV2 웹 ACL에 규칙 또는 규칙 그룹을 추가하려면 AWS WAF 개발자 안내서의 웹 ACL 편집을 참조하세요.
[WAF.11] AWS WAF 웹 ACL 로깅을 활성화해야 합니다.
관련 요구 사항: NIST.800-53.r5 AC-4(26), NIST.800-53.r5 AU-10, NIST.800-53.r5 AU-12, NIST.800-53.r5 AU-2, NIST.800-53.r5 AU-3, NIST.800-53.r5 AU-6(3), NIST.800-53.r5 AU-6(4), NIST.800-53.r5 CA-7, NIST.800-53.r5 SC-7(10), NIST.800-53.r5 SC-7(9), NIST.800-53.r5 SI-7(8), PCI DSS v4.0.1/10.4.2
범주: 식별 > 로깅
심각도: 낮음
리소스 유형: AWS::WAFv2::WebACL
AWS Config 규칙: wafv2-logging-enabled
스케줄 유형: 주기적
파라미터: 없음
이 제어는 AWS WAF V2 웹 액세스 제어 목록(웹 ACL)에 대한 로깅이 활성화되어 있는지 여부를 확인합니다. 웹 ACL에 대한 로깅이 비활성화되면 이 제어가 실패합니다.
참고
이 제어는 Amazon Security Lake를 통해 계정에 웹 AWS WAF ACL 로깅이 활성화되어 있는지 여부를 확인하지 않습니다.
로깅은 AWS WAF의 신뢰성, 가용성, 성능을 유지합니다. 또한 로깅은 많은 조직의 비즈니스 및 규정 준수 요구 사항입니다. 웹 ACL로 분석된 트래픽을 로깅하여 애플리케이션 동작 문제를 해결할 수 있습니다.
문제 해결
AWS WAF 웹 ACL에 대한 로깅을 활성화하려면 AWS WAF 개발자 안내서의 웹 ACL에 대한 로깅 관리를 참조하세요.
[WAF.12] AWS WAF 규칙에는 CloudWatch 메트릭이 활성화되어 있어야 합니다.
관련 요구 사항: NIST.800-53.r5 AC-4(26), NIST.800-53.r5 AU-10, NIST.800-53.r5 AU-12, NIST.800-53.r5 AU-2, NIST.800-53.r5 AU-3, NIST.800-53.r5 AU-6(3), NIST.800-53.r5 AU-6(4), NIST.800-53.r5 CA-7, NIST.800-53.r5 SC-7(10), NIST.800-53.r5 SC-7(9), NIST.800-53.r5 SI-7(8), NIST.800-171.r2 3.14.6, NIST.800-171.r2 3.14.7
범주: 식별 > 로깅
심각도: 중간
리소스 유형: AWS::WAFv2::RuleGroup
AWS Config 규칙: wafv2-rulegroup-logging-enabled
스케줄 유형: 변경이 트리거됨
파라미터: 없음
이 제어는 AWS WAF 규칙 또는 규칙 그룹에 Amazon CloudWatch 메트릭이 활성화되어 있는지 여부를 확인합니다. 규칙 또는 규칙 그룹에 CloudWatch 메트릭이 활성화되어 있지 않으면 제어가 실패합니다.
AWS WAF 규칙 및 규칙 그룹에 CloudWatch 메트릭를 구성하면 트래픽 흐름을 파악할 수 있습니다. 어떤 ACL 규칙이 트리거되고 어떤 요청이 수락 및 차단되었는지 확인할 수 있습니다. 이러한 가시성을 통해 관련 리소스에서 악의적인 활동을 식별할 수 있습니다.
문제 해결
AWS WAF 규칙 그룹에서 CloudWatch 메트릭를 활성화하려면 UpdateRuleGroupAPI를 호출하세요. AWS WAF 규칙 그룹에서 CloudWatch 메트릭를 활성화하려면 UpdateWebACL API를 호출하세요. CloudWatchMetricsEnabled 필드를 true로 설정합니다. AWS WAF 콘솔을 사용하여 규칙 또는 규칙 그룹을 생성하면 CloudWatch 메트릭이 자동으로 활성화됩니다.