Imperva Incapsula 웹 애플리케이션 방화벽 로그 수집
이 문서에서는 Google Security Operations 피드를 설정하여 Imperva Incapsula 웹 애플리케이션 방화벽 로그를 수집하는 방법을 설명합니다.
자세한 내용은 Google Security Operations에 데이터 수집을 참조하세요.
수집 라벨은 원시 로그 데이터를 구조화된 UDM 형식으로 정규화하는 파서를 식별합니다. 이 문서의 정보는 IMPERVA_WAF
수집 라벨이 있는 파서에 적용됩니다.
Incapsula WAF 구성
- 독자 계정으로 my.imperva.com에 로그인합니다.
- 관리 > 사용자 > 사용자 추가를 선택합니다. 계정 관리자 또는 기타 필수 권한이 있는 사용자만 계정에 새 사용자를 추가할 수 있습니다. 사용자 및 계정 관리자의 등록된 주소로 인증 이메일이 전송됩니다.
이메일에 있는 링크를 클릭하여 신규 사용자의 이메일 주소를 인증하고 로그인 비밀번호를 설정합니다.
리더 사용자의 API ID 및 API 키 생성
- my.imperva.com 계정에 로그인합니다.
- 관리로 이동하여 사용자를 선택합니다.
- 리더 역할을 가진 사용자를 선택합니다.
- 설정으로 이동하여 API 키를 선택합니다.
- API 키의 이름을 입력합니다.
- API 키 만료일 목록에서 없음을 선택합니다.
- 상태를 사용 설정하려면 상태를 선택합니다.
- 저장을 클릭합니다.
- 표시되는 대화상자에서 API 키와 API ID를 복사하여 저장합니다. Google Security Operations 피드를 구성할 때 API 키와 API ID가 필요합니다.
- 선택사항: 승인된 IP 주소 목록을 제공하거나 비워 둘 수 있습니다.
Imperva Incapsula 웹 애플리케이션 방화벽 로그를 수집하도록 Google Security Operations에서 피드 구성
- SIEM 설정 > 피드를 선택합니다.
- 새로 추가를 클릭합니다.
- 피드 이름에 고유한 이름을 입력합니다.
- 소스 유형으로 서드 파티 API를 선택합니다.
- 로그 유형으로 Imperva를 선택합니다.
- 인증 HTTP 헤더 구성에 API ID 및 API 키를 입력합니다.
- 다음을 클릭한 후 제출을 클릭합니다.
Google Security Operations 피드에 대한 자세한 내용은 Google Security Operations 피드 문서를 참조하세요. 각 피드 유형의 요구사항은 유형별 피드 구성을 참조하세요.
피드를 만들 때 문제가 발생하면 Google Security Operations 지원팀에 문의하세요.
필드 매핑 참조
이 파서는 Imperva 웹 애플리케이션 방화벽 (WAF)의 CEF (공통 이벤트 형식) 및 LEEF (로그 이벤트 확장 형식) 형식 로그와 JSON 형식 로그를 모두 처리합니다. 감지된 로그 형식을 기반으로 필드를 추출하고, 데이터 변환을 실행하고, 데이터를 UDM에 매핑합니다. 또한 파서는 '공격 분석'과 같은 특정 Imperva 이벤트 유형과 '허용', '차단', '거부'와 같은 다양한 작업을 처리하여 적절한 UDM 필드에 매핑합니다.
Imperva 파서 UDM 매핑 표
로그 필드 | UDM 매핑 | 논리 |
---|---|---|
account_id |
target.user.userid |
JSON 페이로드의 계정 ID가 대상 사용자의 ID에 매핑됩니다. |
act |
security_result.action (ALLOW/BLOCK/FAIL/UNKNOWN), security_result.action_details |
act 필드는 UDM 작업 및 작업 세부정보를 결정합니다. allowed , alert , REQ_PASSED , REQ_CACHED 는 ALLOW에 매핑됩니다. deny , blocked , REQ_BLOCKED , REQ_CHALLENGE 는 차단에 매핑됩니다. REQ_BAD 은 FAIL에 매핑됩니다. 작업 세부정보는 특정 act 값을 기반으로 추가 컨텍스트를 제공합니다. |
additionalReqHeaders |
매핑되지 않음 | 이러한 헤더는 현재 IDM 객체에 매핑되지 않습니다. |
additionalResHeaders |
매핑되지 않음 | 이러한 헤더는 현재 IDM 객체에 매핑되지 않습니다. |
app |
network.application_protocol |
애플리케이션 프로토콜 (예: HTTP, HTTPS)가 app 필드에서 추출되고 대문자로 변환됩니다. |
calCountryOrRegion |
principal.location.country_or_region |
LEEF 데이터에서 추출된 국가 또는 지역 코드입니다. |
cat |
security_result.action (ALLOW/BLOCK/FAIL/UNKNOWN), security_result.action_details |
LEEF 형식의 작업 및 작업 세부정보를 결정하기 위한 act 와 유사한 로직입니다. |
ccode |
매핑되지 않음 | 이 필드는 현재 IDM 객체에 매핑되지 않습니다. |
ccpt |
매핑되지 않음 | 이 필드는 현재 IDM 객체에 매핑되지 않습니다. |
cef_version |
매핑되지 않음 | 내부 전용입니다. |
cicode |
principal.location.city |
LEEF 데이터에서 추출된 도시 정보입니다. |
client.domain |
principal.hostname , principal.asset.hostname |
JSON 페이로드의 클라이언트 도메인입니다. |
client.geo.country_iso_code |
principal.location.country_or_region |
JSON 페이로드의 국가 코드입니다. |
client.ip |
principal.ip , principal.asset.ip |
JSON 페이로드의 클라이언트 IP입니다. |
cn1 |
network.http.response_code |
LEEF 또는 CEF 데이터에서 추출된 HTTP 응답 코드입니다. 정수로 변환됩니다. |
context_key |
target.resource.name |
JSON 페이로드의 컨텍스트 키로, 리소스 이름으로 사용됩니다. |
cpt |
매핑되지 않음 | 이 필드는 현재 IDM 객체에 매핑되지 않습니다. |
cs1 |
security_result.detection_fields |
'해당 사항 없음'이 아닌 경우 cs1Label 의 키와 cs1 의 값으로 감지 필드를 만듭니다. |
cs2 |
security_result.detection_fields |
cs2Label 의 키와 cs2 의 값으로 감지 필드를 만듭니다. |
cs3 |
security_result.detection_fields |
'-'이 아닌 값이 있는 경우 cs3Label 의 키와 cs3 의 값으로 감지 필드를 만듭니다. |
cs4 |
security_result.detection_fields |
cs4Label 의 키와 cs4 의 값으로 감지 필드를 만듭니다. |
cs5 |
security_result.detection_fields |
cs5Label 의 키와 cs5 의 값으로 감지 필드를 만듭니다. |
cs6 |
principal.application |
LEEF 데이터에서 추출된 사용자가 사용하는 애플리케이션입니다. |
cs7 |
principal.location.region_latitude |
LEEF 또는 CEF 데이터에서 추출된 위도입니다. 부동 소수점 수로 변환됩니다. |
cs8 |
principal.location.region_longitude |
LEEF 또는 CEF 데이터에서 추출된 경도입니다. 부동 소수점 수로 변환됩니다. |
cs9 |
security_result.rule_name , extensions.vulns.vulnerabilities.name |
로그 형식에 따라 규칙 이름 또는 취약점 이름입니다. |
Customer |
target.user.user_display_name |
LEEF 데이터의 고객 이름으로, 대상 사용자 표시 이름에 매핑됩니다. |
data |
다양함 (기타 필드 참고) | CEF, LEEF 또는 JSON이 포함된 원시 로그 데이터 필드입니다. |
description |
security_result.threat_name (CEF), metadata.description (공격 분석) |
위협 이름 또는 메타데이터 설명에 매핑된 CEF 또는 공격 분석 로그의 설명입니다. |
deviceExternalId |
network.community_id |
LEEF 데이터의 기기 ID로, 네트워크 커뮤니티 ID에 매핑됩니다. |
deviceFacility |
매핑되지 않음 | 이 필드는 현재 IDM 객체에 매핑되지 않습니다. |
deviceReceiptTime |
metadata.event_timestamp |
가용성 및 형식에 따라 다양한 필드 (rt , start , log_timestamp )에서 추출된 타임스탬프입니다. date 필터를 사용하여 파싱됩니다. |
dhost |
target.hostname |
CEF 데이터의 대상 호스트 이름입니다. |
dproc |
security_result.category_details |
기기 프로세스 (예: 브라우저, 봇)를 LEEF 데이터에서 가져옵니다. |
dst |
target.ip , target.asset.ip |
CEF 또는 LEEF 데이터의 대상 IP입니다. |
dpt |
target.port |
CEF 데이터의 대상 포트입니다. 정수로 변환됩니다. |
duser |
target.user.userid |
CEF 데이터의 대상 사용자 ID입니다. |
end |
security_result.detection_fields |
키가 'event_end_time'이고 값이 end 인 감지 필드를 만듭니다. |
event.id |
매핑되지 않음 | 이 필드는 현재 IDM 객체에 매핑되지 않습니다. |
event_attributes |
다양함 (기타 필드 참고) | LEEF 데이터에서 추출된 속성입니다. |
event_id |
매핑되지 않음 | 내부 전용입니다. |
fileId |
network.session_id |
LEEF 데이터의 파일 ID로, 네트워크 세션 ID에 매핑됩니다. |
filePermission |
security_result.detection_fields , security_result.rule_type |
감지 필드 및 규칙 유형으로 사용되는 LEEF 데이터의 파일 권한입니다. |
fileType |
security_result.detection_fields , security_result.rule_type |
감지 필드 및 규칙 유형으로 사용되는 LEEF 데이터의 파일 유형입니다. |
flexString1 |
network.http.response_code |
CEF 데이터의 응답 코드입니다. 정수로 변환됩니다. |
http.request.body.bytes |
network.sent_bytes |
JSON 페이로드에서 HTTP 요청 본문으로 전송된 바이트 수입니다. 부호 없는 정수로 변환됩니다. |
http.request.method |
network.http.method |
JSON 페이로드의 HTTP 요청 메서드입니다. |
imperva.abp.apollo_rule_versions |
security_result.detection_fields |
각 Apollo 규칙 버전의 감지 필드를 만듭니다. |
imperva.abp.bot_behaviors |
security_result.detection_fields |
각 봇 동작에 대한 감지 필드를 만듭니다. |
imperva.abp.bot_deciding_condition_ids |
security_result.detection_fields |
조건 ID를 결정하는 각 봇에 대한 감지 필드를 만듭니다. |
imperva.abp.bot_deciding_condition_names |
security_result.detection_fields |
조건 이름을 결정하는 각 봇의 감지 필드를 만듭니다. |
imperva.abp.bot_triggered_condition_ids |
security_result.detection_fields |
각 봇 트리거 조건 ID의 감지 필드를 만듭니다. |
imperva.abp.bot_triggered_condition_names |
security_result.detection_fields |
각 봇 트리거 조건 이름에 대한 감지 필드를 만듭니다. |
imperva.abp.bot_violations |
security_result.detection_fields |
각 봇 위반에 대한 감지 필드를 만듭니다. |
imperva.abp.customer_request_id |
network.session_id |
JSON 페이로드의 고객 요청 ID로, 네트워크 세션 ID로 사용됩니다. |
imperva.abp.deciding_tags |
매핑되지 않음 | 이러한 태그는 현재 IDM 객체에 매핑되지 않습니다. |
imperva.abp.hsig |
security_result.detection_fields |
키가 'hsig'이고 값이 imperva.abp.hsig 인 감지 필드를 만듭니다. |
imperva.abp.headers_accept |
매핑되지 않음 | 이 필드는 현재 IDM 객체에 매핑되지 않습니다. |
imperva.abp.headers_accept_charset |
매핑되지 않음 | 이 필드는 현재 IDM 객체에 매핑되지 않습니다. |
imperva.abp.header_names |
매핑되지 않음 | 이러한 헤더 이름은 현재 IDM 객체에 매핑되지 않습니다. |
imperva.abp.headers_cookie_length |
매핑되지 않음 | 이 필드는 현재 IDM 객체에 매핑되지 않습니다. |
imperva.abp.header_lengths |
매핑되지 않음 | 이러한 헤더 길이는 현재 IDM 객체에 매핑되지 않습니다. |
imperva.abp.monitor_action |
security_result.action (허용/차단), security_result.severity (정보 제공) |
JSON 페이로드의 작업을 모니터링합니다. '허용'은 ALLOW 및 INFORMATIONAL 심각도에 매핑됩니다. 'captcha' 및 'block'이 BLOCK에 매핑됩니다. |
imperva.abp.pid |
principal.process.pid |
JSON 페이로드의 프로세스 ID입니다. |
imperva.abp.policy_id |
security_result.detection_fields |
키가 '정책 ID'이고 값이 imperva.abp.policy_id 인 감지 필드를 만듭니다. |
imperva.abp.policy_name |
security_result.detection_fields |
키가 '정책 이름'이고 값이 imperva.abp.policy_name 인 감지 필드를 만듭니다. |
imperva.abp.random_id |
additional.fields |
키가 'Random Id'이고 값이 imperva.abp.random_id 인 필드를 추가로 만듭니다. |
imperva.abp.request_path_decoded |
target.process.file.full_path |
JSON 페이로드에서 디코딩된 요청 경로로, 프로세스 경로로 사용됩니다. |
imperva.abp.request_type |
principal.labels |
JSON 페이로드의 요청 유형으로, 사용자 라벨로 사용됩니다. |
imperva.abp.selector |
security_result.detection_fields |
키가 'selector'이고 값이 imperva.abp.selector 인 감지 필드를 만듭니다. |
imperva.abp.selector_derived_id |
security_result.detection_fields |
키가 'selector_derived_id'이고 값이 imperva.abp.selector_derived_id 인 감지 필드를 만듭니다. |
imperva.abp.tls_fingerprint |
security_result.description |
보안 결과 설명으로 사용되는 JSON 페이로드의 TLS 지문입니다. |
imperva.abp.triggered_tags |
매핑되지 않음 | 이러한 태그는 현재 IDM 객체에 매핑되지 않습니다. |
imperva.abp.zuid |
additional.fields |
키가 'zuid'이고 값이 imperva.abp.zuid 인 필드를 추가로 만듭니다. |
imperva.additional_factors |
additional.fields |
추가 요소마다 추가 필드를 만듭니다. |
imperva.audit_trail.event_action |
security_result.detection_fields |
event_action 의 키와 event_action_description 의 값으로 감지 필드를 만듭니다. |
imperva.audit_trail.event_action_description |
security_result.detection_fields |
event_action 에서 생성된 감지 필드의 값으로 사용됩니다. |
imperva.audit_trail.event_context |
security_result.detection_fields |
event_context 의 키와 event_context_description 의 값으로 감지 필드를 만듭니다. |
imperva.audit_trail.event_context_description |
security_result.detection_fields |
event_context 에서 생성된 감지 필드의 값으로 사용됩니다. |
imperva.classified_client |
security_result.detection_fields |
키가 'classified_client'이고 값이 imperva.classified_client 인 감지 필드를 만듭니다. |
imperva.country |
principal.location.country_or_region |
JSON 페이로드의 국가 코드입니다. |
imperva.credentials_leaked |
security_result.detection_fields |
키가 'credentials_leaked'이고 값이 imperva.credentials_leaked 인 감지 필드를 만듭니다. |
imperva.declared_client |
security_result.detection_fields |
키가 'declared_client'이고 값이 imperva.declared_client 인 감지 필드를 만듭니다. |
imperva.device_reputation |
additional.fields |
키가 'device_reputation'이고 값 목록이 imperva.device_reputation 인 필드를 추가로 만듭니다. |
imperva.domain_risk |
security_result.detection_fields |
키가 'domain_risk'이고 값이 imperva.domain_risk 인 감지 필드를 만듭니다. |
imperva.failed_logins_last_24h |
security_result.detection_fields |
키가 'failed_logins_last_24h'이고 값이 imperva.failed_logins_last_24h 인 감지 필드를 만듭니다. |
imperva.fingerprint |
security_result.detection_fields |
키가 'log_imperva_fingerprint'이고 값이 imperva.fingerprint 인 감지 필드를 만듭니다. |
imperva.ids.account_id |
metadata.product_log_id |
JSON 페이로드의 계정 ID로, 제품 로그 ID로 사용됩니다. |
imperva.ids.account_name |
metadata.product_event_type |
제품 이벤트 유형으로 사용되는 JSON 페이로드의 계정 이름입니다. |
imperva.ids.site_id |
additional.fields |
키가 'site_id'이고 값이 imperva.ids.site_id 인 필드를 추가로 만듭니다. |
imperva.ids.site_name |
additional.fields |
키가 'site_name'이고 값이 imperva.ids.site_name 인 필드를 추가로 만듭니다. |
imperva.referrer |
network.http.referral_url |
JSON 페이로드의 리퍼러 URL입니다. |
imperva.request_id |
network.session_id |
JSON 페이로드의 요청 ID로, 네트워크 세션 ID로 사용됩니다. |
imperva.request_session_id |
network.session_id |
JSON 페이로드에서 세션 ID를 요청합니다. 이 세션 ID는 네트워크 세션 ID로 사용됩니다. |
imperva.request_user |
security_result.detection_fields |
키가 'request_user'이고 값이 imperva.request_user 인 감지 필드를 만듭니다. |
imperva.risk_level |
security_result.severity (HIGH/CRITICAL/MEDIUM/LOW), security_result.severity_details |
JSON 페이로드의 위험 수준입니다. UDM 심각도에 매핑됩니다. 심각도 세부정보로도 사용됩니다. |
imperva.risk_reason |
security_result.description |
보안 결과 설명으로 사용되는 JSON 페이로드의 위험 사유입니다. |
imperva.significant_domain_name |
security_result.detection_fields |
키가 'significant_domain_name'이고 값이 imperva.significant_domain_name 인 감지 필드를 만듭니다. |
imperva.successful_logins_last_24h |
security_result.detection_fields |
키가 'successful_logins_last_24h'이고 값이 imperva.successful_logins_last_24h 인 감지 필드를 만듭니다. |
imperva.violated_directives |
security_result.detection_fields |
위반된 각 지시문에 대한 감지 필드를 만듭니다. |
in |
network.received_bytes |
네트워크에서 LEEF 데이터를 통해 수신된 바이트입니다. 부호 없는 정수로 변환됩니다. |
leef_version |
매핑되지 않음 | 내부 전용입니다. |
log.@timestamp |
metadata.event_timestamp |
date 필터를 사용하여 파싱된 JSON 페이로드의 타임스탬프입니다. log.time 를 사용할 수 없는 경우에 사용됩니다. |
log.client.geo.country_iso_code |
principal.location.country_or_region |
중첩된 JSON 페이로드의 국가 코드입니다. |
log.client.ip |
principal.ip , principal.asset.ip |
중첩된 JSON 페이로드의 클라이언트 IP입니다. |
log.context_key |
target.resource.name |
중첩된 JSON 페이로드의 컨텍스트 키로, 리소스 이름으로 사용됩니다. |
log.event.provider |
principal.user.user_display_name |
중첩된 JSON 페이로드의 이벤트 제공업체로, 기본 사용자 표시 이름으로 사용됩니다. |
log.http.request.body.bytes |
network.sent_bytes |
중첩된 JSON 페이로드의 요청 본문 바이트입니다. 부호 없는 정수로 변환됩니다. |
log.http.request.method |
network.http.method , network.application_protocol (HTTP) |
중첩된 JSON 페이로드의 HTTP 메서드입니다. 있는 경우 애플리케이션 프로토콜을 HTTP로 설정합니다. |
log.imperva.abp.bot_behaviors |
security_result.detection_fields |
중첩된 JSON 페이로드에서 각 봇 동작의 감지 필드를 만듭니다. |
log.imperva.abp.bot_deciding_condition_ids |
security_result.detection_fields |
중첩된 JSON 페이로드에서 조건 ID를 결정하는 각 봇의 감지 필드를 만듭니다. |
log.imperva.abp.bot_deciding_condition_names |
security_result.detection_fields |
중첩된 JSON 페이로드에서 조건 이름을 결정하는 각 봇의 감지 필드를 만듭니다. |
log.imperva.abp.bot_triggered_condition_ids |
security_result.detection_fields |
중첩된 JSON 페이로드에서 각 봇 트리거 조건 ID의 감지 필드를 만듭니다. |
log.imperva.abp.bot_triggered_condition_names |
security_result.detection_fields |
중첩된 JSON 페이로드에서 각 봇 트리거 조건 이름의 감지 필드를 만듭니다. |
log.imperva.abp.bot_violations |
security_result.detection_fields |
중첩된 JSON 페이로드에서 각 봇 위반에 대한 감지 필드를 만듭니다. |
log.imperva.abp.customer_request_id |
network.session_id |
중첩된 JSON 페이로드의 고객 요청 ID로, 네트워크 세션 ID로 사용됩니다. |
log.imperva.abp.headers_accept |
매핑되지 않음 | 이 필드는 현재 IDM 객체에 매핑되지 않습니다. |
log.imperva.abp.headers_accept_charset |
매핑되지 않음 | 이 필드는 현재 IDM 객체에 매핑되지 않습니다. |
log.imperva.abp.headers_accept_encoding |
security_result.detection_fields |
키가 'Accept Encoding'이고 값이 log.imperva.abp.headers_accept_encoding 인 감지 필드를 만듭니다. |
log.imperva.abp.headers_accept_language |
security_result.detection_fields |
키가 'Accept Language'이고 값이 log.imperva.abp.headers_accept_language 인 감지 필드를 만듭니다. |
log.imperva.abp.headers_cf_connecting_ip |
매핑되지 않음 | 이 필드는 현재 IDM 객체에 매핑되지 않습니다. |
log.imperva.abp.headers_connection |
security_result.detection_fields |
키가 'headers_connection'이고 값이 log.imperva.abp.headers_connection 인 감지 필드를 만듭니다. |
log.imperva.abp.headers_cookie_length |
매핑되지 않음 | 이 필드는 현재 IDM 객체에 매핑되지 않습니다. |
log.imperva.abp.headers_host |
매핑되지 않음 | 이 필드는 현재 IDM 객체에 매핑되지 않습니다. |
log.imperva.abp.header_lengths |
매핑되지 않음 | 이러한 헤더 길이는 현재 IDM 객체에 매핑되지 않습니다. |
log.imperva.abp.header_names |
매핑되지 않음 | 이러한 헤더 이름은 현재 IDM 객체에 매핑되지 않습니다. |
log.imperva.abp.hsig |
security_result.detection_fields |
키가 'hsig'이고 값이 log.imperva.abp.hsig 인 감지 필드를 만듭니다. |
log.imperva.abp.monitor_action |
security_result.action (허용/차단), security_result.severity (정보 제공) |
중첩된 JSON 페이로드의 작업을 모니터링합니다. '허용'은 ALLOW 및 INFORMATIONAL 심각도에 매핑됩니다. 'captcha' 및 'block'이 BLOCK에 매핑됩니다. |
log.imperva.abp.pid |
principal.process.pid |
중첩된 JSON 페이로드의 프로세스 ID입니다. |
log.imperva.abp.policy_id |
security_result.detection_fields |
키가 '정책 ID'이고 값이 log.imperva.abp.policy_id 인 감지 필드를 만듭니다. |
log.imperva.abp.policy_name |
security_result.detection_fields |
키가 '정책 이름'이고 값이 log.imperva.abp.policy_name 인 감지 필드를 만듭니다. |
log.imperva.abp.random_id |
additional.fields |
키가 'Random Id'이고 값이 log.imperva.abp.random_id 인 필드를 추가로 만듭니다. |
log.imperva.abp.request_path_decoded |
target.process.file.full_path |
중첩된 JSON 페이로드에서 디코딩된 요청 경로로, 프로세스 경로로 사용됩니다. |
log.imperva.abp.request_type |
principal.labels |
중첩된 JSON 페이로드의 요청 유형으로, 사용자 라벨로 사용됩니다. |
log.imperva.abp.selector |
security_result.detection_fields |
키가 'selector'이고 값이 log.imperva.abp.selector 인 감지 필드를 만듭니다. |
log.imperva.abp.selector_derived_id |
security_result.detection_fields |
키가 'selector_derived_id'이고 값이 log.imperva.abp.selector_derived_id 인 감지 필드를 만듭니다. |
log.imperva.abp.tls_fingerprint |
security_result.description |
보안 결과 설명으로 사용되는 중첩된 JSON 페이로드의 TLS 지문입니다. |
log.imperva.abp.token_expire |
매핑되지 않음 | 이 필드는 현재 IDM 객체에 매핑되지 않습니다. |
log.imperva.abp.token_id |
target.resource.product_object_id |
중첩된 JSON 페이로드의 토큰 ID로, 리소스 제품 객체 ID로 사용됩니다. |
log.imperva.abp.triggered_tags |
매핑되지 않음 | 이러한 태그는 현재 IDM 객체에 매핑되지 않습니다. |
log.imperva.abp.zuid |
additional.fields |
키가 'zuid'이고 값이 log.imperva.abp.zuid 인 필드를 추가로 만듭니다. |
log.imperva.additional_factors |
additional.fields |
중첩된 JSON 페이로드에서 추가 요인마다 필드를 추가로 만듭니다. |
log.imperva.audit_trail.event_action |
security_result.detection_fields |
중첩된 JSON 페이로드에서 event_action 의 키와 event_action_description 의 값으로 감지 필드를 만듭니다. |
log.imperva.audit_trail.event_action_description |
security_result.detection_fields |
중첩된 JSON 페이로드의 event_action 에서 생성된 감지 필드의 값으로 사용됩니다. |
log.imperva.audit_trail.event_context |
security_result.detection_fields |
중첩된 JSON 페이로드에서 event_context 의 키와 event_context_description 의 값으로 감지 필드를 만듭니다. |
log.imperva.audit_trail.event_context_description |
security_result.detection_fields |
중첩된 JSON 페이로드의 event_context 에서 생성된 감지 필드의 값으로 사용됩니다. |
log.imperva.classified_client |
security_result.detection_fields |
키가 'classified_client'이고 값이 log.imperva.classified_client 인 감지 필드를 만듭니다. |
log.imperva.country |
principal.location.country_or_region |
중첩된 JSON 페이로드의 국가 코드입니다. |
log.imperva.credentials_leaked |
security_result.detection_fields |
키가 'credentials_leaked'이고 값이 log.imperva.credentials_leaked 인 감지 필드를 만듭니다. |
log.imperva.declared_client |
security_result.detection_fields |
키가 'declared_client'이고 값이 log.imperva.declared_client 인 감지 필드를 만듭니다. |
log.imperva.device_reputation |
additional.fields |
키가 'device_reputation'이고 값 목록이 log.imperva.device_reputation 인 필드를 추가로 만듭니다. |
log.imperva.domain_risk |
security_result.detection_fields |
키가 'domain_risk'이고 값이 log.imperva.domain_risk 인 감지 필드를 만듭니다. |
log.imperva.failed_logins_last_24h |
security_result.detection_fields |
키가 'failed_logins_last_24h'이고 값이 log.imperva.failed_logins_last_24h 인 감지 필드를 만듭니다. |
log.imperva.fingerprint |
security_result.detection_fields |
키가 'log_imperva_fingerprint'이고 값이 log.imperva.fingerprint 인 감지 필드를 만듭니다. |
log.imperva.ids.account_id |
metadata.product_log_id |
중첩된 JSON 페이로드의 계정 ID로, 제품 로그 ID로 사용됩니다. |
log.imperva.ids.account_name |
metadata.product_event_type |
중첩된 JSON 페이로드의 계정 이름으로, 제품 이벤트 유형으로 사용됩니다. |
log.imperva.ids.site_id |
additional.fields |
키가 'site_id'이고 값이 log.imperva.ids.site_id 인 필드를 추가로 만듭니다. |
log.imperva.ids.site_name |
additional.fields |
키가 'site_name'이고 값이 log.imperva.ids.site_name 인 필드를 추가로 만듭니다. |
log.imperva.path |
principal.process.file.full_path |
중첩된 JSON 페이로드의 경로로, 프로세스 경로로 사용됩니다. |
log.imperva.referrer |
network.http.referral_url |
중첩된 JSON 페이로드의 리퍼러 URL입니다. |
log.imperva.request_id |
network.session_id |
중첩된 JSON 페이로드의 요청 ID로, 네트워크 세션 ID로 사용됩니다. |
log.imperva.request_session_id |
network.session_id |
네트워크 세션 ID로 사용되는 중첩 JSON 페이로드에서 세션 ID를 요청합니다. |
log.imperva.request_user |
security_result.detection_fields |
키가 'request_user'이고 값이 log.imperva.request_user 인 감지 필드를 만듭니다. |
log.imperva.risk_level |
security_result.severity (HIGH/CRITICAL/MEDIUM/LOW), security_result.severity_details |
중첩된 JSON 페이로드의 위험 수준입니다. UDM 심각도에 매핑됩니다. 심각도 세부정보로도 사용됩니다. |
log.imperva.risk_reason |
security_result.description |
보안 결과 설명으로 사용되는 중첩 JSON 페이로드의 위험 사유입니다. |
log.imperva.significant_domain_name |
security_result.detection_fields |
키가 'significant_domain_name'이고 값이 log.imperva.significant_domain_name 인 감지 필드를 만듭니다. |
log.imperva.successful_logins_last_24h |
security_result.detection_fields |
키가 'successful_logins_last_24h'이고 값이 log.imperva.successful_logins_last_24h 인 감지 필드를 만듭니다. |
log.imperva.violated_directives |
security_result.detection_fields |
중첩된 JSON 페이로드에서 위반된 각 지침에 대한 감지 필드를 만듭니다. |
log.message |
metadata.description |
중첩된 JSON 페이로드의 메시지로, 다른 설명을 사용할 수 없는 경우 메타데이터 설명으로 사용됩니다. |
log.resource_id |
target.resource.id |
중첩된 JSON 페이로드의 리소스 ID입니다. |
log.resource_type_key |
target.resource.type |
중첩된 JSON 페이로드의 리소스 유형 키입니다. |
log.server.domain |
target.hostname , target.asset.hostname |
중첩된 JSON 페이로드의 서버 도메인 |
log.server.geo.name |
target.location.name |
중첩된 JSON 페이로드의 서버 위치 이름입니다. |
log.time |
metadata.event_timestamp |
중첩된 JSON 페이로드의 타임스탬프로, date 필터를 사용하여 파싱됩니다. |
log.type_key |
metadata.product_event_type |
중첩된 JSON 페이로드의 유형 키로, 제품 이벤트 유형으로 사용됩니다. |
log.user.email |
principal.user.email_addresses |
중첩된 JSON 페이로드의 사용자 이메일입니다. |
log.user_agent.original |
network.http.parsed_user_agent |
중첩된 JSON 페이로드의 사용자 에이전트로, useragent 필터를 사용하여 파싱됩니다. |
log.user_details |
principal.user.email_addresses |
중첩된 JSON 페이로드의 사용자 세부정보로, 이메일 형식과 일치하는 경우 이메일 주소로 사용됩니다. |
log.user_id |
principal.user.userid |
중첩된 JSON 페이로드의 사용자 ID입니다. |
log_timestamp |
metadata.event_timestamp |
syslog의 로그 타임스탬프로, 다른 타임스탬프를 사용할 수 없는 경우 이벤트 타임스탬프로 사용됩니다. |
log_type |
매핑되지 않음 | 내부 전용입니다. |
message |
다양함 (기타 필드 참고) | 로그 데이터가 포함된 메시지 필드입니다. |
metadata.event_type |
metadata.event_type |
CEF 및 JSON 로그의 경우 'NETWORK_HTTP', 공격 분석 로그의 경우 'SCAN_UNCATEGORIZED', src 이 'Distributed'인 경우 'USER_UNCATEGORIZED', type_key 가 있는 JSON 로그의 경우 'USER_STATS', 클라이언트 IP 또는 도메인 및 서버 도메인이 있는 JSON 로그의 경우 'STATUS_UPDATE', 기타 JSON 로그의 경우 'GENERIC_EVENT'로 설정합니다. |
metadata.log_type |
metadata.log_type |
'IMPERVA_WAF'로 설정합니다. |
metadata.product_event_type |
metadata.product_event_type |
로그 형식 (csv.event_id , log.imperva.ids.account_name , log.type_key )에 따라 다양한 필드에서 채워집니다. |
metadata.product_name |
metadata.product_name |
'웹 애플리케이션 방화벽'으로 설정합니다. |
metadata.vendor_name |
metadata.vendor_name |
'Imperva'로 설정합니다. |
msg |
매핑되지 않음 | 이 필드는 현재 IDM 객체에 매핑되지 않습니다. |
organization |
매핑되지 않음 | 내부 전용입니다. |
payload |
다양함 (기타 필드 참고) | CEF 데이터에서 추출된 페이로드입니다. |
popName |
intermediary.location.country_or_region |
LEEF 데이터의 PoP 이름으로, 중간 위치에 매핑됩니다. |
postbody |
security_result.detection_fields |
키가 'post_body_info'이고 값이 postbody 인 감지 필드를 만듭니다. |
product_version |
매핑되지 않음 | 내부 전용입니다. |
proto |
network.application_protocol |
LEEF 데이터의 프로토콜로, 네트워크 애플리케이션 프로토콜에 매핑됩니다. |
protoVer |
network.tls.version , network.tls.cipher |
TLS 버전 및 암호화 키를 추출하기 위해 파싱된 LEEF 데이터의 프로토콜 버전입니다. |
qstr |
target.url 에 추가됨 |
LEEF 데이터의 쿼리 문자열로, 대상 URL에 추가됩니다. |
ref |
network.http.referral_url |
LEEF 데이터의 추천 URL입니다. |
request |
target.url |
CEF 데이터에서 URL을 요청합니다. |
requestClientApplication |
network.http.user_agent |
네트워크 HTTP 사용자 에이전트에 매핑된 LEEF 또는 CEF 데이터에서 클라이언트 애플리케이션을 요청합니다. |
requestContext |
network.http.user_agent |
네트워크 HTTP 사용자 에이전트에 매핑된 CEF 데이터의 요청 컨텍스트입니다. |
requestMethod |
network.http.method |
LEEF 또는 CEF 데이터의 요청 메서드로, 네트워크 HTTP 메서드에 매핑되고 대문자로 표시됩니다. |
resource_id |
target.resource.id |
JSON 페이로드의 리소스 ID입니다. |
resource_type_key |
target.resource.type |
JSON 페이로드의 리소스 유형 키입니다. |
rt |
metadata.event_timestamp |
CEF 데이터의 수신 시간으로, 이벤트 타임스탬프로 사용됩니다. |
security_result.action |
security_result.action |
act 또는 cat 값에 따라 설정합니다. |
security_result.action_details |
security_result.action_details |
act 또는 cat 의 값을 기반으로 추가 컨텍스트를 제공합니다. |
security_result.category_details |
security_result.category_details |
dproc 값으로 설정합니다. |
security_result.detection_fields |
security_result.detection_fields |
로그 데이터에서 추출된 다양한 키-값 쌍을 포함합니다. |
security_result.description |
security_result.description |
imperva.risk_reason 또는 log.imperva.abp.tls_fingerprint 값으로 설정합니다. |
security_result.rule_name |
security_result.rule_name |
cs9 값으로 설정합니다. |
security_result.rule_type |
security_result.rule_type |
fileType 값으로 설정합니다. |
security_result.severity |
security_result.severity |
sevs 또는 imperva.risk_level 값에 따라 설정합니다. |
security_result.severity_details |
security_result.severity_details |
imperva.risk_level 값으로 설정합니다. |
security_result.threat_id |
변경사항
2024-04-02
- 'log.imperva.request_user'가 'security_result.detection_fields'에 매핑되었습니다.
- 'log.imperva.classified_client'가 'security_result.detection_fields'에 매핑되었습니다.
2024-02-26
- 'log.imperva.request_session_id'가 'network.session_id'에 매핑되었습니다.
- '"log.imperva.successful_logins_last_24h","log.imperva.path", "log.imperva.failed_logins_last_24h"가 'security_result.detection_fields'에 매핑되었습니다.
- 'log.imperva.risk_reason'이 'security_result.severity_details' 및 'security_result.severity'에 매핑되었습니다.
- 'additional_factor', 'log.imperva.device_reputation', 'log.imperva.credentials_leaked'가 'additional.fields'에 매핑되었습니다.
- 'log.imperva.fingerprint'가 'security_result.description'에 매핑되었습니다.
- 'log.imperva.referrer'가 'network.http.referral_url'에 매핑되었습니다.
- 'log.imperva.classified_client'가 'principal.process.file.full_path'에 매핑되었습니다.
2024-02-06
- json_array의 'for 루프' 내에서 'accept_encoding_label', 'site_name_label', 'random_id_label', 'request_type_label', 'accept_language_label', 'headers_connection_label', 'zuid_labels', 'site_id_label', 'policy_id', 'policy_name', 'selector_derived_id', 'hsig', 'selector', 'detection_fields_event_action', 'detection_fields_event_context', 'detection_fields_significant_domain_name', 'detection_fields_domain_risk'를 null로 초기화했습니다.
2024-01-27
- 'description'이 'security_result.threat_name'에 매핑되었습니다.
- 'severity'가 'security_result.threat_id'에 매핑되었습니다.
- 'kv.src', 'src', 'log.client.ip'가 'principal.asset.ip'에 매핑되었습니다.
- 'kv.dst' 및 'dst'가 'target.asset.ip'에 매핑되었습니다.
- 'kv.dvc'가 'about.asset.ip'에 매핑되었습니다.
- 'kv.cs9' 및 'cs9'가 'security_result.rule_name'에 매핑되었습니다.
- 'kv.fileType' 및 'fileType'이 'security_result.rule_type'에 매핑되었습니다.
- 'dst'가 'target.asset.ip'에 매핑되었습니다.
- 'xff' 및 'forwardedIp'가 'intermediary.asset.ip'에 매핑되었습니다.
- 'log.client.domain'이 'principal.asset.hostname'에 매핑되었습니다.
- 'log.server.domain'이 'target.asset.hostname'에 매핑되었습니다.
2023-10-16
- 버그 수정:
- json_array의 'for 루프' 내에서 'security_result' 및 'security_action'을 null로 초기화했습니다.
- 'security_action'을 'security_result.action'에 병합하기 전에 null 검사를 추가했습니다.
- 'log.imperva.abp.monitor_action'이 'block'인 경우 'security_action'이 'BLOCK'에 매핑되었습니다.
2023-09-26
- CSP 로그에서 'significant_domain_name', 'domain_risk', 'violated_directives'를 'security_result.detection_fields'에 매핑했습니다.
2023-08-07
- 버그 수정 -
- JSON 로그 배열을 파싱하는 지원을 추가했습니다.
- 'xff'를 'intermediary.hostname'에 매핑하기 전에 호스트 이름을 확인하는 Grok 패턴을 추가했습니다.
2023-06-16
- 두 필드에 단일 on_error가 있어 사전 제출 문제가 해결되었습니다.
2023-06-16
- 버그 수정 -
- 'imperva.audit_trail.event_action'이 'security_result.detection_fields'에 매핑되었습니다.
- 'imperva.audit_trail.event_action_description'이 'security_result.detection_fields'에 매핑되었습니다.
- 'imperva.audit_trail.event_context'가 'security_result.detection_fields'에 매핑되었습니다.
- 'imperva.audit_trail.event_context_description'이 'security_result.detection_fields'에 매핑되었습니다.
- 타임스탬프 파싱 문제를 수정했습니다.
- 잘못된 형식의 로그를 삭제했습니다.
2023-06-08
- 개선 -
- 'imperva.abp.apollo_rule_versions'가 'security_result.detection_fields'에 매핑되었습니다.
- 'imperva.abp.bot_violations'가 'security_result.detection_fields'에 매핑되었습니다.
- 'imperva.abp.bot_behaviors'가 'security_result.detection_fields'에 매핑되었습니다.
- 'imperva.abp.bot_deciding_condition_ids'가 'security_result.detection_fields'에 매핑되었습니다.
- 'imperva.abp.bot_deciding_condition_names'가 'security_result.detection_fields'에 매핑되었습니다.
- 'imperva.abp.bot_triggered_condition_ids'가 'security_result.detection_fields'에 매핑되었습니다.
- 'imperva.abp.bot_triggered_condition_names'가 'security_result.detection_fields'에 매핑되었습니다.
2023-04-26
- 개선 -
- statedata에 'kv.src' 필드를 정의했습니다.
- 'kvdata.ver'이 'network.tls.version' 및 network.tls.cipher에 매핑되었습니다.
- 'kvdata.sip'가 'principal.ip'에 매핑되었습니다.
- 'kvdata.spt'가 'principal.port'에 매핑되었습니다.
- 'kvdata.act'가 'security_result.action_details'에 매핑되었습니다.
- 'kvdata.app'이 'network.application_protocol'에 매핑되었습니다.
- 'kvdata.requestMethod'가 'network.http.method'에 매핑되었습니다.
2023-02-04
- 개선 -
- 'deviceReceiptTime' 필드의 경우 'event.timestamp'에 rebase = true를 추가했습니다.
2023-01-19
- 개선 -
- 다음 매핑을 추가하여 파서 로그에 대한 지원을 추가했습니다.
- 'event.provider'가 'principal.user.userid'에 매핑되었습니다.
- 'client.ip'가 'principal.ip'에 매핑되었습니다.
- 'client.domain'이 'principal.hostname'에 매핑되었습니다.
- 'imperva.abp.request_type'이 'principal.labels'에 매핑되었습니다.
- 'imperva.abp.pid'가 'principal.process.pid'에 매핑되었습니다.
- 'client.geo.country_iso_code'가 'principal.location.country_or_region'에 매핑되었습니다.
- 'server.domain'이 'target.hostname'에 매핑되었습니다.
- 'server.geo.name'이 'target.location.name'에 매핑되었습니다.
- 'url.path'가 'target.process.file.full_path'에 매핑되었습니다.
- 'imperva.abp.customer_request_id'가 'target.resource.id'에 매핑되었습니다.
- 'imperva.abp.token_id'가 'target.resource.product_object_id'에 매핑되었습니다.
- 'imperva.abp.random_id'가 'additional.fields'에 매핑되었습니다.
- 'http.request.method'가 'network.http.method'에 매핑되었습니다.
- 'user_agent.original'이 'network.http.parsed_user_agent'에 매핑되었습니다.
- 'imperva.abp.headers_referer'가 'network.http.referral_url'에 매핑되었습니다.
- 'imperva.abp.zuid'가 'additional.fields'에 매핑되었습니다.
- 'imperva.ids.site_name'이 'additional.fields'에 매핑되었습니다.
- 'imperva.ids.site_id'가 'additional.fields'에 매핑되었습니다.
- 'imperva.ids.account_name'이 'metadata.product_event_type'에 매핑되었습니다.
- 'imperva.ids.account_id'가 'metadata.product_log_id'에 매핑되었습니다.
- 'imperva.abp.headers_accept_encoding'이 'security_result.detection_fields'에 매핑되었습니다.
- 'imperva.abp.headers_accept_language'가 'security_result.detection_fields'에 매핑되었습니다.
- 'imperva.abp.headers_connection'이 'security_result.detection_fields'에 매핑되었습니다.
- 'imperva.abp.policy_id'가 'security_result.detection_fields'에 매핑되었습니다.
- 'imperva.abp.policy_name'이 'security_result.detection_fields'에 매핑되었습니다.
- 'imperva.abp.selector_derived_id'가 'security_result.detection_fields'에 매핑되었습니다.
- 'imperva.abp.monitor_action'이 'security_result.action'에 매핑되었습니다.
2022-06-28
- 개선 -
- 모든 로그에 대해 vendor.name = Imperva 및 product.name = 웹 애플리케이션 방화벽으로 매핑
- 'src'가 'Distributed'인 'metadata.event_type'을 'GENERIC_EVENT'에서 'USER_UNCATEGORIZED'로 변경했습니다.
- 'metadata.event_type'을 'USER_UNCATEGORIZED'에서 'USER_STATS'로 변경했습니다.
2022-06-20
- 'rt' 필드의 grok 패턴이 수정되었습니다.
- 버그 수정 - security_result.action이 개선되었습니다.
- REQ_PASSED: 요청이 사이트의 웹 서버로 라우팅된 경우 (security_result.action = 'ALLOW')
- REQ_CACHED_X: 데이터 센터의 캐시에서 응답이 반환된 경우 (security_result.action = 'ALLOW')
- REQ_BAD_X: 프로토콜 또는 네트워크 오류가 발생한 경우 (security_result.action = 'FAIL')
- REQ_CHALLENGE_X: 챌린지가 클라이언트에게 반환된 경우 (security_result.action = 'BLOCK').
- REQ_BLOCKED_X: 요청이 차단된 경우 (security_result.action = 'BLOCK').
2022-06-14
- 버그 수정 - UDM 필드 'security_result.detection_fields'에 매핑된 'cs1Label', 'cs2Label', 'cs3Label' 필드가 잘못 매핑되는 것을 방지하기 위해 gsub를 추가하고 kv 필터를 수정했습니다.
2022-05-26
- 버그 수정 - 감지 필드의 값에서 키 이름과 콜론 문자를 삭제했습니다.
2022-05-10
- 개선사항 - 다음 필드가 매핑되었습니다.
- 'cs1', 'cs2', 'cs3', 'cs4', 'cs5', 'fileType', 'filePermission'을 'security_result.detection_fields'로 이동합니다.
- 'cs7'을 'principal.location.region_latitude'로 변경합니다.
- 'cs8'을 'principal.location.region_longitude'로 변경합니다.
- CEF 형식 로그의 경우 'cn1', 'cn2'가 'security_result.detection_fields'에 매핑됩니다.
- CEF 형식 로그의 경우 'act'를 'security_result.action' 및 'security_result.action_details'로 변경합니다.
- CEF 형식 로그의 경우 'app'을 'network.application_protocol'로 변경합니다.
- CEF 형식 로그의 'requestClientApplication'을 'network.http.user_agent'로 변경했습니다.
- CEF 형식 로그의 경우 'dvc'를 'about.ip'로 변경합니다.