# 온보딩 가이드

## 개요

Panther에서의 온보딩에는 로그 소스, 탐지, 알러트 대상 설정은 물론 검색 도구에 익숙해지는 것과 선택적으로 강화 기능을 활성화하는 작업이 포함됩니다. 이 가이드는 이러한 각 작업을 완료하는 방법을 설명합니다.

온보딩 중 도움이 필요하시면 Panther 지원 팀에 문의해 주세요.

## 사전 요구 사항

* Panther 콘솔에 성공적으로 로그인했습니다.

## 1단계: 로그 소스 온보드

Panther 환경을 구성하는 첫 번째 단계는 Panther가 분석하고 저장할 수 있도록 데이터를 제공하는 로그 소스를 온보드하는 것입니다. 가치 있는 소스를 식별한 뒤 각 소스를 온보드하게 됩니다.

### 1.1단계: 온보드할 로그 소스 식별

보안 모니터링을 위해 환경에서 로그를 생성하는 시스템 중 모니터링하고 싶은 것들을 고려해 보세요. 허용된 수집 볼륨에 최대한 근접할 수 있도록 충분한 수의 소스를 온보드하는 것이 권장됩니다. 다음을 사용할 수 있습니다. [로그 필터링](https://docs.panther.com/ko/data-onboarding/ingestion-filters) 다음과 같은 경우에만 *일부* 특정 소스의 로그만 Panther로 수집하고 싶다면.

시작할 곳에 대한 아이디어가 필요하다면 [지원되는 로그](https://docs.panther.com/ko/data-onboarding/supported-logs) 목록을 검토하세요. 또한 완전히 [사용자 지정 소스](https://docs.panther.com/data-onboarding/custom-log-types).

### 1.2단계: 각 로그 소스 온보드

수집하고자 한다고 식별한 각 로그 소스에 대해:

* 로그 소스가 Panther의 [지원되는 소스](#supported-logs)중 하나라면, 해당 문서 페이지의 지침에 따라 온보드하세요.
* 로그 소스가 Panther의 [지원되는 소스](#supported-logs):

{% hint style="info" %}
소스가 대용량(시간당 최소 1GB 이상을 생성)이고/또는 [페이로드 크기가 HTTP 페이로드 제한을 초과한다면](https://docs.panther.com/ko/data-onboarding/data-transports/http#payload-requirements)다음 단계로 건너뛰세요.
{% endhint %}

1. 소스가 이벤트 웹훅을 전송할 수 있다면:
   1. 다음 지침에 따라 소스를 온보드하세요. [HTTP 소스 생성 지침](https://docs.panther.com/ko/data-onboarding/data-transports/http#how-to-set-up-an-http-log-source-in-panther).
   2. 다음을 따르세요 [Panther에서 수신한 HTTP 데이터로부터 사용자 지정 스키마를 추론하는 지침](https://docs.panther.com/ko/data-onboarding/custom-log-types#http-data-received-in-panther).
2. 소스가 이벤트 웹훅을 전송할 수는 없지만 S3 버킷으로 이벤트를 내보낼 수 있다면:
   1. 다음 지침에 따라 소스를 온보드하세요. [S3 소스 생성 지침](https://docs.panther.com/ko/data-onboarding/data-transports/aws/s3#how-to-pull-logs-from-aws-s3-buckets-into-panther).
   2. 다음 중 한 가지 방법으로 사용자 지정 스키마를 추론하는 지침을 따르세요:
      * [Panther에서 수신한 S3 데이터에서](https://docs.panther.com/ko/data-onboarding/custom-log-types#s3-data-received-in-panther)
      * [과거 S3 데이터에서](https://docs.panther.com/ko/data-onboarding/custom-log-types#historical-s3-data)
3. 소스가 이벤트 웹훅을 전송할 수도 없고 S3 버킷으로 이벤트를 내보낼 수도 없지만, 다른 Panther [데이터 전송](https://docs.panther.com/ko/data-onboarding/data-transports) 중 Panther가 가져올 수 있는 위치로 이벤트를 내보낼 수 있다면, 예: [Google Cloud Storage](https://docs.panther.com/ko/data-onboarding/data-transports/google) 또는 [Azure Blob Storage](https://docs.panther.com/ko/data-onboarding/data-transports/azure/blob-storage):
   1. 다음 방법 중 하나로 사용자 지정 스키마를 정의하세요:
      * [콘솔의 샘플 로그에서 추론하기](https://docs.panther.com/ko/data-onboarding/custom-log-types#sample-logs)
      * [pantherlog를 사용해 추론하기 `추론`](https://docs.panther.com/ko/panther/pantherlog#infer-generate-a-schema-from-json-log-samples)
      * [콘솔에서 수동으로 생성하기](https://docs.panther.com/ko/data-onboarding/custom-log-types#manually)
   2. 선택한 데이터 전송 수단에 대한 [문서의 지침에 따라 소스를 온보드하세요.](https://docs.panther.com/ko/data-onboarding/data-transports).
4. 소스가 이벤트 웹훅을 전송할 수도 없고 Panther의 어떤 [데이터 전송](https://docs.panther.com/ko/data-onboarding/data-transports) 소스에도 이벤트를 내보낼 수 없다면, Panther의 [데이터 파이프라인 도구](https://docs.panther.com/ko/data-onboarding/data-pipeline-tools) 가이드를 참조하거나 Panther 지원 팀에 문의하여 데이터를 Panther에 연결하는 데 도움을 받으세요.

이 1.2단계 지침은 아래 흐름도에도 표시되어 있습니다:

<div data-full-width="false"><figure><img src="https://2400888838-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-8d3139a28caac4ea5532c3e83dfddcf4af5bd265%2F10.18.23_log_source_onboarding_flowchart.png?alt=media" alt="This flow chart diagram shows how to onboard a given log source depending on characteristics of the source, like whether it can emit webhook events or export events to S3."><figcaption></figcaption></figure></div>

### (선택 사항) 1.3단계: 클라우드 보안 스캐닝을 위한 AWS 계정 온보드

AWS를 클라우드 제공업체로 사용하는 경우 Panther의 [Cloud Security Scanning](https://docs.panther.com/ko/cloud-scanning) 기능을 사용하여 클라우드 리소스의 구성을 모니터링할 수 있습니다.

* Cloud Security Scanning을 사용하려면 [다음 지침을 따라 하나 이상의 AWS 계정을 온보딩하세요](https://docs.panther.com/ko/cloud-scanning#onboarding-a-cloud-account-in-the-panther-console).

{% hint style="info" %}
**로그 소스: 더 자세히 알아보기**

* 다음 방법을 알아보세요 [로그 소스의 상태를 모니터링합니다](https://docs.panther.com/ko/data-onboarding/monitoring-log-sources).
* 다음에 대해 알아보기 [필드 디스커버리](https://docs.panther.com/ko/data-onboarding/field-discovery).
* 만약 다음을 만든 적이 있다면 [사용자 지정 스키마](https://docs.panther.com/ko/data-onboarding/custom-log-types#how-to-define-a-custom-schema), 필드를 다음으로 지정하세요 [인디케이터 필드](https://docs.panther.com/ko/search/panther-fields#indicator-fields) 를 사용하여 로그 간 검색과 디택션을 활성화합니다.
  {% endhint %}

## 2단계: 디택션 생성 또는 활성화

데이터가 Panther로 흘러 들어오기 시작했으니 이제 디택션을 구성할 차례입니다. 먼저 Panther Console에서 디택션 콘텐츠를 관리할지, 아니면 CLI 워크플로를 사용할지 선택합니다. 그런 다음 각 소스마다 Panther가 관리하는 디택션을 활성화하거나 직접 만듭니다.

디택션을 생성하거나 활성화한 후에는 일치 항목에 대한 알러트가 Panther Console에 표시되고 Panther API를 통해 조회할 수 있지만, [다음 단계](#step-3-configure-alert-destinations)를 완료하여 알러트 대상지를 설정하기 전까지는 외부 애플리케이션에서 알러트를 받지 않습니다.

### 2.1단계: 디택션 관리를 위해 Console 또는 CLI 워크플로 선택

디택션 콘텐츠를 Panther Console에서 관리할지, 아니면 CLI 워크플로에서 관리할지 결정합니다( [Panther Analysis Tool \[PAT\]](https://docs.panther.com/ko/panther/detections-repo/pat)를 사용하여 업로드를 수행할 수도 있습니다 [CI/CD](https://docs.panther.com/ko/panther/detections-repo/ci-cd) 파이프라인). 디택션 콘텐츠에는 디택션 팩과 개별 디택션(규칙, 예약 규칙, 정책)뿐만 아니라 데이터 모델, 전역 헬퍼, 조회 테이블, 저장된 검색, 예약 검색이 포함됩니다. Console과 CLI 워크플로를 모두 사용하여 디택션 콘텐츠를 관리하는 것은 지원되지 않습니다.

팀이 git, 명령줄 도구, CI/CD 파이프라인 사용에 익숙하다면 CLI 워크플로를 사용하는 것을 선택할 수 있습니다. 그렇지 않다면 Panther Console을 사용하는 것이 좋습니다.

{% hint style="info" %}
Panther의 [Simple 디택션](https://docs.panther.com/ko/detections#simple-detections) 기능은 궁극적으로 Console과 CLI 워크플로를 통합하는 것을 목표로 합니다. 현재 팀이 CLI 워크플로를 사용하여 디택션 콘텐츠를 관리하는 경우, [Simple 디택션 빌더](https://docs.panther.com/ko/detections/rules/simple-detection-builder) 를 사용해 Console에서 디택션에 가한 변경 사항은 다음 업로드 시에도 덮어써집니다(단, [인라인 필터](https://docs.panther.com/ko/detections/rules/inline-filters) 콘솔에서 생성된 것은 유지됩니다).
{% endhint %}

### 2.2단계: 각 로그 소스에 대한 규칙 및 예약 규칙 생성 또는 활성화

이전 단계에서 Panther에 온보딩한 각 로그 소스마다 Panther가 관리하는 디택션을 활성화하거나 직접 만듭니다. 소스가 Panther의 [지원되는 로그](https://docs.panther.com/ko/data-onboarding/supported-logs)중 하나라면 [아래의 지원되는 로그 섹션](#supported-logs)을 따르세요. 그렇지 않다면 [사용자 지정 로그 섹션](#custom-logs).

#### 지원되는 로그

* 소스가 Panther의 [지원되는 로그](https://docs.panther.com/ko/data-onboarding/supported-logs):
  * 인 경우 해당 소스에 대해 Panther가 관리하는 디택션 팩을 활성화하세요. Panther Console과 CLI 워크플로에서 디택션 팩을 활성화하는 방법은 아래 지침을 참조하세요.
  * 온보딩 중(마지막 "Success!" 페이지에서) 이 로그 소스에 대한 디택션 팩을 이미 활성화했다면 다음 로그 소스로 이동하세요.

{% tabs %}
{% tab title="Console" %}
**Console에서 Panther가 관리하는 디택션 팩 활성화**

* 다음을 따르세요 [Panther가 관리하는 디택션 팩을 활성화하려면 이 지침을 따르세요](https://docs.panther.com/detections/panther-managed/packs#enabling-and-disabling-detection-packs) 해당 소스에 대해.

더 자세히 알아보기:

* 알아보기 [Panther가 관리하는 디택션을 사용자 지정하는 방법](https://docs.panther.com/ko/detections/panther-managed#how-to-customize-a-panther-managed-detection).
* 이 소스에 대한 추가 사용자 지정 디택션을 만듭니다.
  {% endtab %}

{% tab title="CLI" %}
**CLI 워크플로에서 Panther가 관리하는 디택션 팩 활성화**

1. 아직 하지 않았다면 [이 지침을 따르세요](https://docs.panther.com/panther-developer-workflows/ci-cd/detections-repo) 복제하거나 포크하려면 [panther-analysis 리포지토리](https://github.com/panther-labs/panther-analysis/tree/master) 디택션의.
2. 다음 [panther-analysis 리포지토리 사본의 룰 디렉터리](https://github.com/panther-labs/panther-analysis/tree/master/rules), Panther에서 관리하는 룰과 (있을 수도 있는) 예약된 룰이 포함된 이 소스의 디렉터리를 찾으세요.
3. 활성화하려는 각 Panther 관리형 룰 및 예약된 룰에 대해, 해당 디택션의 YAML 파일에서 다음을 설정하세요:

   ```yaml
   Enabled: True
   ```
4. 소스의 디렉터리에 활성화하지 않으려는 룰 또는 예약된 룰이 있다면, 해당 디택션의 YAML 파일에서 다음을 설정하세요:

   ```yaml
   Enabled: False
   ```
5. 다음을 사용하여 디택션을 Panther에 수동으로 업로드하세요 [PAT](https://docs.panther.com/ko/panther/detections-repo/pat)또는 [CI/CD 파이프라인 구성](https://docs.panther.com/ko/panther/detections-repo/ci-cd) PAT로 디택션 콘텐츠를 업로드하도록.

더 자세히 알아보기:

* 이 소스에 대한 추가 사용자 지정 디택션을 만듭니다.
  {% endtab %}
  {% endtabs %}

#### 사용자 지정 로그

* 소스가 사용자 지정 로그 소스인 경우:
  * 직접 디택션을 만드세요. Panther Console 및 CLI 워크플로에서 디택션을 만드는 방법은 아래 지침을 참조하세요. 디택션을 만드는 동안:
    * Panther 관리형 [헬퍼 함수](https://docs.panther.com/ko/detections/rules/python/globals), 또는 직접 만드는 것을 고려하세요.
    * 생성 [테스트](https://docs.panther.com/ko/detections/testing).

{% tabs %}
{% tab title="Console" %}
**Console에서 룰 및 예약된 룰 만들기**

* 로그 소스에 대해 하나 이상의 룰을 만드세요.
  * [Python 룰을 만들려면 다음 지침을 따르세요](https://docs.panther.com/ko/detections/rules/python#creating-a-rule-in-python-in-the-console).
  * [Simple 디택션 빌더를 사용하려면 다음 지침을 따르세요.](https://docs.panther.com/ko/detections/rules/simple-detection-builder#how-to-create-a-rule-in-the-simple-detection-builder)
* 필요한 경우, 로그 소스에 대해 하나 이상의 예약된 룰을 만들려면 [다음 지침을 따르세요](https://docs.panther.com/ko/detections/rules/python#creating-a-scheduled-rule-in-python-in-the-console).
  {% endtab %}

{% tab title="CLI" %}
**CLI 워크플로에서 룰 및 예약된 룰 만들기**

1. 아직 하지 않았다면 [이 지침을 따르세요](https://docs.panther.com/panther-developer-workflows/ci-cd/detections-repo) 복제하거나 포크하려면 [panther-analysis 리포지토리](https://github.com/panther-labs/panther-analysis/tree/master) Python 디택션의.
2. 로그 소스에 대해 하나 이상의 룰을 작성하세요:
   * [Python 룰을 작성하려면 다음 지침을 따르세요](https://docs.panther.com/ko/detections/rules/python#creating-a-rule-in-python-in-the-cli-workflow).
   * [Simple 디택션 룰을 작성하려면 다음 지침을 따르세요](https://docs.panther.com/ko/detections/rules/writing-simple-detections#how-to-create-a-simple-detection-rule-in-yaml).
3. 필요한 경우, 로그 소스에 대해 하나 이상의 예약된 룰을 작성하려면 [다음 지침을 따르세요](https://docs.panther.com/ko/detections/rules/python#creating-a-scheduled-rule-in-python-in-the-cli-workflow).
4. 다음을 사용하여 디택션을 Panther에 수동으로 업로드하세요 [PAT](https://docs.panther.com/ko/panther/detections-repo/pat)또는 [CI/CD 파이프라인 구성](https://docs.panther.com/ko/panther/detections-repo/ci-cd) PAT로 디택션 콘텐츠를 업로드하도록.
   {% endtab %}
   {% endtabs %}

### (선택 사항) 2.3단계: 각 Cloud Security Scanning 계정에 대한 정책을 생성하거나 활성화하기

하나 이상의 AWS 계정을 온보딩한 경우 [Cloud Security Scanning](https://docs.panther.com/ko/cloud-scanning), Panther 관리형 정책을 활성화하거나 직접 만드세요.

{% tabs %}
{% tab title="Console" %}
**Console에서 Panther 관리형 정책 활성화**

* 다음을 활성화하세요 [Panther Core AWS Pack](https://github.com/panther-labs/panther-analysis/blob/13e49e6589b1160928ec85678884da0e72e986f3/packs/aws.yml) Panther Console에서. 정책 외에도 이 팩에는 룰, 헬퍼 및 데이터 모델이 포함되어 있습니다.
  * [Console에서 Pack을 활성화하는 지침은 여기에서 확인하세요](https://docs.panther.com/ko/detections/panther-managed/packs#enabling-and-disabling-detection-packs).

**Console에서 정책 만들기**

* Console에서 정책을 만들려면, [이 지침을 따르세요](https://docs.panther.com/ko/detections/policies#how-to-write-policies-in-the-panther-console).
  {% endtab %}

{% tab title="CLI" %}
**CLI 워크플로에서 Panther 관리형 정책 활성화**

* 아직 하지 않았다면 [이 지침을 따르세요](https://docs.panther.com/panther-developer-workflows/ci-cd/detections-repo) 복제하거나 포크하려면 [panther-analysis 리포지토리](https://github.com/panther-labs/panther-analysis/tree/master) Python 디택션의.
* 다음 [panther-analysis 리포지토리 사본의 policies 디렉터리](https://github.com/panther-labs/panther-analysis/tree/master/policies), 즉 관심 있는 AWS 리소스를 모니터링하는 디렉터리들을 식별하세요.
* 관심 있는 각 디렉터리에서, 활성화하려는 각 Panther 관리형 정책에 대해 해당 디택션의 YAML 파일에서 다음을 설정하세요:

  ```yaml
  Enabled: True
  ```
* 관심 있는 각 디렉터리에서, 활성화하지 않으려는 정책이 디렉터리에 있다면 해당 디택션의 YAML 파일에서 다음을 설정하세요:

  ```yaml
  Enabled: False
  ```
* 다음을 사용하여 디택션을 Panther에 수동으로 업로드하세요 [PAT](https://docs.panther.com/ko/panther/detections-repo/pat)또는 [CI/CD 파이프라인 구성](https://docs.panther.com/ko/panther/detections-repo/ci-cd) PAT로 디택션 콘텐츠를 업로드하도록.

**CLI 워크플로에서 정책 만들기**

* CLI 워크플로에서 정책을 작성하려면, [이 지침을 따르세요](https://docs.panther.com/ko/detections/policies#how-to-write-a-policy).
  {% endtab %}
  {% endtabs %}

{% hint style="info" %}
**디택션: 더 나아가기**

* CLI 워크플로를 사용하는 경우, [Panther에 업로드하도록 CI/CD 파이프라인을 구성하세요](https://docs.panther.com/ko/panther/detections-repo/ci-cd).
* 사용 [데이터 리플레이](https://docs.panther.com/ko/detections/testing/data-replay) 하여 탐지가 예상대로 일치하는지 확인하세요.
* Cloud Security Scanning을 위해 AWS 계정을 온보딩한 경우, [실시간 모니터링](https://docs.panther.com/ko/cloud-scanning#real-time-monitoring).
  {% endhint %}

## 3단계: 알러트 대상 구성

설정 [알러트 대상](https://docs.panther.com/ko/alerts/destinations) 을 사용하여 Panther Console 외부의 위치에서 알러트를 수신하세요.

### 3.1단계: Panther 알러트를 수신할 위치 식별

팀이 Panther 알러트를 수신하기에 가장 좋은 위치는 어디인가요? 여러 대상을 구성하고 서로 다른 [심각도](https://docs.panther.com/ko/detections/rules#alert-severity) 의 알러트를 다른 위치로 라우팅하는 것이 합리적일까요?

시작할 아이디어가 필요하다면, 다음의 지원되는 대상 목록을 확인하세요. [알러트 대상](https://docs.panther.com/ko/alerts/destinations) 페이지에서도 확인할 수 있습니다. 또한 [사용자 지정 대상](https://docs.panther.com/alerts/destinations#setting-up-destinations-that-are-not-natively-supported).

### 3.2단계: 대상 설정

설정하려는 각 알러트 대상에 대해:

* 대상이 다음 중 하나인 경우 [Panther에서 기본적으로 지원되는 대상](https://docs.panther.com/ko/alerts/destinations), 해당 대상에 맞는 설정 지침을 따르세요.
* 대상이 Panther에서 기본적으로 지원되지 않는 경우:
  * 대상이 HTTP `POST` 요청을 수신할 수 있고 `JSON` payload를 포함할 수 있다면, [Custom Webhook Destination 사용 지침을 따르세요](https://docs.panther.com/ko/alerts/destinations/custom_webhook).
  * 대안으로, 일정에 따라 새 알러트를 위해 Panther API를 폴링하는 것을 고려하세요. [이 옵션에 대해 자세히 알아보기](https://docs.panther.com/ko/alerts/destinations#panther-api).

### 3.3단계: 최소 하나의 대상이 시스템 오류를 수신하도록 보장

시스템 오류는 로그 소스의 상태가 좋지 않게 되거나 알러트 전달에 실패하는 등 Panther 워크플로의 일부가 제대로 작동하지 않을 때 사용자에게 알립니다. 시스템 오류에 대해 자세히 알아보려면 [시스템 상태 알림](https://docs.panther.com/ko/system-configuration/notifications/system-errors).

각 알러트 대상을 설정할 때, 아래에 표시된 해당 대상에 **알러트 유형** 전송될 항목을 선택하게 됩니다. 최소 하나의 알러트 대상이 시스템 오류를 수신하도록 구성하는 것을 강력히 권장합니다.

<figure><img src="https://2400888838-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-ab3089cbe46e46226afbfc9a150b25ace815516b%2FScreenshot%202023-09-25%20at%201.45.30%20PM.png?alt=media" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
**알러트 대상: 더 알아보기**

* Panther에서 알러트를 분류하는 방법을 [알러트 할당 및 관리](https://docs.panther.com/ko/alerts/alert-management).
  {% endhint %}

## 4단계: 검색 도구 사용 방법 배우기

보안 사고를 조사할 때가 오기 전에 Panther의 [검색 도구](https://docs.panther.com/ko/search).

* 를 편안하게 사용할 수 있도록 연습해 두세요. [검색](https://docs.panther.com/ko/search/search-tool) 도구에서 필터를 만들고 검색을 실행하는 연습을 해보세요.
* SQL 작성에 익숙하다면, [데이터 탐색기](https://docs.panther.com/ko/search/data-explorer).
  * 에서 쿼리를 실행하는 연습을 해보세요. [Data Explorer SQL Search Examples에서 예시 쿼리를 확인하세요](https://docs.panther.com/ko/search/data-explorer/example-queries).

{% hint style="info" %}
**검색: 더 알아보기**

* [예약 검색 만들기](https://docs.panther.com/ko/search/scheduled-searches#how-to-create-a-scheduled-search), 그 위에 [예약 룰](https://docs.panther.com/ko/detections/rules#how-to-write-scheduled-rules).
  {% endhint %}

## (선택 사항) 5단계: Enrichment 설정

Panther의 [Enrichment](https://docs.panther.com/ko/enrichment) 기능은 로그 이벤트에 유용한 맥락을 추가하여, 더 높은 정확도의 탐지를 작성하고 더 유익한 경고를 생성할 수 있게 해줍니다. 이러한 기능에는 다음이 포함됩니다:

* 다음과 같은 Panther가 관리하는 보강 기능 [IPinfo](https://docs.panther.com/ko/enrichment/ipinfo), [Tor 종료 노드](https://docs.panther.com/ko/enrichment/tor-exit-nodes)및 [Anomali ThreatStream](https://docs.panther.com/ko/enrichment/anomali-threatstream)
* 다음과 같은 로그 소스 수집기 [Google Workspace 프로필](https://docs.panther.com/ko/enrichment/google-workspace) 및 [Okta 프로필](https://docs.panther.com/ko/enrichment/okta)
* [사용자 지정 보강 기능](https://docs.panther.com/ko/enrichment/custom) 자체 데이터를 포함하는

위의 각 기능에 대해 활성화할지 여부를 결정한 다음, 활성화할 경우 해당 페이지의 설정 지침을 따르세요.
