AWS WAF
AWS WAF 로그를 Panther 콘솔에 연결하기
마지막 업데이트
도움이 되었나요?
AWS WAF 로그를 Panther 콘솔에 연결하기
마지막 업데이트
도움이 되었나요?
도움이 되었나요?
스키마: AWS.WAFWebACL
파서:
네이티브:
이름: AWS.WAFWebACL
설명: WAF 웹 ACL 트래픽 정보 로그입니다.
참조URL: https://docs.aws.amazon.com/waf/latest/developerguide/logging.html
필드:
- 이름: action
required: true
설명: 'WAF가 적용한 액션입니다. 종료 규칙(terminating rule)에 대한 가능한 값: ALLOW 및 BLOCK. COUNT는 종료 규칙에 대한 유효한 값이 아닙니다.'
type: string
- 이름: formatVersion
설명: 로그의 포맷 버전입니다.
타입: smallint
- 이름: httpRequest
required: true
설명: 요청에 대한 메타데이터입니다.
type: object
필드:
- 이름: args
설명: HTTP 요청의 쿼리 문자열입니다.
type: string
- 이름: clientIp
설명: 요청을 보내는 클라이언트의 IP 주소입니다.
type: string
지표:
- ip
- 이름: country
설명: 요청의 출발 국가입니다. AWS WAF가 원산지를 확인할 수 없는 경우 이 필드는 -로 설정됩니다.
type: string
- 이름: headers
설명: 헤더 목록입니다.
type: array
element:
type: object
필드:
- 이름: name
설명: 헤더 이름입니다.
type: string
- 이름: value
설명: 헤더 값입니다.
type: string
- 이름: httpMethod
설명: 요청의 HTTP 메서드입니다.
type: string
- 이름: httpVersion
설명: HTTP 버전(예: HTTP/2.0)입니다.
type: string
- 이름: requestId
설명: 기본 호스트 서비스에서 생성된 요청 ID입니다. Application Load Balancer의 경우 이는 추적 ID(trace ID)입니다. 그 외에는 요청 ID입니다.
type: string
지표:
- trace_id
- name: uri
설명: 요청의 URI입니다.
type: string
- 이름: httpSourceId
required: true
설명: 소스 ID입니다. 이 필드는 연결된 리소스의 ID를 표시합니다.
type: string
- 이름: httpSourceName
설명: '요청의 출처입니다. 가능한 값: Amazon CloudFront의 경우 CF, Amazon API Gateway의 경우 APIGW, Application Load Balancer의 경우 ALB, AWS AppSync의 경우 APPSYNC.'
type: string
- 이름: nonTerminatingMatchingRules
설명: 요청과 일치하는 규칙 그룹의 비종료(non-terminating) 규칙 목록입니다. 이들은 항상 COUNT 규칙(일치하는 비종료 규칙)입니다.
type: array
element:
type: object
필드:
- 이름: ruleId
설명: 룰 ID입니다.
type: string
- 이름: action
설명: 구성된 룰 액션입니다. 비종료 규칙의 경우 값은 항상 COUNT입니다.
type: string
- 이름: ruleMatchDetails
설명: 요청과 일치한 룰에 대한 자세한 정보입니다. 이 필드는 SQL 인젝션 및 교차 사이트 스크립팅(XSS) 매치 룰 문(statement)에 대해서만 채워집니다.
type: array
element:
type: object
필드:
- 이름: conditionType
설명: 취약점 유형으로, SQL_INJECTION 또는 XSS 중 하나입니다
type: string
- 이름: location
설명: 매치를 제공한 요청 매개변수 유형입니다. ALL_QUERY_ARGS, HEADER 등일 수 있습니다.
type: string
- 이름: matchedData
설명: 매치를 제공하는 문자열 목록입니다(예: ["10", "AND", "1"]).
type: array
element:
type: string
- 이름: rateBasedRuleList
설명: 요청에 대해 동작한 속도 기반(rate-based) 룰 목록입니다.
type: array
element:
type: object
필드:
- 이름: limitKey
설명: 'AWS WAF가 요청이 단일 소스에서 오는 것으로 보이며 속도 모니터링 대상인지 판단하는 데 사용하는 필드입니다. 가능한 값: IP.'
type: string
- 이름: limitValue
설명: 속도 기반 룰이 요청을 집계하기 위해 사용하는 IP 주소입니다. 요청에 유효하지 않은 IP 주소가 포함된 경우 limitValue는 INVALID입니다.
type: string
- 이름: maxRateAllowed
설명: limitKey로 지정된 필드에 대해 동일한 값을 가진 요청이 5분 동안 허용되는 최대 요청 수입니다. 요청 수가 maxRateAllowed를 초과하고 룰에 지정된 다른 조건들이 충족되면 AWS WAF는 이 룰에 대해 지정된 액션을 트리거합니다.
type: bigint
- 이름: rateBasedRuleId
설명: 요청에 대해 동작한 속도 기반 룰의 ID입니다. 이 룰이 요청을 종료한 경우 rateBasedRuleId의 ID는 terminatingRuleId의 ID와 동일합니다.
type: string
- 이름: rateBasedRuleName
설명: 요청에 대해 동작한 속도 기반 룰의 이름입니다.
type: string
- 이름: ruleGroupList
설명: 이 요청에 대해 동작한 룰 그룹 목록입니다. 앞의 코드 예제에서는 하나만 있습니다.
type: array
element:
type: object
필드:
- 이름: excludedRules
설명: 룰 그룹에서 제외한 룰 목록입니다. 이러한 룰의 액션은 COUNT로 설정됩니다.
type: array
element:
type: object
필드:
- 이름: exclusionType
설명: 제외된 룰이 액션 COUNT를 가지고 있음을 나타내는 유형입니다(가장 가능성 높은 값은 EXCLUDED_AS_COUNT).
type: string
- 이름: ruleId
설명: 제외된 룰 그룹 내의 룰 ID입니다.
type: string
- 이름: nonTerminatingMatchingRules
설명: 요청과 일치하는 규칙 그룹의 비종료(non-terminating) 규칙 목록입니다. 이들은 항상 COUNT 규칙(일치하는 비종료 규칙)입니다.
type: array
element:
type: object
필드:
- 이름: ruleId
설명: 룰 ID입니다.
type: string
- 이름: action
설명: 구성된 룰 액션입니다. 비종료 규칙의 경우 값은 항상 COUNT입니다.
type: string
- 이름: ruleMatchDetails
설명: 요청과 일치한 룰에 대한 자세한 정보입니다. 이 필드는 SQL 인젝션 및 교차 사이트 스크립팅(XSS) 매치 룰 문(statement)에 대해서만 채워집니다.
type: array
element:
type: object
필드:
- 이름: conditionType
설명: 취약점 유형으로, SQL_INJECTION 또는 XSS 중 하나입니다
type: string
- 이름: location
설명: 매치를 제공한 요청 매개변수 유형입니다. ALL_QUERY_ARGS, HEADER 등일 수 있습니다.
type: string
- 이름: matchedData
설명: 매치를 제공하는 문자열 목록입니다(예: ["10", "AND", "1"]).
type: array
element:
type: string
- 이름: ruleGroupId
설명: 룰 그룹의 ID입니다. 룰이 요청을 차단한 경우 ruleGroupID의 ID는 terminatingRuleId의 ID와 동일합니다.
type: string
- 이름: terminatingRule
설명: 요청을 종료한 룰 그룹 내의 룰입니다. 이 값이 null이 아니면 ruleid와 action도 포함합니다. 이 경우 액션은 항상 BLOCK입니다.
type: object
필드:
- 이름: ruleId
설명: 룰 ID입니다.
type: string
- 이름: action
설명: 구성된 룰 액션입니다. 비종료 규칙의 경우 값은 항상 COUNT입니다.
type: string
- 이름: ruleMatchDetails
설명: 요청과 일치한 룰에 대한 자세한 정보입니다. 이 필드는 SQL 인젝션 및 교차 사이트 스크립팅(XSS) 매치 룰 문(statement)에 대해서만 채워집니다.
type: array
element:
type: object
필드:
- 이름: conditionType
설명: 취약점 유형으로, SQL_INJECTION 또는 XSS 중 하나입니다
type: string
- 이름: location
설명: 매치를 제공한 요청 매개변수 유형입니다. ALL_QUERY_ARGS, HEADER 등일 수 있습니다.
type: string
- 이름: matchedData
설명: 매치를 제공하는 문자열 목록입니다(예: ["10", "AND", "1"]).
type: array
element:
type: string
- 이름: terminatingRuleId
설명: 요청을 종료한 룰의 ID입니다. 아무 것도 요청을 종료하지 않으면 값은 Default_Action입니다.
type: string
- 이름: terminatingRuleMatchDetails
설명: 요청과 일치한 종료 룰에 대한 자세한 정보입니다. 종료 룰은 웹 요청에 대한 검사 프로세스를 종료하는 액션을 갖습니다. 종료 룰에 대한 가능한 액션은 ALLOW 및 BLOCK입니다. 이는 SQL 인젝션 및 교차 사이트 스크립팅(XSS) 매치 룰 문에 대해서만 채워집니다. 여러 항목을 검사하는 모든 룰 문과 마찬가지로 AWS WAF는 첫 번째 매치에 대해 액션을 적용하고 웹 요청에 대한 검사를 중단합니다. 종료 액션을 가진 웹 요청은 로그에 보고된 것 외에 다른 위협을 포함할 수 있습니다.
type: array
element:
type: object
필드:
- 이름: conditionType
설명: 취약점 유형으로, SQL_INJECTION 또는 XSS 중 하나입니다
type: string
- 이름: location
설명: 매치를 제공한 요청 매개변수 유형입니다. ALL_QUERY_ARGS, HEADER 등일 수 있습니다.
type: string
- 이름: matchedData
설명: 매치를 제공하는 문자열 목록입니다(예: ["10", "AND", "1"]).
type: array
element:
type: string
- 이름: terminatingRuleType
설명: '요청을 종료한 룰의 유형입니다. 가능한 값: RATE_BASED, REGULAR, GROUP, 및 MANAGED_RULE_GROUP.'
type: string
- 이름: timestamp
required: true
설명: 타임스탬프(밀리초)입니다.
type: timestamp
timeFormat: unix_ms
isEventTime: true
- 이름: webaclId
required: true
설명: 웹 ACL의 GUID입니다.
type: string