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

PantherFlow 모범 사례

PantherFlow 쿼리 최적화

개요

PantherFlow는 Panther 버전 1.110부터 공개 베타로 제공되며, 모든 고객이 사용할 수 있습니다. 버그 보고와 기능 요청은 Panther 지원팀에 공유해 주세요.

PantherFlow 쿼리 결과를 가능한 한 빨리 반환하고(검색으로 인해 발생하는 데이터 레이크 비용을 최소화하고), 아래 모범 사례를 따르는 것이 권장됩니다.

적용한 후에도 쿼리가 여전히 느리게 실행된다면:

  • 쿼리의 시간 범위를 줄이세요.

  • 쿼리가 완료되면 반환된 행 수를 확인해 얼마나 많은 데이터를 조회하고 있는지 파악하세요. 양이 많다면 시간이 걸리는 것이 예상됩니다.

  • 추가 도움이 필요하면 Panther 지원팀에 문의하세요.

일반 PantherFlow 모범 사례

다음 limit 연산자

다음 limit 연산자 를 사용해 쿼리가 반환할 최대 레코드 수를 지정하세요.

예: panther_logs.public.aws_alb | limit 100

시간 범위 필터 사용

다음 where 연산자 를 사용해 시간 범위로 필터링하세요(아마도 p_event_time을 기준으로). 시간 범위 필터가 있는 쿼리는 더 적은 마이크로 파티션에 접근하므로 결과를 더 빨리 반환합니다.

예: panther_logs.public.aws_alb | where p_event_time > time.ago(1d)

에 대해 자세히 알아보기 에서 사용 가능한 시간 함수.

사용 p_any 필드

로그 수집 중 Panther는 일반적인 보안 지표를 p_any 필드에 추출하며, 이를 통해 모든 데이터 소스에서 속성 이름이 표준화됩니다. 해당 p_any 필드는 최적화된 열에 저장됩니다. 여러 로그 유형에 대해 서로 다른 이름의 필드보다 p_any 필드를 쿼리하는 것이 권장됩니다.

에서 자세히 알아보기 표준 필드.

예: panther_logs.public.aws_alb | '10.0.0.0' in p_any_ip_addresses

다음 project 연산자

가 없는 쿼리는 project 연산자 모든 열을 가져오므로 쿼리가 느려질 수 있습니다. 가능하면 project 을 사용해 조사에 필요한 필드만 쿼리하세요.

예: panther_logs.public.aws_alb | project targetIp, targetPort

결과 요약

요약은 전체 로그 레코드를 가져오는 쿼리보다 더 빠르게 실행됩니다. 긴 기간의 로그를 조사할 때나, 조사 중인 시간 범위에 데이터 볼륨이 얼마나 있는지 모를 때 특히 유용합니다.

전체 데이터 세트를 쿼리하는 대신 summarize 연산자를 사용하세요. 그러면 더 빠르게 실행되며 다음에 조회할 더 좁은 시간 범위를 파악하는 데 도움이 됩니다.

예: panther_logs.public.aws_alb | summarize count=agg.count() by targetIp

에 대해 자세히 알아보기 에서 사용 가능한 집계 함수.

다음으로 데이터 필터링 where

다음이 있는 절을 사용해 데이터 필터링 where 같은 비용이 큰 작업을 수행하기 전에 summarize 또는 join보다 먼저 필터링하세요.

예:

search 연산자 는 속도를 저하시킬 수 있으며, 필요한 경우가 아니면 피해야 합니다. 검색하려는 텍스트가 포함되어 있을 수 있는 열이 어떤 것인지 알고 있다면, 지정한 데이터베이스/테이블의 모든 열을 다음으로 검색하는 대신 search, 다음을 사용하세요. where 다음과 함께 strings.contains().

예:

  • 대신: | search 'alice'

  • 다음 사용: | where strings.contains(name, 'alice')

PantherFlow에서 모든 로그를 가장 잘 검색하는 방법

PantherFlow에서 모든 로그를 검색하려면 다음을 사용하세요. union 연산자:

추가 최적화 union 가 계획되어 있습니다.

검색하려는 값이 어떤 열에 나타나야 하는지 알고 있다면(예를 들어 지표 검색을 수행하는 경우— p_any 필드에서 침해 지표(IoC)를 검색하는 경우), union panther_logs.public.* 검색을 최적화할 수 있습니다. 관련된 열에만 IoC를 검색하도록 projectwhere 필터를 추가하세요:

Panther에서 다음을 사용해 지표 검색을 수행할 수도 있습니다:

마지막 업데이트

도움이 되었나요?