위험 분석 규칙 만들기

이 문서에서는 위험 분석에 대한 새로운 YARA-L 구문 기능의 주요 요소에 대해 설명합니다. YARA-L에 대한 자세한 내용은 YARA-L 2.0 언어 구문을 참조하세요.

YARA-L 측정항목 함수

Google Security Operations에서는 대량의 과거 데이터를 집계할 수 있는 여러 측정항목 함수를 지원합니다.

측정항목 함수는 결과 섹션에서만 사용할 수 있습니다. 모든 함수 호출 예시는 멀티 이벤트 규칙에서 사용된다고 가정합니다.

측정항목 함수를 사용하는 모든 규칙은 멀티 이벤트 규칙으로 자동으로 분류되며 이는 일치 섹션이 없고 하나의 이벤트 변수만 사용하더라도 동일합니다. 즉, 다중 이벤트 규칙 할당량에 포함됩니다.

함수 매개변수

측정항목 함수는 항목 동작 분석을 수행하는 규칙에 사용할 수 있습니다.

예를 들어 다음 규칙은 특정 IP 주소가 이전 1개월 동안 전송한 최대 일별 바이트 수를 알려줍니다.

$max_bytes_per_day = max(metrics.network_bytes_outbound(
    period:1d, window:30d,
    metric:value_sum,
    agg:max,
    principal.asset.ip:$ip
))

이러한 함수에 사용되는 많은 수의 인수로 인해 여기에는 임의 순서로 지정할 수 있는 이름 지정된 매개변수가 사용됩니다. 매개변수는 다음과 같습니다.

기간

개별 로그 이벤트가 단일 관측에 조합되는 기간입니다. 허용되는 유일한 값은 1h1d입니다.

기간

개별 관측이 평균 및 최댓값과 같은 단일 값으로 집계되는 기간입니다. window에 허용되는 값은 측정항목의 기간을 기준으로 합니다. 유효한 매핑은 다음과 같습니다.

period:1h: window:today

period:1d: window:30d

예를 들어 다음 규칙은 이전 30일을 기준으로 특정 일자에 특정 사용자(Alice)에 대해 확인된 실패한 인증 시도의 최대 횟수를 알려줍니다.

$user = "alice"
$max_fail = max(metrics.auth_attempts_fail(
    period:1d, window:30d,
        metric:event_count_sum,
        agg:max,
        target.user.userid:$user
))

시간 및 일별 측정항목 조합을 first-seen

유형의 감지에 사용할 수 있습니다. 예를 들어 다음 규칙은 사용자가 이 애플리케이션에 로그인한 것이 처음인지 여부를 알려줍니다.

events:
    $e.metadata.event_type = "USER_LOGIN"
    $e.security_result.action = "ALLOW"
    $userid = $e.target.user.userid
    $app = $e.target.application
match:
    // find events from now - 4h ago, which is the recommended look-back period
    $userid, $app over 4h
outcome:
    // check hourly analytics until daily analytics are available
    $first_seen_today = max(metrics.auth_attempts_success(
        period:1h, window:today, metric:first_seen, agg:max,
        target.user.userid:$userid, target.application:$app))
    $first_seen_monthly = max(metrics.auth_attempts_success(
        period:1d, window:30d, metric:first_seen, agg:max,
        target.user.userid:$userid, target.application:$app))
condition:
    $e and ($first_seen_today = 0) and ($first_seen_monthly = 0)

측정항목

각 기간 내에 각 관측에는 많은 수의 측정항목이 연결됩니다. 전체 기간에 대한 집계를 위해 이러한 측정항목 중 하나를 선택해야 합니다. 5가지 metric 유형이 지원됩니다.

event_count_sum - 각 기간 내의 고유한 로그 이벤트 수입니다.

first_seen - 각 기간 내의 일치하는 로그 이벤트가 처음 표시된 타임스탬프입니다.

last_seen - 각 기간 내의 일치하는 로그 이벤트가 마지막으로 표시된 타임스탬프입니다.

value_sum - 기간 내에 조합된 모든 로그 이벤트의 바이트 수 합계를 나타냅니다. 이름에 bytes가 있는 측정항목 함수에만 이 값을 사용할 수 있습니다.

num_unique_filter_values—Google Security Operations에서 사전 계산되지 않지만, 대신 규칙 실행 중에 계산할 수 있는 측정항목입니다. 자세한 내용과 요구사항은 고유 측정항목 수 계산을 참조하세요.

집계

측정항목에 적용되는 집계입니다. 집계는 전체 기간에 걸쳐서 적용됩니다(예: 이전 30일 동안 가장 높은 일별 값). 허용되는 값은 다음과 같습니다.

avg - 기간별 평균 값입니다. 이는 0 값을 포함하지 않는 통계적 평균입니다.

max - 기간별로 가장 큰 값입니다.

min - 기간별로 가장 작은 값입니다.

num_metric_periods - 측정항목 값이 0이 아닌 기간 범위 내의 기간 수입니다.

stddev - 기간별 값의 표준 편차입니다. 이는 0 값을 포함하지 않는 통계적 표준 편차입니다.

sum - 전체 기간 범위에서 기간별 각 값의 합계입니다.

예를 들어 다음 규칙은 이전 30일을 기준으로 특정 일자에 특정 사용자(Alice)에 대해 확인된 실패한 인증 시도의 평균 횟수를 알려줍니다.

$user = "alice"
$avg_fail = max(metrics.auth_attempts_fail(
        period:1d, window:30d,
        metric:event_count_sum,
        agg:avg,
        target.user.userid:$user
))

다음 규칙은 이전 30일 동안 특정 사용자가 수행한 성공한 인증 횟수를 알려줍니다.

$total_success = max(metrics.auth_attempts_success(
        period:1d, window:30d,
        metric:event_count_sum,
        agg:sum,
        target.user.userid:$user
))

다음 규칙은 이전 30일 동안 특정 사용자가 최소한 한 번 이상 성공적으로 로그인했는지 여부를 알려줍니다.

$days_success = max(metrics.auth_attempts_success(
        period:1d, window:30d,
        metric:event_count_sum,
        agg:num_metric_periods,
        target.user.userid:$user
))

다음 규칙은 특정 사용자가 성공적으로 로그인한 처음 시간 또는 마지막 시간을 알려줍니다.

$first_seen = max(metrics.auth_attempts_success(
        period:1d, window:30d,
        metric:first_seen,
        agg:min,
        target.user.userid:$user
))
$last_seen = max(metrics.auth_attempts_success(
        period:1d, window:30d,
        metric:last_seen,
        agg:max,
        target.user.userid:$user
))

다음 규칙은 이전 30일 동안 특정 일에 사용자가 전송한 최대 바이트 수를 알려줍니다.

$max_daily_bytes = max(metrics.network_bytes_outbound(
        period:1d, window:30d,
        metric:value_sum,
        agg:max,
        target.user.userid:$user
))

필터

필터를 사용하면 사전 계산된 측정항목의 값으로 집계하기 전 측정항목을 필터링할 수 있습니다(측정항목의 값 참조). 필터는 이벤트 필드 또는 자리 표시자를 포함하지 않는 모든 유효한 이벤트 표현식(이벤트 섹션의 단일 줄)일 수 있습니다. 이 조건에 포함할 수 있는 유일한 변수는 측정항목 유형입니다.

다음 규칙에는 value_sum > 10 AND event_count_sum > 2 조건에 해당하는 측정항목만 포함됩니다.

$max_bytes_per_day = max(metrics.network_bytes_outbound(
    period:1d, window:30d,
    metric:value_sum,
    agg:max,
    principal.asset.ip:$ip
    filter:value_sum > 10 AND event_count_sum > 2
))
유효한 필터 예시
filter:value_sum > 10 AND event_count_sum != 5
filter:event_count_sum = 100 OR event_count_sum > 1000
filter:timestamp.get_day_of_week(first_seen) = 3
잘못된 필터 예시
// No placeholders in filter expressions.
filter:value_sum > $ph

// No event fields in filter expressions.
filter:event_count_sum + $e.field > 10

// No event fields in filter expressions.
filter:timestamp.subtract(first_seen, $e.metadata.timestamp)

UDM 필드

측정항목은 함수에 따라 1, 2, 3 UDM 필드로 필터링됩니다. 자세한 내용은 함수를 참조하세요.

측정항목 함수에는 다음 유형의 UDM 필드가 사용됩니다.

  • 정의 - (필수) 이 문서에서는 여러 다른 조합을 보여줍니다. 기본값(문자열의 경우 "" 및 int의 경우 0)을 사용하여 측정항목을 조인할 수는 없습니다.
  • 네임스페이스 - (선택사항) 측정기준에 지정하는 항목에 대해서만 네임스페이스를 사용할 수 있습니다. 예를 들어 principal.asset.hostname filter를 사용하는 경우 principal.namespace filter도 사용할 수 있습니다. 네임스페이스 필터를 포함하지 않으면 모든 네임스페이스의 데이터가 함께 집계됩니다. 기본값을 네임스페이스 필터로 사용할 수 있습니다.

기간 계산

Google Security Operations는 일일 또는 시간별 측정항목 기간을 사용하여 측정항목을 계산합니다.

일별 기간

30d와 같은 모든 일별 기간은 동일한 방식으로 결정됩니다. Google Security Operations에는 규칙 시간 범위와 겹치지 않고 생성된 최신 사용 가능한 측정항목 데이터가 사용됩니다. 일별 측정항목의 계산은 완료되는 데 최대 6시간까지 걸릴 수 있으며 해당 일의 마지막 시간(UTC 기준)까지 시작되지 않습니다. 전날의 측정항목 데이터는 매일 오전 6시(UTC 기준) 또는 그 이전에 제공됩니다.

예를 들어 2023년 10월 31일 오전 4시(UTC)부터 2023년 10월 31일 오전 7시(UTC)까지 이벤트 데이터에 대해 실행되는 규칙의 경우, 2023년 10월 31일의 일별 측정항목이 생성되었을 것이므로 측정항목 계산에 2023년 10월 1일부터 2023년 10월 30일(포함)까지의 데이터가 사용됩니다. 반면에 2023년 10월 31일 오전 1시(UTC)부터 2023년 10월 31일 오전 3시(UTC)까지의 이벤트 데이터로 실행되는 규칙의 경우에는 2023년 10월 30일의 일별 측정항목이 생성되지 않았을 것이므로 측정항목 계산에 2023년 9월 30일부터 2023년 10월 29일(포함)까지의 데이터가 사용됩니다.

시간별 today 기간

시간별 측정항목 기간은 일별 측정항목의 기간과 매우 다르게 계산됩니다. today의 시간별 측정항목 기간은 일별 측정항목의 30d 기간과 같은 정적 크기가 아닙니다. 시간별 측정항목 기간 today는 일별 기간의 종료 시점과 규칙 시간 기간의 시작 시점 사이에 가능한 한 많은 데이터를 채웁니다.

예를 들어 2023년 10월 31일 오전 4시(UTC)부터 2023년 10월 31일 오전 7시(UTC)까지의 이벤트 데이터로 실행되는 규칙의 경우 일별 측정항목 계산에 2023년 10월 1일부터 2023년 10월 30일(포함)까지의 데이터 사용되며 시간별 측정항목 기간에는 2023년 10월 31일 자정(UTC)부터 2023년 10월 31일 오전 4시(UTC)까지의 데이터가 사용됩니다.

고유 측정항목 수 계산

num_unique_filter_values라는 특별한 유형의 측정항목은 Google Security Operations에서 사전 계산되지 않으며, 대신 규칙 실행 중에 계산됩니다. 이 작업은 사전 계산된 측정항목의 기존 측정기준에 따른 집계를 통해 수행됩니다. 예를 들어 daily total count of distinct countries that a user attempted to authenticate 측정항목은 target.user.useridprincipal.ip_geo_artifact.location.country_or_region 측정기준에서 후자에 해당하는 측정기준에 따라 고유 집계 수 계산을 수행하여 사전 계산된 auth_attempts_total 측정항목에서 파생될 수 있습니다.

다음 예시 규칙은 고유 측정항목 수를 계산합니다.

$outcome_variable = max(metrics.auth_attempts_total(
    period: 1d,
    window: 30d,
    // This metric type indicates any filter with a wildcard value should be
    // aggregated over each day to produce a new metric on-the-fly.
    metric: num_unique_filter_values,
    agg: max,
    target.user.userid: $userid,
    // Filter whose value should be counted over each day to produce the
    // num_unique_filter_values metric.
    principal.ip_geo_artifact.location.country_or_region: *
))

이 기능에는 다음과 같은 한계가 있습니다.

  • 고유 측정항목 수 계산은 1개의 필터 측정기준에 대해서만 집계할 수 있습니다. 이는 와일드 카드 토큰 *를 필터 값으로 사용하여 표시됩니다.

함수

이 섹션에서는 Google Security Operations에서 지원되는 특정 측정항목 함수에 대해 설명합니다.

인증 시도

metrics.auth_attempts_totalUSER_LOGIN 이벤트 유형의 UDM 이벤트에 대해 이전 값을 사전 계산합니다.

metrics.auth_attempts_success는 이벤트에 ALLOWSecurityResult.Action이 하나 이상 있어야 합니다.

metrics.auth_attempts_fail에는 대신 SecurityResult.ActionsALLOW가 아니어야 합니다.

필터로 사용 가능한 UDM 필드 전체 목록

  • principal.asset.asset_id
  • principal.asset.asset_id, target.asset.asset_id
  • principal.asset.asset_id, target.asset.hostname
  • principal.asset.asset_id, target.asset.ip
  • principal.asset.asset_id, target.asset.mac
  • principal.asset.asset_id, target.asset.product_object_id
  • principal.asset.hostname
  • principal.asset.hostname, target.asset.asset_id
  • principal.asset.hostname, target.asset.hostname
  • principal.asset.hostname, target.asset.ip
  • principal.asset.hostname, target.asset.mac
  • principal.asset.hostname, target.asset.product_object_id
  • principal.asset.ip
  • principal.asset.ip, target.asset.asset_id
  • principal.asset.ip, target.asset.hostname
  • principal.asset.ip, target.asset.ip
  • principal.asset.ip, target.asset.mac
  • principal.asset.ip, target.asset.product_object_id
  • principal.asset.mac
  • principal.asset.mac, target.asset.asset_id
  • principal.asset.mac, target.asset.hostname
  • principal.asset.mac, target.asset.ip
  • principal.asset.mac, target.asset.mac
  • principal.asset.mac, target.asset.product_object_id
  • principal.asset.product_object_id
  • principal.asset.product_object_id, target.asset.asset_id
  • principal.asset.product_object_id, target.asset.hostname
  • principal.asset.product_object_id, target.asset.ip
  • principal.asset.product_object_id, target.asset.mac
  • principal.asset.product_object_id, target.asset.product_object_id
  • principal.user.email_addresses
  • principal.user.email_addresses, target.asset.asset_id
  • principal.user.email_addresses, target.asset.hostname
  • principal.user.email_addresses, target.asset.ip
  • principal.user.email_addresses, target.asset.mac
  • principal.user.email_addresses, target.asset.product_object_id
  • principal.user.employee_id
  • principal.user.employee_id, target.asset.asset_id
  • principal.user.employee_id, target.asset.hostname
  • principal.user.employee_id, target.asset.ip
  • principal.user.employee_id, target.asset.mac
  • principal.user.employee_id, target.asset.product_object_id
  • principal.user.product_object_id
  • principal.user.product_object_id, target.asset.asset_id
  • principal.user.product_object_id, target.asset.hostname
  • principal.user.product_object_id, target.asset.ip
  • principal.user.product_object_id, target.asset.mac
  • principal.user.product_object_id, target.asset.product_object_id
  • principal.user.userid
  • principal.user.userid, target.asset.asset_id
  • principal.user.userid, target.asset.hostname
  • principal.user.userid, target.asset.ip
  • principal.user.userid, target.asset.mac
  • principal.user.userid, target.asset.product_object_id
  • principal.user.windows_sid
  • principal.user.windows_sid, target.asset.asset_id
  • principal.user.windows_sid, target.asset.hostname
  • principal.user.windows_sid, target.asset.ip
  • principal.user.windows_sid, target.asset.mac
  • principal.user.windows_sid, target.asset.product_object_id
  • target.application
  • target.user.email_addresses
  • target.user.email_addresses, network.tls.client.certificate.sha256
  • target.user.email_addresses, principal.ip_geo_artifact.location.country_or_region
  • target.user.email_addresses, principal.ip_geo_artifact.network.organization_name
  • target.user.email_addresses, target.application
  • target.user.employee_id
  • target.user.employee_id, network.tls.client.certificate.sha256
  • target.user.employee_id, principal.ip_geo_artifact.location.country_or_region
  • target.user.employee_id, principal.ip_geo_artifact.network.organization_name
  • target.user.employee_id, target.application
  • target.user.product_object_id
  • target.user.product_object_id, network.tls.client.certificate.sha256
  • target.user.product_object_id, principal.ip_geo_artifact.location.country_or_region
  • target.user.product_object_id, principal.ip_geo_artifact.network.organization_name
  • target.user.product_object_id, target.application
  • target.user.userid
  • target.user.userid, network.tls.client.certificate.sha256
  • target.user.userid, principal.ip_geo_artifact.location.country_or_region
  • target.user.userid, principal.ip_geo_artifact.network.organization_name
  • target.user.userid, target.application
  • target.user.windows_sid
  • target.user.windows_sid, network.tls.client.certificate.sha256
  • target.user.windows_sid, principal.ip_geo_artifact.location.country_or_region
  • target.user.windows_sid, principal.ip_geo_artifact.network.organization_name
  • target.user.windows_sid, target.application

metrics.auth_attempts_total에 필터로 사용 가능한 추가 UDM 필드 포함

  • target.application, target.asset.asset_id
  • target.application, target.asset.hostname
  • target.application, target.asset.ip
  • target.application, target.asset.mac
  • target.application, target.asset.product_object_id

metrics.auth_attempts_success에 필터로 사용 가능한 추가 UDM 필드 포함

  • network.http.user_agent
  • principal.asset.asset_id, metadata.event_type
  • principal.asset.hostname, metadata.event_type
  • principal.asset.ip, metadata.event_type
  • principal.asset.mac, metadata.event_type
  • principal.asset.product_object_id, metadata.event_type

DNS 바이트 아웃바운드

metrics.dns_bytes_outboundnetwork.sent_bytes > 0이 있는 UDM 이벤트의 이전 값을 사전 계산합니다. 대상 포트는 53/udp, 53/tcp, 3000/tcp입니다. network.sent_bytesvalue_sum으로 제공됩니다.

필터로 사용 가능한 UDM 필드 전체 목록

  • principal.asset.asset_id
  • principal.asset.asset_id, target.ip
  • principal.asset.hostname
  • principal.asset.hostname, target.ip
  • principal.asset.ip
  • principal.asset.ip, target.ip
  • principal.asset.mac
  • principal.asset.mac, target.ip
  • principal.asset.product_object_id
  • principal.asset.product_object_id, target.ip
  • principal.user.email_addresses
  • principal.user.email_addresses, target.ip
  • principal.user.employee_id
  • principal.user.employee_id, target.ip
  • principal.user.product_object_id
  • principal.user.product_object_id, target.ip
  • principal.user.userid
  • principal.user.userid, target.ip
  • principal.user.windows_sid
  • principal.user.windows_sid, target.ip
  • target.ip

DNS 쿼리

metrics.dns_queries_totalnetwork.dns.id에 값이 있는 UDM 이벤트의 이전 값을 사전 계산합니다.

또한 metrics.dns_queries_success에는 network.dns.response_code0(NoError)이어야 합니다.

metrics.dns_queries_failnetwork.dns.response_code0보다 큰 이벤트만 고려합니다.

필터로 사용 가능한 UDM 필드 전체 목록

  • principal.asset.asset_id
  • principal.asset.asset_id, network.dns_domain
  • principal.asset.asset_id, network.dns.questions.type
  • principal.asset.hostname
  • principal.asset.hostname, network.dns_domain
  • principal.asset.hostname, network.dns.questions.type
  • principal.asset.ip
  • principal.asset.ip, network.dns_domain
  • principal.asset.ip, network.dns.questions.type
  • principal.asset.mac
  • principal.asset.mac, network.dns_domain
  • principal.asset.mac, network.dns.questions.type
  • principal.asset.product_object_id
  • principal.asset.product_object_id, network.dns_domain
  • principal.asset.product_object_id, network.dns.questions.type
  • principal.user.email_addresses
  • principal.user.email_addresses, network.dns_domain
  • principal.user.email_addresses, network.dns.questions.type
  • principal.user.employee_id
  • principal.user.employee_id, network.dns_domain
  • principal.user.employee_id, network.dns.questions.type
  • principal.user.product_object_id
  • principal.user.product_object_id, network.dns_domain
  • principal.user.product_object_id, network.dns.questions.type
  • principal.user.userid
  • principal.user.userid, network.dns_domain
  • principal.user.userid, network.dns.questions.type
  • principal.user.windows_sid
  • principal.user.windows_sid, network.dns_domain
  • principal.user.windows_sid, network.dns.questions.type

파일 실행

metrics.file_executions_totalPROCESS_LAUNCH 이벤트 유형의 UDM 이벤트에 대해 이전 값을 사전 계산합니다.

metrics.file_executions_success는 이벤트에 ALLOWSecurityResult.Action이 하나 이상 있어야 합니다.

metrics.file_executions_fail에는 대신 SecurityResult.ActionsALLOW가 아니어야 합니다.

필터로 사용 가능한 UDM 필드 전체 목록

  • metadata.event_type, principal.process.file.sha256
  • metadata.event_type, principal.asset.asset_id, principal.process.file.sha256
  • metadata.event_type, principal.asset.hostname, principal.process.file.sha256
  • metadata.event_type, principal.asset.ip, principal.process.file.sha256
  • metadata.event_type, principal.asset.mac, principal.process.file.sha256
  • metadata.event_type, principal.asset.product_object_id, principal.process.file.sha256
  • metadata.event_type, principal.user.email_addresses, principal.process.file.sha256
  • metadata.event_type, principal.user.employee_id, principal.process.file.sha256
  • metadata.event_type, principal.user.product_object_id, principal.process.file.sha256
  • metadata.event_type, principal.user.userid, principal.process.file.sha256
  • metadata.event_type, principal.user.windows_sid, principal.process.file.sha256

HTTP 쿼리

metrics.http_queries_totalnetwork.http.method에 값이 있는 UDM 이벤트의 이전 값을 사전 계산합니다.

metrics.http_queries_success에는 network.http.response_code < 400이 필요합니다.

metrics.http_queries_failnetwork가 있는 이벤트만 고려합니다.http.response_code >= 400

필터로 사용 가능한 UDM 필드 전체 목록

  • principal.asset.asset_id
  • principal.asset.asset_id, network.http.user_agent
  • principal.asset.hostname
  • principal.asset.hostname, network.http.user_agent
  • principal.asset.ip
  • principal.asset.ip, network.http.user_agent
  • principal.asset.mac
  • principal.asset.mac, network.http.user_agent
  • principal.asset.product_object_id
  • principal.asset.product_object_id, network.http.user_agent
  • principal.user.email_addresses
  • principal.user.email_addresses, network.http.user_agent
  • principal.user.employee_id
  • principal.user.employee_id, network.http.user_agent
  • principal.user.product_object_id
  • principal.user.product_object_id, network.http.user_agent
  • principal.user.userid
  • principal.user.userid, network.http.user_agent
  • principal.user.windows_sid
  • principal.user.windows_sid, network.http.user_agent

네트워크 바이트

metrics.network_bytes_inboundnetwork.received_bytes의 값이 0이 아닌 UDM 이벤트의 이전 값을 사전 계산하고 해당 필드를 value_sum으로 제공합니다.

metrics.network_bytes_outboundnetwork.sent_bytes에 대해 0이 아닌 값이 필요하고 해당 필드를 value_sum으로 제공합니다.

metrics.network_bytes_totalnetwork.received_bytes 또는 network.sent_bytes(또는 둘 다)에 대해 값이 0이 아닌 이벤트를 고려하고 두 필드의 합계를 value_sum으로 제공합니다.

필터로 사용 가능한 UDM 필드 전체 목록

  • principal.asset.asset_id
  • principal.asset.asset_id, principal.ip_geo_artifact.location.country_or_region
  • principal.asset.asset_id, security_result.category
  • principal.asset.asset_id, target.ip_geo_artifact.network.organization_name
  • principal.asset.hostname
  • principal.asset.hostname, principal.ip_geo_artifact.location.country_or_region
  • principal.asset.hostname, security_result.category
  • principal.asset.hostname, target.ip_geo_artifact.network.organization_name
  • principal.asset.ip
  • principal.asset.ip, principal.ip_geo_artifact.location.country_or_region
  • principal.asset.ip, security_result.category
  • principal.asset.ip, target.ip_geo_artifact.network.organization_name
  • principal.asset.mac
  • principal.asset.mac, principal.ip_geo_artifact.location.country_or_region
  • principal.asset.mac, security_result.category
  • principal.asset.mac, target.ip_geo_artifact.network.organization_name
  • principal.asset.product_object_id
  • principal.asset.product_object_id, principal.ip_geo_artifact.location.country_or_region
  • principal.asset.product_object_id, security_result.category
  • principal.asset.product_object_id, target.ip_geo_artifact.network.organization_name
  • principal.user.email_addresses
  • principal.user.email_addresses, principal.ip_geo_artifact.location.country_or_region
  • principal.user.email_addresses, security_result.category
  • principal.user.email_addresses, target.ip_geo_artifact.network.organization_name
  • principal.user.employee_id
  • principal.user.employee_id, principal.ip_geo_artifact.location.country_or_region
  • principal.user.employee_id, security_result.category
  • principal.user.employee_id, target.ip_geo_artifact.network.organization_name
  • principal.user.product_object_id
  • principal.user.product_object_id, principal.ip_geo_artifact.location.country_or_region
  • principal.user.product_object_id, security_result.category
  • principal.user.product_object_id, target.ip_geo_artifact.network.organization_name
  • principal.user.userid
  • principal.user.userid, principal.ip_geo_artifact.location.country_or_region
  • principal.user.userid, security_result.category
  • principal.user.userid, target.ip_geo_artifact.network.organization_name
  • principal.user.windows_sid
  • principal.user.windows_sid, principal.ip_geo_artifact.location.country_or_region
  • principal.user.windows_sid, security_result.category
  • principal.user.windows_sid, target.ip_geo_artifact.network.organization_name

리소스 만들기

metrics.resource_creation_totalRESOURCE_CREATION 이벤트 유형의 UDM 이벤트에 대해 이전 값을 사전 계산합니다.

metrics.resource_creation_success는 이벤트에 ALLOWSecurityResult.Action이 하나 이상 있어야 합니다.

필터로 사용 가능한 UDM 필드 전체 목록

  • target.user, metadata.vendor_name, metadata.product_name
  • principal.user, metadata.vendor_name, metadata.product_name
  • principal.user, principal.ip, metadata.vendor_name, metadata.product_name
  • principal.user, target.application, metadata.vendor_name, metadata.product_name
  • target.resource.name, metadata.vendor_name, metadata.product_name
  • principal.user, target.resource.name, metadata.vendor_name, metadata.product_name
  • principal.user, target.location.name, metadata.vendor_name, metadata.product_name

리소스 삭제

metrics.resource_deletion_successRESOURCE_DELETION 이벤트 유형으로 UDM 이벤트의 이전 값을 사전 계산하며, 이벤트에는 하나 이상의 ALLOW SecurityResult.Actions가 필요합니다.

필터로 사용 가능한 UDM 필드 전체 목록

  • target.user, metadata.vendor_name, metadata.product_name
  • principal.user, metadata.vendor_name, metadata.product_name
  • principal.user, principal.ip, metadata.vendor_name, metadata.product_name
  • principal.user, target.application, metadata.vendor_name, metadata.product_name
  • target.resource.name, metadata.vendor_name, metadata.product_name
  • principal.user, target.resource.name, metadata.vendor_name, metadata.product_name
  • principal.user, target.location.name, metadata.vendor_name, metadata.product_name

리소스 읽기

metrics.resource_read_successRESOURCE_READ 이벤트 유형으로 UDM 이벤트의 이전 값을 사전 계산하며, 이벤트에는 하나 이상의 ALLOW SecurityResult.Action가 필요합니다.

metrics.resource_read_fail에는 대신 SecurityResult.ActionsALLOW가 아니어야 합니다.

필터로 사용 가능한 UDM 필드 전체 목록

  • target.user, metadata.vendor_name, metadata.product_name
  • principal.user, metadata.vendor_name, metadata.product_name
  • principal.user, principal.ip, metadata.vendor_name, metadata.product_name
  • principal.user, target.application, metadata.vendor_name, metadata.product_name
  • target.resource.name, metadata.vendor_name, metadata.product_name
  • principal.user, target.resource.name, metadata.vendor_name, metadata.product_name
  • principal.user, target.location.name, metadata.vendor_name, metadata.product_name

제한사항

측정항목으로 YARA-L 규칙을 만들 때는 다음 제한사항에 유의하세요.

  • 기본값(문자열의 경우 "" 및 int의 경우 0)을 사용하여 측정항목을 조인할 수는 없습니다.
  • 기본값:
    • 이벤트에 해당하는 측정항목 데이터가 없으면 측정항목 함수에서 반환되는 값이 0입니다.
    • 감사에 측정항목 데이터가 없는 이벤트가 있을 경우 함수에 대한 집계를 위해 min을 사용할 경우 0을 반환할 수 있습니다.
    • 이벤트에 대해 데이터가 있는지 여부를 확인하려면 동일한 필터를 사용해서 동일한 이벤트에 대해 측정항목 num_metric_periods 집계를 사용할 수 있습니다.
  • 측정항목 함수는 결과 섹션에서만 사용할 수 있습니다.
  • 측정항목 함수는 결과 섹션에서만 사용되므로 일치 섹션의 규칙에 있는 다른 값과 같이 집계되어야 합니다.