For the complete documentation index, see llms.txt. This page is also available as Markdown.

표준 필드

Panther의 로그 분석은 모든 로그 레코드에 정규화 필드를 적용합니다

Panther의 로그 분석은 모든 로그 레코드에 정규화 필드(IP, 도메인 등)를 적용합니다. 이러한 필드는 모든 데이터 소스에서 속성에 대한 표준 이름을 제공하여 빠르고 쉽게 데이터 상관 분석을 가능하게 합니다.

예를 들어, 각 데이터 소스에는 이벤트가 발생한 시간이 있지만, 각 데이터 소스가 해당 속성에 동일한 이름을 사용할 가능성은 낮으며, 연결된 시간이 다른 데이터 소스와 일관된 시간대를 가진다고 보장되지도 않습니다.

Panther의 p_event_time 속성은 각 데이터 소스의 해당 이벤트 시간에 매핑되며 UTC로 정규화됩니다. 이는 여러 데이터 소스를 쿼리하는 동안 p_event_time, 각 데이터 소스의 이질적인 스키마에도 불구하고 조인하고 정렬할 수 있음을 의미합니다.

모든 추가 표준 필드는 다음으로 시작합니다 p_.

필수 필드

아래 필드들은 모든 로그 레코드에 추가됩니다:

필드 이름

유형

설명

p_log_type

string

로그의 유형입니다.

p_row_id

string

행의 고유 id(UUID)입니다.

p_event_time

timestamp

이곳에는 로그 유형에 대한 관련 이벤트 시간이 복사되어 UTC로 정규화됩니다. 형식: YYYY-MM-DD HH:MM:SS.fff

p_parse_time

timestamp

이벤트가 파싱된 현재 시간으로, UTC로 정규화됩니다. 형식: YYYY-MM-DD HH:MM:SS.fff

p_schema_version

정수

이 행에 사용된 스키마의 버전입니다.

p_source_id

string

소스 통합에 대해 Panther가 생성한 내부 id입니다.

p_source_label

string

소스 통합에 대해 사용자가 제공한 레이블입니다(수정 시 변경될 수 있음).

p_source_file

object

S3 소스에서만 사용할 수 있으며, 이 필드에는 버킷 이름과 객체 키를 포함하여 이 이벤트가 발생한 파일의 메타데이터가 들어 있습니다.

p_header

object

다음 경우에는 봉투 메타데이터를 포함합니다 봉투 필드 유지 에 대해 사용하도록 설정되어 있으면 CloudWatch 로그 소스. 로그 그룹, 로그 스트림, 소유 계정, 구독 필터와 같은 정보를 포함합니다.

이벤트에 타임스탬프가 없으면 p_event_time 가 다음으로 설정됩니다 p_parse_time, 즉 이벤트가 파싱된 시간입니다.

다음 p_source_idp_source_label 필드는 데이터의 출처를 나타냅니다. 예를 들어 Panther에 등록된 여러 CloudTrail 소스를 각각 고유한 이름(예: "Dev Accounts", "Production Accounts", "HR Accounts" 등)으로 가질 수 있습니다. 이러한 필드를 사용하면 소스별로 데이터를 구분할 수 있으며, 이는 Panther에서 탐지를 구성할 때 유용합니다.

또한 아래 필드들은 panther_룰_matches 데이터베이스의 모든 테이블에 있는 로그 레코드에 추가됩니다:

panther_룰_matches의 필드 이름

유형

설명

p_알러트_id

string

행과 관련된 알러트의 id입니다.

p_알러트_creation_time

timestamp

행과 관련된 알러트 생성 시간입니다.

p_알러트_context

object

룰의 알러트_context() 함수에서 반환된 JSON 객체입니다.

p_알러트_severity

string

알러트 시점의 룰 심각도 수준입니다. 이는 동적으로 설정할 수 있으므로 기본 심각도와 다를 수 있습니다.

p_알러트_update_time

timestamp

행과 관련된 마지막 알러트 업데이트 시간입니다.

p_룰_id

string

알러트를 생성한 룰의 id입니다.

p_룰_error

string

룰 실행 중 오류가 있었다면 오류 메시지입니다.

p_룰_reports

map[string]array[string]

행과 관련된 사용자가 정의한 룰 보고 태그 목록입니다.

p_룰_severity

string

룰의 기본 심각도입니다.

p_룰_tags

array[string]

행과 관련된 사용자가 정의한 룰 태그 목록입니다.

지표 필드

흔한 보안 질문 중 하나는 “어떤 지표가 어떤 지표가 우리 로그의 아무 곳에서나 관찰된 적이 있는가?”입니다. Panther의 어떤 도구를 사용하면 Search 모든 다양한 로그 소스의 데이터를 검색하여 그 답을 찾을 수 있습니다.

로그 이벤트가 수집되면, 지표 필드 해당 스키마의 p_any_ 어떤 필드의 값이 추출되어야 하는지를 식별합니다 p_any_ 필드로, 이벤트에 추가되어 함께 저장됩니다. 아래 표는 어떤 지표. 모든 p_any_ 필드는 목록입니다.

사용자 지정 스키마를 구성할 때, 아래 표의 Indicator Name 열에 있는 값을 스키마의 지표 필드에 사용할 수 있습니다. 각 행은(다음을 제외하고 hostname, net_addr, 그리고 url) 는 Search.

아래 표에 있는 필드 외부의 필드 이름/값 쌍은 Search의 키/값 필터 표현식 기능으로 검색할 수 있지만—해당 필드들은 서로 다른 로그 소스에서 서로 다른 구문을 가진 대응 항목으로 매핑되지 않았기 때문에, 검색된 정확한 필드 이름을 포함하는 로그 소스의 일치 항목만 반환됩니다.

스키마에서 필드를 지표로 지정하려면, 해당 필드는 type이어야 합니다 string.

지표 이름
추출되는 필드
설명

actor_id

p_any_actor_ids

값을 p_any_actor_ids에 추가합니다.

aws_account_id

p_any_aws_account_ids

값이 유효한 AWS 계정 id이면 p_any_aws_account_ids에 추가합니다.

aws_arn

p_any_aws_arns, p_any_aws_instance_ids, p_any_aws_account_ids, p_any_emails

값이 유효한 AWS ARN이면 p_any_aws_arns에 추가합니다. ARN에 AWS 계정 id가 포함되어 있으면 추출하여 p_any_aws_account_ids에 추가합니다. ARN에 EC2 인스턴스 id가 포함되어 있으면 추출하여 p_any_aws_instance_ids에 추가합니다. ARN이 AWS STS Assume Role을 참조하고 이메일 주소를 포함하면 이메일 주소를 추출하여 p_any_emails에 넣습니다.

aws_instance_id

p_any_aws_instance_ids

값이 유효한 AWS instance id이면 p_any_aws_instance_ids에 추가합니다.

aws_tag

p_any_aws_tags

값을 p_any_aws_tags에 추가합니다.

cve

p_any_cves

정규식과 일치하는 값을 추출합니다 ^[Cc][Vv][Ee]-\d{4}-\d+$ 그리고 p_any_cves에 추가합니다

domain

p_any_domain_names

값을 p_any_domain_names에 추가합니다.

email

p_any_emails

값이 유효한 이메일 주소이면 값을 p_any_emails에 추가합니다. 값의 앞부분은 @ p_any_usernames에도 채워집니다

hostname

p_any_domain_names, p_any_ip_addresses

값을 p_any_domain_names에 추가합니다. 값이 유효한 ipv4 또는 ipv6 주소이면 p_any_ip_addresses에 추가합니다.

ip

p_any_ip_addresses

값이 유효한 ipv4 또는 ipv6 주소이면 p_any_ip_addresses에 추가합니다.

mac

p_any_mac_addresses

값이 유효한 IEEE 802 MAC-48, EUI-48, EUI-64, 또는 20옥텟 IP over InfiniBand 링크 계층 주소이면 p_any_mac_addresses에 추가합니다.

md5

p_any_md5_hashes

값이 유효한 md5이면 값을 p_any_md5_hashes에 추가합니다.

mitre_attack_technique

p_any_mitre_attack_techniques

정규식과 일치하는 값을 추출합니다 \b[Tt]\d{4}(?:\.\d{3})?\b 그리고 p_any_mitre_attack_techniques에 추가합니다. 예를 들어, 필드 값이 "Technique: T1234"이면, p_any_mitre_attack_techniques의 값은 ["T1234"]

net_addr

p_any_domain_names, p_any_ip_addresses

형식의 값에서 추출합니다 <host>:<port> 그리고 호스트 부분을 p_any_domain_names에 추가합니다. 호스트 부분이 유효한 ipv4 또는 ipv6 주소이면 p_any_ip_addresses에 추가합니다.

serial_number

p_any_serial_numbers

값을 p_any_serial_numbers에 추가합니다.

sha1

p_any_sha1_hashes

값이 유효한 sha1이면 p_any_sha1_hashes에 추가합니다.

sha256

p_any_sha256_hashes

값이 유효한 sha256이면 p_any_sha256_hashes에 추가합니다.

trace_id

p_any_trace_ids

값을 p_any_trace_ids에 추가합니다. 세션 id와 문서 id와 같은 태그 필드는 관련 이벤트의 전체 활동을 추적하기 위해 요소를 다른 로그와 연결하는 데 사용됩니다.

url

p_any_domain_names, p_any_ip_addresses

url을 구문 분석하여 "http://" 또는 "https://" 뒤의 호스트 부분을 추출합니다.

호스트 부분을 p_any_domain_names에 추가합니다. 호스트 부분이 유효한 ipv4 또는 ipv6 주소이면 p_any_ip_addresses에 추가합니다.

username

p_any_usernames

값을 p_any_usernames에 추가합니다. 이 필드에는 다음으로 표시된 값도 채워집니다 email 지표. 이메일 값의 앞부분은 @ 이 필드에 추가됩니다.

보강 필드

Panther 룰 엔진은 다음에서 조회된 일치 항목을 가져와 룩업 테이블 그 데이터를 키를 사용하여 이벤트에 추가합니다 p_enrichment 다음 JSON 구조에서:

보강 필드 이름
유형
보강 필드 설명

p_enrichment

object

일치하는 행이 발견된 조회 결과 사전입니다.

p_match

string

p_match 는 ... 내의 각 일치 행의 데이터에 주입됩니다 p_enrichment. 해당 값은 이벤트에서 일치한 값입니다.

"all_logs" 보기

Panther는 표준 필드가 포함된 모든 데이터 소스에 대한 보기를 관리합니다.

이를 통해 다음과 같은 질문에 답할 수 있습니다. "활동이 어떤 에서의 some-bad-ip, 있다면 어디에서였는가?"

아래 쿼리는 로그 유형별로 IP 주소와 관련된 레코드 수를 보여줍니다 95.123.145.92:

이 결과를 바탕으로, 활동이 표시되는 특정 로그로 드릴다운할 수 있습니다.

탐지에서의 표준 필드

Panther 표준 필드는 탐지에서 사용할 수 있습니다.

예를 들어, 아래 Python 룰은 GuardDuty 알러트가 다음으로 태그된 리소스에서 발생할 때 트리거됩니다 심각:

마지막 업데이트

도움이 되었나요?