검색 결과 중복 삭제
Google Security Operations에서 여러 시스템이 동일한 이벤트를 로깅하는 경우 (예: 인증 시스템과 방화벽이 모두 단일 로그인을 로깅하는 경우) 검색 결과에 중복이 포함될 수 있습니다.
고유한 결과만 반환하려면 YARA-L 구문에서 dedup 섹션을 사용하세요. 이 섹션에 UDM 필드를 추가하면 쿼리에서 고유한 값 조합마다 단일 결과를 반환합니다.
성능 가이드라인
dedup 연산자는 정확성을 유지하기 위해 시간 범위 내의 모든 데이터를 단일 단위로 처리합니다.
- 최적 범위: 1일 이하 범위에서 실적이 가장 좋습니다.
- 지연 시간: 7~30일 범위는 지연 시간을 크게 늘리고 쿼리 시간 초과를 유발할 수 있습니다.
dedup 연산자를 적용할 때는 조사에 적합한 가장 짧은 시간 범위를 항상 사용하는 것이 좋습니다.
쿼리 유형별 중복 삭제
중복 삭제 동작은 쿼리에서 집계를 사용하는지 여부에 따라 달라지며 다음 유형의 검색 및 대시보드 쿼리에 적용됩니다.
집계된 검색어
집계된 검색어에는 match, match 및 outcome 또는 aggregated outcome 섹션이 포함됩니다. 중복 제거는 결과가 결정된 후에 발생합니다.
이러한 쿼리의 경우 dedup 섹션에 다음 필드를 추가합니다.
match섹션의 필드outcome섹션의 필드
UDM 검색어
UDM 검색어는 match, outcome 또는 집계된 outcome 섹션을 제외합니다. 참고: 집계가 없고 match 섹션이 없는 경우 UDM 검색어에 outcome 섹션을 포함할 수 있습니다.
UDM 검색의 중복을 삭제하려면 dedup 섹션에 다음 필드를 추가하세요.
- 반복되지 않고, 배열이 아니며, 그룹화되지 않은 이벤트 필드
events섹션의 자리표시자 필드입니다.outcome섹션의 결과 변수 (집계가 없는 경우)
Google 검색의 중복 삭제 예
이 섹션에서는 YARA-L 구문을 보여주며 검색에서 실행할 수 있습니다.
예: 고유 IP 주소 검색
다음 예시 쿼리는 내부 IP (principal.ip)로 중복 삭제된 내부 IP와 외부 IP 간의 네트워크 연결을 식별합니다.
events:
metadata.event_type = "NETWORK_CONNECTION"
target.ip != ""
principal.ip != ""
match:
target.ip, principal.ip
dedup:
principal.ip
예: 트래픽량이 있는 고유 IP 주소
이전 예와 마찬가지로 다음 예 검색에서는 고유한 IP 주소가 있는 네트워크 연결 이벤트를 표시합니다. dedup을 principal.ip에 적용하면 결과가 고유 IP와 연결된 이벤트로 좁혀집니다. outcome 섹션에는 principal.ip와 target.ip 사이에 전송된 총 바이트가 표시되며, 트래픽 볼륨이 가장 높은 결과부터 가장 낮은 결과 순으로 정렬됩니다.
events:
metadata.event_type = "NETWORK_CONNECTION"
target.ip != ""
principal.ip != ""
match:
target.ip, principal.ip
outcome:
$total_bytes = sum(network.sent_bytes)
dedup:
principal.ip
order:
$total_bytes desc
예: 기본 UDM 중복 삭제
다음 예에서는 모든 로그 유형에서 액세스한 고유 호스트 이름의 개요를 검색합니다. dedup를 target.hostname에 적용하면 결과가 고유한 외부 호스트 이름과 연결된 이벤트로 좁혀집니다. 참고: 이 형식은 집계가 필요하지 않은 쿼리에 효과적입니다.
metadata.log_type != ""
dedup:
target.hostname
다음은 dedup 옵션이 없는 동일한 예입니다. 일반적으로 훨씬 더 많은 이벤트를 반환합니다.
metadata.log_type != "" AND target.hostname != ""
예: 고유한 호스트 이름
이전 예와 마찬가지로 이 검색에서는 고유한 호스트 이름이 있는 네트워크 연결 이벤트를 표시합니다. dedup 옵션을 principal.hostname에 적용하면 결과가 고유 호스트와 연결된 이벤트로 좁혀집니다.
events:
metadata.event_type = "NETWORK_CONNECTION"
target.hostname != ""
principal.hostname != ""
match:
target.hostname, principal.hostname
outcome:
$total_bytes = sum(network.sent_bytes)
dedup:
principal.hostname
order:
$total_bytes desc
도움이 더 필요하신가요? 커뮤니티 회원 및 Google SecOps 전문가에게 문의하여 답변을 받으세요.