상관 규칙(베타)
상관 규칙은 로그 전반에 걸쳐 상관관계를 설정하고 이상을 식별하며 복잡한 공격 행동을 모델링한 후 경고를 생성합니다
개요
Panther에서 상관 규칙을 사용하면 여러 로그 유형에 걸친 여러 동작을 추적할 수 있습니다. 상관 규칙에서는 다음을 지정합니다. 그룹 또는 특정 시퀀스 의 시그널 이 특정 시간 창 내에 발생해야 일치로 간주되는지 — 그런 다음 시그널을 생성하고 선택적으로 경보.
또한 상관 규칙 기준에 시그널의 부재 를 포함할 수 있습니다. 상관 규칙의 일치 여부는 규칙 일치나 경보가 아니라 시그널로 결정되므로 규칙, 예약 규칙 및 상관 규칙을 포함하여 경보가 비활성화된.
상관 규칙은 예를 들어 다음과 같은 상황에서 경보를 생성하려는 경우 특히 유용할 수 있습니다:
특정 Okta 사용자가 최소 백 번의 실패한 로그인 시도 후 성공적으로 로그인한 다음 AWS에 루트 사용자로 로그인하는 경우 (아래 전체 예시 참조)
GitHub 저장소에서 고급 보안 설정이 비활성화된 후 저장소가 보관(archived)되지 않은 경우 (아래 전체 예시 참조)
아래에서 사용자 정의 상관 규칙을 만드는 방법을 알아보세요및 상관 규칙을 구성하는 YAML 키에 대한 자세한 내용은 상관 규칙 참조를 확인하세요. 또한 다음을 활용할 수 있습니다 Panther 관리 상관 규칙.
상관 규칙을 사용하면 Snowflake 컴퓨트 비용이 증가할 수 있습니다. 상관 규칙을 보다 비용 효율적으로 만드는 방법은 다음 지침을 참조하세요 상관 규칙 효율화하기아래를 참조하세요.
상관 규칙 작동 방식
상관 규칙은 YAML로 작성되며 이전에 생성된 규칙, 예약 규칙및/또는 상관 규칙을 참조합니다. 각 상관 규칙은 일정에 따라 실행되며 및 “조회 창(lookback window)”을 정의합니다, 즉 규칙이 과거 어느 정도 기간을 조회하여 시그널 (또는 시그널의 부재)를 찾을지의 양을 의미합니다.
상관 규칙에 다음과 같은 추가 기준을 적용할 수 있습니다:
특정 규칙에 대해 발견되어야 할 최소 시그널 수 또는 최대값 요구
한 규칙에서 다른 규칙까지 특정 이벤트 값이 일치하도록 요구(예: 모든 개별 규칙의 시그널이 동일한 IP 주소를 포함하도록 요구)
내에서 시퀀스 후속 단계가 특정 시간 내에 발생했어야 함을 요구
상관 규칙에서 일치가 발생하면 어떤 일이 발생하는가
상관 규칙의 일치는 시그널를 생성합니다. 상관 규칙에 경보가 활성화되어 있으면 규칙 일치가 생성되고, 이는 상관 규칙의 중복 제거 구성. 에서 설정한 대로 경보를 생성할 수 있습니다. 시그널, 규칙 일치 및 경보의 차이에 대해 자세히 알아보세요..
상관 규칙에 대해 경보가 생성되면 상관 규칙에 참조된 개별 규칙, 예약 규칙 및 상관 규칙이 자체 경보를 생성할 수도 있고 생성하지 않을 수도 있습니다. 이는 다음에 따라 달라집니다:
각 개별 규칙, 예약 규칙 및 상관 규칙에 경보가 활성화되어 있는지 여부
를 입력하세요
임계값개별 규칙 또는 예약 규칙의 값 및MinMatchCount상관 규칙의 값. 상관 규칙은 경보를 생성할 수 있지만 이를 구성하는 규칙들은 경보를 생성하지 못하는 엣지 케이스는 개별 규칙의 이벤트 임계값(임계값키로 설정됨)이 상관 규칙의MinMatchCount값보다 높고 실제 규칙 일치 수가 그 중간 어딘가에 있는 경우입니다.
그룹 vs. 시퀀스
상관 규칙에는 두 가지 유형이 있습니다: 그룹 및 시퀀스. 그룹 및 시퀀스 상관 규칙 모두 시그널이 찾아져야 하는(또는 찾아지지 ) 집합을 정의하며, 이는 Absence: true).
로 설정하여 시그널의 부재로 정의할 수 있습니다. 그룹 상관 규칙은 모든 규칙이 시그널(또는 부재)을 생성하면 시그널이 발견된 순서와 상관없이 경보를 생성합니다. 반면 시퀀스 규칙은 경보를 생성하려면 시그널(또는 부재)이 특정 순서로 발견되어야 함을 정의합니다.
일정 및 조회 창 설정하기
각 상관 규칙은 다음 두 가지를 모두 정의합니다:
일정:
Schedule필드로 정의되며(이는RateMinutes또는또는CronExpression을 사용), 일정은 상관 규칙이 얼마나 자주 실행되어야 하는지를 나타냅니다.
조회 창(lookback window):LookbackWindowMinutes 시그널 필드로 정의되며, 조회 창은 그룹 또는 시퀀스에 포함된 규칙, 예약 규칙 또는 상관 규칙에 대해 과거 몇 분을 조회할지 지정합니다(또는 시그널의 부재를).
값을 설정할 때 Schedule 및 조회 창(lookback window):다음 몇 가지 요소를 고려하는 것이 권장됩니다:
이 상관 규칙의 일치에 대해 적시에 경보를 받는 것이 얼마나 중요한지
예를 들어, 우선순위가 낮은 상관 규칙은 24시간마다 한 번만 실행해도 충분할 수 있지만, 우선순위가 높은 상관 규칙은 15분마다 실행하도록 설정할 수 있습니다.
상관 규칙이 찾고자 하는 첫 번째 시그널과 마지막 시그널이 얼마나 시간적으로 떨어져 있어야 동일한 발생으로 간주되어 일치를 생성할 수 있는지
상관 규칙과 관련된 규칙이 평가하는 데이터 소스에서 예상되는 최대 지연(latency)
Schedule 및 조회 창(lookback window): 은 Snowflake 컴퓨트 비용에 영향을 미칠 수 있습니다. 자세한 내용은 상관 규칙 효율화하기 를 참조하세요.
시그널이 조회 창 사이에 분할되지 않도록 보장하기
조회 창을 설정할 때 필요한 시그널이 여러 상관 규칙 실행의 조회 창에 걸쳐 분할되어 검색되지 않는 일이 발생하지 않도록 구성하는 것이 권장됩니다.
상관 규칙이 일치하기 위해 필요한 시그널이 서로 다른 실행으로 분할되지 않도록(즉 동일한 조회 창에 포함되도록) 하려면 먼저 첫 번째와 마지막 시그널이 얼마나 시간적으로 떨어져 있어야 동일한 발생으로 간주될지를 결정하세요. 편의상 이 값을 “최대 시그널 기간(분)”이라고 부르겠습니다.
(이 값은 WithinTimeFrameMinutes와 혼동해서는 안 됩니다. 이는 시퀀스의 두 단계가 통과하기 위해 발생해야 하는 시간 프레임입니다. “최대 시그널 기간(분)”과 WithinTimeFrameMinutes 는 상관 규칙이 시퀀스이고 두 단계만 지정된 경우 동일할 수 있습니다.)
다음 공식을 사용하면 모든 가능한 길이 "최대 시그널 기간(분)"의 윈도우가 적어도 한 번의 상관 규칙 실행 내에 포함되도록 조회 창(lookback window): 값을 구성하는 것이 권장됩니다. 일반적으로 다음 공식으로 가능합니 다:
다중 시리즈: 각기 다른 색의 여러 선으로 표현되는
RateMinutes<= "최대 시그널 기간(분)":조회 창(lookback window):= 2 x "최대 시그널 기간(분)" + 로그 수집 지연
다중 시리즈: 각기 다른 색의 여러 선으로 표현되는
RateMinutes> "최대 시그널 기간(분)":조회 창(lookback window):= "최대 시그널 기간(분)" +RateMinutes+ 로그 수집 지연
로그 수집 지연의 포함 이유를 이해하려면 다음을 참조하세요 값에서 로그 소스 지연을 고려하는 것 조회 창(lookback window):
값에서 로그 소스 지연을 고려하는 것 조회 창(lookback window):
조회 창(lookback window):로그 수집 지연은 상관 규칙과 관련된 규칙이 평가하는 데이터 소스에서 예상되는 최대 지연입니다.
시그널은 관련 이벤트가 발생한 시간(p_event_time), 찾아지지 —Panther에 이벤트가 수집된 시간(p_parse_time)이 아니라 발생 시간 기준으로 조회 창 내에서 가져오므로 조회 창을 결정할 때 수집 지연을 고려해야 합니다. 조회 창(lookback window): 이는 상관 규칙이 마지막으로 실행된 이후의 모든 “새로운” 데이터를 처리하고 있는지 확인하기 위함입니다.
예를 들어 상관 규칙을 매시간 실행하도록 구성한 경우(예: RateMinutes 를 60로 설정하여) 상관 규칙과 관련된 규칙이 처리하는 로그의 소스가 Panther로 로그 전달을 최대 3시간 지연할 수 있다고 명시한다면, 조회 창(lookback window): 를 60 + 3*60또는 240를 설정할 수 있습니다. 이를 더 설명하면, 3시간 수집 지연 때문에 Panther에서 9:01am에 수신된 데이터는 9:01am 에 대해 p_event_time 최소 6:01am만큼 이른 발생 시간을 가질 수 있습니다. 상관 규칙이 매시간 정각에 실행된다면,10:00am 6:01am.
최소한
이전까지 조회해야 할 것입니다. 조회 창(lookback window): 이벤트 중복 제거 조회 창(lookback window): 상관 규칙의 중복 제거 기간은
필드의 값입니다. 이는 동일한 시간 프레임 내의 겹치는 상관 규칙이 해당 상관 규칙이 일치하게 만든 고유한 이벤트만 포함한다는 것을 의미합니다., 상관 규칙에서 참조된 개별 규칙 및 예약 규칙에 설정된 중복 제거(dedup() 또는, 임계값DedupPeriodMinutes
로 설정하거나 콘솔에서 설정한)는 상관 규칙에는 적용되지 않습니다.
상관 규칙 오류
상관 규칙 작업 중 다음 오류 중 하나를 받을 수 있습니다:Simple Detections 오류 코드
: 상관 규칙을 구성하는 데 잘못된 구문을 사용했습니다Detection 오류
: 상관 규칙 실행에 실패했습니다시스템 오류
조회 창(lookback window):: 상관 규칙이 시간 초과되었습니다(대개 너무 큰
값 때문일 가능성이 높음)
그룹 상관 규칙 시그널 그룹 상관 규칙은 특정 조회 창 내에서 발생해야 하는(또는 시그널의 부재가 있어야 하는) 규칙 모음을 정의합니다. 시그널은 어떤 순서로든 발생할 수 있습니다.
이벤트들이 특정 순서로 발생하기를 원한다면 시퀀스 상관 규칙 을 사용하세요.
MatchCriteria
그룹 상관 규칙에서 MatchCriteria 키는 각 규칙, 예약 규칙 및 상관 규칙에 대해 일치해야 하는 필드를 정의합니다.
여러 로그 유형, 예약 규칙 또는 상관 규칙에 연결된 규칙의 경우 오직 탭은 각 선언된 요약 속성에 대해 상위 다섯 개 속성을 표시합니다. 필드들 만 일치시킬 수 있습니다. (하나의 로그 유형에만 연결된 규칙의 경우에는 어떤 필드든 일치시킬 수 있습니다.)
MatchCriteria가 정의되지 않으면 특정 이벤트 필드 값이 일치해야 한다는 요구사항이 없으므로 상관 규칙의 특이성이 낮아집니다.
에 대해 자세히 알아보세요 MatchCriteria )를 가진 결과 집합을 생성한 후 상관 규칙 참조.
MinMatchCount
그룹 상관 규칙에서, MinMatchCount 는 선택적 필드로서 이 상관 규칙이 통과하려면(일치하려면) 일치해야 하는 개별 규칙, 예약 규칙 또는 상관 규칙(에서 정의된)의 최소 개수를 지정합니다. Group예를 들어, 다섯 개의 규칙을
내에 나열하고 Group MinMatchCount: 2 를 추가하면, 다섯 규칙 중 어느 두 규칙이라도 시그널을 생성하면 상관 규칙이 일치합니다.는 또한
MinMatchCount 에 정의된 개별 규칙에서 사용할 수 있는 필드입니다. 두 필드가 함께 사용된 예시는 GroupMinMatchCount가 있는 그룹 예시 그룹 예시들아래를 참조하세요.
아래 예시는 다음 JSON 이벤트를 참조합니다:
예시 이벤트
는 네 규칙 모두의 MatchCriteria IP 필드가 동일한 값을 가져야 함을 지정합니다. - ID: &failed_login Failed Login
네 번째 규칙에서는 발견되지 않는다면 상관 규칙은 통과합니다. 찾아지지 - RuleID: Standard.BruteForceByIP
의 하위 값인 MinMatchCount Detection 는 내에 정의된 세 규칙 중 어느 두 규칙이라도 시그널이 발견되면 상관 규칙이 일치하도록 지정합니다. 또한 Group에 규칙에 정의된 MinMatchCount 도 있다는 점에 유의하세요. 이는 외부 수준의 Group와 함께 사용됩니다. 이 상관 규칙이 통과하는 경우의 예시는 아래 목록을 참조하세요. MinMatchCount위 상관 규칙은 다음 시나리오 중 어느 하나에서 통과합니다:
Okta.Login.Success로부터 최소 하나의 시그널이 있고
그리고 AWS.Console.RootLogin로부터 최소 하나의 시그널이 있을 때
Standard.BruteForceByIP로부터 최소 일곱 개의 시그널이 있을 때세 규칙 모두로부터 시그널이 있을 때(그리고 그 중에서 최소 일곱 개의 시그널이시퀀스 상관 규칙시퀀스 상관 규칙은 특정 조회 창 내에서 특정 순서로 발생해야 하는(또는 시그널의 부재가 있어야 하는) 규칙 모음을 정의합니다.
시퀀스의 순서는세 규칙 모두로부터 시그널이 있을 때(그리고 그 중에서 최소 일곱 개의 시그널이Standard.BruteForceByIP로부터 최소 일곱 개의 시그널이 있을 때시퀀스 상관 규칙은 특정 조회 창 내에서 특정 순서로 발생해야 하는(또는 시그널의 부재가 있어야 하는) 규칙 모음을 정의합니다.
시퀀스의 순서는세 규칙 모두로부터 시그널이 있을 때(그리고 그 중에서 최소 일곱 개의 시그널이시퀀스 상관 규칙Sequence
시퀀스의 순서는)
키 내에 정의된 규칙의 순서로 정의됩니다.
규칙들이 모두 시그널(또는 부재)을 가지기만 하면 일치하도록 하고 특정 순서를 요구하지 않으려면 시그널 그룹 상관 규칙
을 사용하세요. 전환(Transitions) 시퀀스 내에서 전환을 선택적으로 정의할 수 있습니다. 전환은 시퀀스의 한 단계에서 다음 단계로 이동하는 방법에 대한 추가 기준(단계 사이에 허용되는 시간 및 어떤 이벤트 필드가 일치해야 하는지 등)을 정의합니다.
및/또는 Match 을 사용하세요.
를 사용하면 상관 규칙의 특이성이 높아집니다.
전환이 정의된 경우, 를 사용하면 상관 규칙의 특이성이 높아집니다. 와(과) 함께 사용하면 유용합니다 WithinTimeFrameMinutes 에 포함된 규칙 수보다 전환 수는 하나 적어야 합니다. 또한 내 항목은 목록과 같은 순서여야 합니다.
현재 상관 규칙당 일치시킬 수 있는 필드 유형은 하나만 가능합니다(예: IP 주소 필드 또는 이메일 주소 필드). 여러 로그 유형, 예약 규칙 또는 상관 규칙에 연결된 규칙의 경우 오직 전환(Transitions)에 대해 자세히 알아보세요 를 사용하면 상관 규칙의 특이성이 높아집니다. 시퀀스 예시 전환(Transitions) 전환 및 Match가 있는 시퀀스
내에서 모든 를 사용하는 것은 값이 일치해야 하는 이벤트 필드를 정의하려는 경우에 유용합니다. 모든 - Sequence: 탭은 각 선언된 요약 속성에 대해 상위 다섯 개 속성을 표시합니다. 필드들 만 일치시킬 수 있습니다. (하나의 로그 유형에만 연결된 규칙의 경우에는 어떤 필드든 일치시킬 수 있습니다.)
- ID: Failed Login 상관 규칙 참조.
- ID: Successful Login
예시 이벤트
- ID: Root Login 를 사용하면 상관 규칙의 특이성이 높아집니다. 와(과) 함께 사용하면 유용합니다 내 항목은 - ID: Missing Crowdstrike 전환(Transitions) Transitions:
- ID: Root Login 를 사용하면 상관 규칙의 특이성이 높아집니다. - ID: Missing Crowdstrike 전환(Transitions) 상관 규칙 테스트하기 내 항목은 상관 규칙에 단위 테스트를 추가하여 특정 조건이 주어졌을 때 상관 규칙의 일치가 생성되는지(잠재적으로 경보를 생성하는지 — 참고: WithinTimeFrameMinutes.
Unit Tests 를 사용하면 상관 규칙의 특이성이 높아집니다. 탭 또는 CLI 워크플로우의 최상위 전환(Transitions) Tests
필드에서 상관 규칙에 정의되며, 규칙이나 정책의
단위 테스트와 유사한 구조를 가집니다. 상관 규칙에서 일치가 발생하면 어떤 일이 발생하는가).
ExpectedResult RuleOutputs 필드를 포함해야 합니다. 단위 테스트의 YAML 구조와 값을 구성하는 방법에 대해 자세히 알아보려면 상관 규칙 참조의 해당 항목을 확인하세요. 상관 규칙에 대한 테스트를 작성한 후 다음 명령을 사용하여 테스트를 실행할 수 있습니다..
. 상관 규칙에 대해 이름(Name), 를 실행하려면 API 토큰이 필요합니다 — 자세한 내용은 및 를 참조하세요. 단위 테스트 예시 를 참조하세요. 다음 상관 규칙을 사용: - ID: OktaLoginFailure.
- ID: Okta Brute Force Login
From: OktaLoginFailure
Name: Successful Login with Timestamps
Matches: client.ipAddress:# 원래 규칙의 MinMatchCount가 10이므로 최소 10개의 타임스탬프가 필요합니다 - ID: OktaLoginFailure.
Matches: client.ipAddress:아홉 - ID: OktaLoginFailure.
ExpectedResult: false false 상관 규칙의 제한 사항 시퀀스가 전환을 사용하는 경우: 허용되는 전환 수는 시퀀스 컬렉션에 포함된 규칙 수보다 하나 적습니다.
이벤트 필드 매칭을 사용하는 경우:
이전
Match.On
의 값은 다음
를 사용하면 상관 규칙의 특이성이 높아집니다.Match.From전환(Transitions)필드에 붙여넣으세요.
과 일치해야 하며
다음
Match.To/와 일치해야 합니다.여러 로그 유형, 예약 규칙 또는 상관 규칙에 연결된 규칙의 경우,Match.To/MatchCriteria.Match차트가 있습니다.의 값은
Match.To/와 일치해야 합니다./MatchCriteria.Match또는에 나열된 필드 중 하나여야 합니다.표준 필드탭은 각 선언된 요약 속성에 대해 상위 다섯 개 속성을 표시합니다.상관 규칙 전체에서 일치시킬 수 있는 필드 유형은 하나뿐입니다. 예를 들어 IP 주소만 일치시킬 수 있거나 이메일 주소만 일치시킬 수 있습니다. 다음 단계의 값이 일치하지 않는 경우를 위해 이벤트 필드 매칭을 사용하는 것은 불가능합니다. 예를 들어 상관 규칙의 한 단계의 IP 주소가 다음 단계의 IP 주소와 일치하지 않을 때 상관 규칙이 통과하도록 하는 것은 불가능합니다..상관 규칙 생성 방법
상관 규칙은 Panther 콘솔에서 또는 로컬에서 작성할 수 있습니다. 상관 규칙을 구성하는 YAML 키에 대한 설명은
를 참조하세요.
사용자 정의 상관 규칙을 생성하는 것 외에도, 다음을 활용할 수 있습니다 상관 규칙 참조.
Panther에서 제공하는 규칙 Panther 관리 상관 규칙이는 리포지토리의 correlation_rules panther-analysis 디렉터리에서 사용할 수 있습니다.
콘솔의 흐름도 시각화 도구 사용하기
Panther 콘솔에서 상관 규칙 작업 중 흐름도 시각화 도구를 사용할 수 있습니다. 이는 YAML로 상관 규칙을 구성하는 동안 규칙을 시각적으로 렌더링하고 UI가 규칙에 대해 즉시 유효성 검사를 제공하도록 합니다.

콘솔에서 YAML로 상관 규칙 생성하기
Panther 콘솔에서 상관 규칙을 생성하려면 탐지 목록 보기에서 탐지를 선택하여 YAML을 생성하거나 직접 YAML을 구성할 수 있습니다.
Panther 콘솔의 왼쪽 탐색 바에서 다음을 클릭합니다 탐지(Detections).
탐지 목록에서 상관 규칙에 포함하려는 각 탐지의 왼쪽에 있는 체크박스를 클릭하세요.
탐지를 클릭한 순서가 생성된 시퀀스 상관 규칙의 순서가 됩니다.
클릭 상관관계.

탐지 생성 페이지에서 상관 규칙 구성을 마치십시오:
이름(Name): 상관 규칙에 대한 설명명을 입력하세요.
ID (선택 사항): 펜 아이콘을 클릭하고 상관 규칙에 대한 고유 ID를 입력하세요.
오른쪽 상단에서 Enabled 토글은 다음으로 설정됩니다
ON기본적으로. 규칙을 비활성화하려면 토글을OFF.아래의 YAML 편집기 탭:
원하면 생성된 상관 규칙을 수정하세요. 규칙은 기본적으로:
입니다
전환(Transitions)상관 규칙의 순서가 됩니다.클릭하여 이것을 변경할 수 있습니다
Group을(를) 클릭하여 규칙을 그룹으로 구성.
자세한 내용은 콘솔에서 시퀀스와 그룹 전환.
다음을 설정합니다
MinMatchCount를1상관 규칙에 포함된 모든 규칙 및 예약 규칙에 대해.내부의
를 사용하면 상관 규칙의 특이성이 높아집니다.에서, 각 전환에 대해Match.To다음으로 설정합니다p_any_usernames.다음을 업데이트할 수 있습니다
Match.To값들이나, 대신에MatchCriteria.Match및와 일치해야 합니다..
다음을 설정합니다
Schedule.RateMinutes를15및Schedule.TimeoutMinutes를2.다음을 설정합니다
조회 창(lookback window):를60.
상관 탐지 YAML 구문에 대한 자세한 정보는 상관 규칙 참조에서 찾을 수 있으며 필수 및 선택 필드 전체 목록을 포함합니다.
아래의 경보 설정 탭:
내부의 기본 탭에서 다음 필드를 구성하세요:
경보 생성: 이
ON/OFF토글은 일치 항목이 있을 때 경보 가 생성되어야 하는지, 또는 단지 신호만 생성되어야 하는지를 나타냅니다,.(해당되는 경우에만 경보 생성 가
ON) 심각도: 다음을 선택하세요 심각도 수준 이 탐지로 인해 생성된 경보에 대해 적용됩니다.(해당되는 경우에만 경보 생성 가
ON) 대상 재정의: 선택적으로 심각도와 무관하게 이 탐지의 경보를 받을 대상을 선택하세요.

(해당되는 경우에만 경보 생성 가
ON) 내부의 컨텍스트 하위 탭에서 선택적으로 다음 필드의 값을 제공하세요:설명: 규칙에 대한 추가 컨텍스트를 입력하세요.
런북: 이 규칙과 관련된 절차와 운영을 입력하세요.
자세한 내용은 경보 런북.
에서 더 알아보세요. 설명적인 런북을 제공하는 것이 권장됩니다, 왜냐하면 Panther AI 경보 분류 가 이를 고려하기 때문입니다.
참조: 이 규칙과 관련된 추가 정보로 연결되는 외부 링크를 입력하세요.
요약 속성: 이 탐지로 인해 생성된 경보에서 보여주고 싶은 속성을 입력하세요.
중첩된 필드를 요약 속성으로 사용하려면 Summary Attribute 필드에서 Snowflake 점 표기법을 사용하여 JSON 객체의 경로를 탐색하세요:
<column>:<level1_element>.<level2_element>.<level3_element>그런 다음 경보 요약은 경보에서 참조된 객체에 대해 생성됩니다. Snowflake에서 반구조화된 데이터를 탐색하는 방법에 대해 자세히 알아보세요.
경보 요약에 대한 자세한 내용은 경보 할당 및 관리.
태그: 규칙을 한눈에 이해하는 데 도움이 되는 사용자 지정 태그를 입력하세요 (예:
HIPAA.)위의 프레임워크 매핑 섹션:
클릭 새로 추가 를 클릭하여 보고서를 입력하세요.
다음 필드에 값을 제공하세요:
보고서 키: 보고서와 관련된 키를 입력하세요.
보고서 값: 해당 보고서의 값을 입력하세요.
아래의 RuleOutputs 탭에서 선택적으로 테스트를 추가하세요:
클릭 + 새 단위 테스트 추가.
이 상관 규칙에 대한 테스트의 기본 코드가 채워집니다.
채워진 텍스트를 필요한 대로 조정하고 테스트의 나머지 부분(특히
일치 항목.코드 편집기 아래에서, 테스트 실행 을 클릭하여 테스트를 평가하세요.

오른쪽 상단에서 배포.
Panther 콘솔의 왼쪽 탐색 바에서 다음을 클릭합니다 빌드 > 탐지(Detections).
클릭 새로 만들기.
다음 상관 규칙 타일, 클릭 시작.
탐지 생성 페이지에서 다음 필드를 채우십시오:
이름(Name): 상관 규칙에 대한 설명명을 입력하세요.
ID (선택 사항): 펜 아이콘을 클릭하고 상관 규칙에 대한 고유 ID를 입력하세요.
오른쪽 상단에서 Enabled 토글은 다음으로 설정됩니다
ON기본적으로. 규칙을 비활성화하려면 토글을OFF.아래의 YAML 편집기 탭에서 상관 규칙을 정의하세요.
기본적으로 상관 규칙은 다음으로 구성됩니다
전환(Transitions)입니다. 이를 다음으로 변경할 수 있습니다Group을(를) 클릭하여 규칙을 그룹으로 구성.
자세한 내용은 콘솔에서 시퀀스와 그룹 전환.상관 탐지 YAML 구문에 대한 자세한 정보는 상관 규칙 참조에서 찾을 수 있으며 필수 및 선택 필드 전체 목록을 포함합니다.
아래의 경보 설정 탭:
내부의 기본 탭에서 다음 필드를 구성하세요:
경보 생성: 이
ON/OFF토글은 일치 항목이 있을 때 경보 가 생성되어야 하는지, 또는 단지 신호만 생성되어야 하는지를 나타냅니다,.(해당되는 경우에만 경보 생성 가
ON) 심각도: 다음을 선택하세요 심각도 수준 이 탐지로 인해 생성된 경보에 대해 적용됩니다.(해당되는 경우에만 경보 생성 가
ON) 대상 재정의: 선택적으로 심각도와 무관하게 이 탐지의 경보를 받을 대상을 선택하세요.

(해당되는 경우에만 경보 생성 가
ON) 내부의 컨텍스트 하위 탭에서 선택적으로 다음 필드의 값을 제공하세요:설명: 규칙에 대한 추가 컨텍스트를 입력하세요.
런북: 이 규칙과 관련된 절차와 운영을 입력하세요.
자세한 내용은 경보 런북.
에서 더 알아보세요. 설명적인 런북을 제공하는 것이 권장됩니다, 왜냐하면 Panther AI 경보 분류 가 이를 고려하기 때문입니다.
참조: 이 규칙과 관련된 추가 정보로 연결되는 외부 링크를 입력하세요.
요약 속성: 이 탐지로 인해 생성된 경보에서 보여주고 싶은 속성을 입력하세요.
중첩된 필드를 요약 속성으로 사용하려면 Summary Attribute 필드에서 Snowflake 점 표기법을 사용하여 JSON 객체의 경로를 탐색하세요:
<column>:<level1_element>.<level2_element>.<level3_element>그런 다음 경보 요약은 경보에서 참조된 객체에 대해 생성됩니다. Snowflake에서 반구조화된 데이터를 탐색하는 방법에 대해 자세히 알아보세요.
경보 요약에 대한 자세한 내용은 경보 할당 및 관리.
태그: 규칙을 한눈에 이해하는 데 도움이 되는 사용자 지정 태그를 입력하세요 (예:
HIPAA.)위의 프레임워크 매핑 섹션:
클릭 새로 추가 를 클릭하여 보고서를 입력하세요.
다음 필드에 값을 제공하세요:
보고서 키: 보고서와 관련된 키를 입력하세요.
보고서 값: 해당 보고서의 값을 입력하세요.
아래의 RuleOutputs 탭에서 선택적으로 테스트를 추가하세요:
클릭 + 새 단위 테스트 추가.
이 상관 규칙에 대한 테스트의 기본 코드가 채워집니다.
채워진 텍스트를 필요한 대로 조정하고 테스트의 나머지 부분(특히
일치 항목.코드 편집기 아래에서, 테스트 실행 을 클릭하여 테스트를 평가하세요.

오른쪽 상단에서 배포.
콘솔에서 시퀀스와 그룹 전환
시퀀스를 그룹으로, 또는 그 반대로 전환하려면 콘솔의 규칙을 그룹/시퀀스로 구성 버튼을 사용하세요, YAML 편집기 패널의 오른쪽 상단에 있습니다.
상관 규칙이 이미 시퀀스이고 당신이 클릭하면 규칙을 그룹으로 구성:
를 입력하세요
전환(Transitions)키는 다음으로 변경됩니다Group.를 입력하세요
를 사용하면 상관 규칙의 특이성이 높아집니다.섹션이 제거됩니다.A
MatchCriteria섹션이 추가됩니다.이전에
MatchCriteria섹션을 편집한 적이 있다면 해당 버전이 추가됩니다. 그렇지 않으면 기본MatchCriteria섹션이 제공됩니다.
상관 규칙이 이미 그룹이고 당신이 클릭하면 규칙을 시퀀스로 구성:
를 입력하세요
Group키는 다음으로 변경됩니다전환(Transitions).를 입력하세요
MatchCriteria섹션이 제거됩니다.A
를 사용하면 상관 규칙의 특이성이 높아집니다.섹션이 추가됩니다.이전에
를 사용하면 상관 규칙의 특이성이 높아집니다.섹션을 편집한 적이 있다면 해당 버전이 추가됩니다. 그렇지 않으면 기본를 사용하면 상관 규칙의 특이성이 높아집니다.섹션이 제공됩니다.
CLI 워크플로우에서 YAML로 상관 규칙 생성
상관 규칙 전체 예시
유출된 GitHub 자격증명 탐지
이 Discovering.Exfiltrated.Credentials 상관 규칙은 마지막 10분 동안 신호만 생성되어야 하는지를 나타냅니다, 가 있었는지 확인하기 위해 10분마다 확인합니다 AWS.CloudTrail.IaaS 규칙(아래 두 번째 탭에 정의됨) 찾아지지 다음으로 이어지는 신호가 있었는지 GitHub.CICD 규칙(아래 세 번째 탭에 정의됨).

AWS 루트 로그인으로의 Okta 무차별 대입 로그인
이 Brute.Force.Login 상관 규칙은 30분마다 다음이 있었는지 확인합니다 신호만 생성되어야 하는지를 나타냅니다, 가 있었는지 확인하기 위해 10분마다 확인합니다 시퀀스의 순서는 규칙 다음에 신호가 있었는지 Standard.BruteForceByIP로부터 최소 일곱 개의 시그널이 있을 때 두 번째 탭에 정의된 규칙 다음에 신호가 있었는지 시퀀스 상관 규칙 추가 시간 프레임 및 이벤트 IP 값 일치 요구사항이 있습니다.

후속 보관 없이 리포지토리 보안 정책이 비활성화된 GitHub 저장소
이 Github.Repo.Security.Policy.Disabled.Without.Archival 상관 규칙은 마지막 10분 동안 신호만 생성되어야 하는지를 나타냅니다, 가 있었는지 확인하기 위해 10분마다 확인합니다 GitHub.Advanced.Security.Change 규칙 찾아지지 다음으로 이어지는 신호가 있었는지 GitHub.Repo.Archived 규칙(아래 두 번째 탭에 정의됨)이며 또한 지난 10분 내에 이벤트 필드의 p_alert_context.repo 값과 일치하는 값이 있는 경우입니다.

상관 규칙 효율화하기
상관 규칙은 복잡한 패턴 인식을 사용하므로 계산 비용이 많이 들 수 있습니다. 상관 규칙과 관련된 Snowflake 비용을 줄이려면 다음 지침을 염두에 두세요.
상관 규칙을 가능한 한 적게 실행하세요
상관 규칙이 얼마나 자주 실행되는지는 해당 규칙의 Schedule 값에 의해 결정되며 비용에 큰 영향을 줄 수 있습니다. 따라서 상관 규칙이 필요 이상으로 자주 실행되지 않도록 하는 것이 권장됩니다(탐지 요구를 충족하는 범위 내에서 — 자세한 내용은 설정 Schedule을(를) 위를 참조하세요,이 필드를 구성할 때 고려사항).
상관 규칙의 실행 빈도와 비용 간 관계를 생각할 때의 일반적인 지침은: 상관 규칙이 실행되는 간격을 두 배로 늘릴 때마다(예: RateMinutes) 발생하는 비용은 절반으로 줄어든다는 것입니다.
다음으로 설정 조회 창(lookback window): 을(를) 가능한 한 낮게 설정하세요
조회 창(lookback window): 을(를) 가능한 한 낮게 설정하세요상관 규칙이 처리하는 데이터 양은 주로 그 규칙의 조회 창(lookback window): 값에 의해 정의되며 이 데이터 양은 규칙의 처리 시간과 결과 비용에 큰 영향을 미칩니다. 따라서 상관 규칙이 처리하는 데이터 양을 줄이기 위해 해당 규칙의 조회 창(lookback window): 값을 가능한 한 낮게 설정하는 것이 권장됩니다(탐지 요구를 충족하는 범위 내에서 — 자세한 내용은 설정 조회 창(lookback window):을(를) 위를 참조하세요,이 필드를 구성할 때 고려사항).
예를 들어, 두 규칙이 각각 10분 이내에 신호를 생성했는지 식별하고 싶다고 가정해 보겠습니다 ( WithinTimeFrameMinutes를 사용). 조회 창(lookback window): 을(를) 정확히 10 로 설정하는 것은 권장되지 않지만, 안전하게 15.
만큼 낮은 값을 사용할 수 있습니다
일치 필드는 가능한 한 낮은 카디널리티를 가진 것을 선택하세요
일치 필드의 카디널리티는 상관 규칙 비용과 정(+)의 상관관계가 있습니다. 상관 규칙이 이벤트 값 일치를 사용할 경우, 어떤 필드를 일치시킬지 선택할 때 더 낮은 카디널리티를 가진 필드를 사용하는 것이 권장됩니다.
일치 필드의 카디널리티는 다음을 포함한 몇 가지 요인에 의해 영향을 받을 수 있습니다:
필드가 가질 수 있는 가능한 값의 수 — 가능한 값이 많을수록 카디널리티가 높아집니다.
예를 들어, 만약field_a가 세 가지 가능한 값 중 하나를 가질 수 있다면(예:,"yellow"또는"red""blue"), 그러나field_b는 항상 두 가지 값 중 하나만 가질 수 있다면(예:또는"purple"),), 그러나"green"예를 들어, 만약.
는
보다 카디널리티가 낮습니다.또는필드의 데이터 유형 — 일반적으로 비스칼라 데이터 유형(즉,배열객체,)을 가진 필드는 스칼라 데이터 유형(즉,또는문자열).불리언
email및숫자)을 가진 필드보다 더 높은 카디널리티를 갖습니다.숫자예를 들어, 로그 스키마가usernamep_any_usernames필드를보다 카디널리티가 낮습니다.(예:지표로 지정하여 해당필드가 둘 다를 포함하도록 한다면p_any_usernamesp_any_usernames: ["Bob Smith", "[email protected]"]email), 그객체필드는 단일 값을 가지는 타입을 가진 필드보다 카디널리티가 더 높을 것입니다.
Last updated
Was this helpful?

