# 시스템 오류

## 개요

Panther 플랫폼의 일부가 예상대로 작동하지 않을 때 Panther의 시스템 오류 알러트가 이를 알려줍니다. 여기에는 다음이 포함됩니다:

* [로그 소스 상태 알림](#log-source-health-notifications)
  * 상태 확인 실패로 인해 비정상 상태가 되는 로그 소스
  * 로그 소스에서 로그가 완전히 끊기는 경우
* [알러트 한도 알림](https://docs.panther.com/ko/alerts#limiting-alerts)
* [알러트 전달 실패](#alert-delivery-failure)
  * 알러트 대상에 알러트 전달이 실패하는 경우
* [로그 분류 오류](#log-classification-alerts)
  * 로그 분류 실패
* [S3 GetObject 오류](#s3-getobject-error-notifications)
  * Panther가 S3 객체를 가져오지 못하는 경우
* [클라우드 보안 스캔 실패](#cloud-security-scanning-failure)
  * "access denied" 오류로 인해 Panther가 클라우드 리소스를 스캔하지 못하는 경우
* 다음의 쿼리 오류 [예약 검색](https://docs.panther.com/ko/search/scheduled-searches) 예약된 룰에 연결되지 않음
  * 다음의 쿼리 오류 [예약 검색](https://docs.panther.com/ko/search/scheduled-searches) 예약된 룰에 연결된 항목은 다음으로 표시됩니다 [룰 오류](https://docs.panther.com/ko/detections/rules#rule-errors-and-scheduled-rule-errors)
* [시간 초과된 예약 검색](https://docs.panther.com/ko/search/scheduled-searches#use-limits-in-scheduled-searches)

이러한 유형의 알러트는 다음으로 분류됩니다 `시스템 오류` Panther에서. `시스템 오류` 에는 항상 다음이 설정됩니다 `치명적` 심각도 수준—그리고 알러트 대상으로 전송됩니다 [수신하도록 구성된 `시스템 오류`](#configuring-an-alert-destination-for-system-health-errors), 심각도를 가진 알러트를 수신하도록 구성되지 않았더라도 `치명적` 심각도. 이러한 알러트는 자동으로 생성되며, 로그 소스별로 수동 구성할 수 있는 로그 드롭오프 알람은 예외입니다. `System Error` 알러트는 Panther Console의 다음 위치에서 확인할 수 있습니다 **알러트 및 오류 > 시스템 오류**.

{% hint style="info" %}
다음을 구성할 것을 강력히 권장합니다 [알러트 대상](https://docs.panther.com/ko/alerts/destinations) 다음을 수신하도록 `System Error` 알러트 유형.
{% endhint %}

시스템 오류는 Panther Console의 앱 내 알림 유형이기도 합니다. 알림에 대해 자세히 알아보려면 다음을 참조하세요 [알림 및 오류](https://docs.panther.com/ko/system-configuration/notifications).

## 시스템 오류 알람 구성 방법

모든 유형의 시스템 오류에 대한 알러트를 수신하려면:

* 다음을 수신하는 알러트 대상을 구성합니다 `System Error` 알러트 유형.
* 데이터 수신이 더 이상 이루어지지 않을 때 알러트가 트리거되도록 로그 소스에 대한 로그 드롭오프 알람을 구성합니다.
  * 로그 분류 오류, 알러트 전달 실패, S3 GetObject 오류 및 클라우드 보안 스캔 실패에 대해서는 알러트를 활성화할 필요가 없습니다.

### 시스템 오류용 알러트 대상 구성

기본적으로 Panther는 다음을 전송합니다 `시스템 오류` 알러트를 다음으로 **알러트** Panther Console의 페이지로 전송합니다. 또한 이 알러트를 수신하도록 알러트 대상 중 하나를 구성하는 것을 강력히 권장합니다.

{% hint style="info" %}
다음을 수신하도록 구성된 알러트 대상은 `시스템 오류` 대상이 심각도를 가진 알러트를 수신하도록 구성되지 않았더라도 이를 수신합니다 `치명적` 심각도.
{% endhint %}

이 알러트가 사용자 지정 알러트 대상으로 전송되도록 하려면 아래 단계를 따르세요:

1. Panther Console에 로그인합니다.
2. 왼쪽 사이드바 탐색에서 다음을 클릭합니다 **구성** > **알러트 대상지**
3. 기존 알러트 대상을 선택하거나 [새 알러트 대상 추가](https://docs.panther.com/ko/alerts/destinations).
4. 알러트 대상의 구성 페이지에서 다음을 추가합니다 `시스템 오류` 을/를 다음에 **알러트 유형** 섹션에:

<figure><img src="https://2400888838-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-482c5eae16a7277e8dd1cbcd334541057bdaf2b2%2Fimage%20(1).png?alt=media" alt="On the configuration screen for a Slack destination in the Panther Console, &#x22;System Errors&#x22; is one of the selected Alert Types." width="563"><figcaption></figcaption></figure>

### 로그 소스에 대한 로그 드롭오프 알람 구성

Panther에서는 개별 로그 소스에 대해 이벤트 임계값 알람을 설정할 수 있으며, 특정 시간 간격 동안 데이터가 수신되지 않으면 알러트가 트리거됩니다.

예를 들어 임계값을 15분으로 구성하면, 15분 동안 처리된 이벤트가 없을 경우 알러트를 수신하게 됩니다.

이는 Panther에 잘못 연결되었거나 Panther 외부에서 문제를 겪고 있는 로그 소스에 유용할 수 있습니다.

{% hint style="warning" %}
임계값을 넘으면 단일 알러트가 생성됩니다. 임계값 조건이 재설정되고(즉, 데이터가 수신되고) 이후 다시 트리거되지 않는 한 추가 알러트는 발행되지 않습니다.
{% endhint %}

새 로그 소스 또는 기존 로그 소스에 알람을 추가할 수 있습니다:

{% tabs %}
{% tab title="새 로그 소스에 알람 추가" %}
**새 로그 소스에 대한 알람 설정**

1. Panther Console의 왼쪽 탐색 모음에서 다음을 클릭하세요. **구성** > **로그 소스**.
2. 오른쪽 상단에서 다음을 클릭하세요. **새로 만들기**.
3. 온보딩 워크플로의 각 단계를 완료합니다.
   * 다음을 참조하세요 [데이터 소스 및 전송](https://docs.panther.com/ko/data-onboarding) 소스별 구체적인 설정 지침은 여기에서 확인하세요.
4. 온보딩 워크플로 마지막의 성공 페이지에서 **이벤트가 처리되지 않을 때 알러트 트리거** 기본값은 다음과 같습니다 **예**. 이 설정을 활성화된 상태로 두세요.
   * 다음 항목을 입력하여 원하는 시간 기간을 입력합니다 **숫자** 및 **Period** 필드, 다음 옆의 **이벤트가 처리되지 않았다는 알러트를 보내기 전에 Panther가 얼마나 기다려야 하나요?**.

<figure><img src="https://2400888838-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-820da60240fd5ed816d9aafdab93e9a020ce2d03%2Fimage.png?alt=media" alt="The &#x22;Trigger an alert when no events are processed&#x22; toggle is set to YES. The &#x22;How long should Panther wait before it sends you an alert that no events have been processed&#x22; setting is set to 1 Day" width="480"><figcaption></figcaption></figure>
{% endtab %}

{% tab title="기존 소스에 알람 추가" %}
**기존 로그 소스에 대한 알람 설정**

1. Panther Console의 왼쪽 탐색 모음에서 다음을 클릭하세요. **구성** > **로그 소스**.
2. 알람을 구성할 로그 소스를 선택합니다.
3. 로그 소스 세부 정보 페이지의 **개요** 탭에서 다음 값 오른쪽의 연필 아이콘을 클릭합니다 **드롭오프 알람** 필드.\
   ![A log source named "test cloudtrail" is shown, and in the Basic Info section there is a blurred-out Source ID and AWS Account ID. There's also a Drop-off Alarm with a value of Not Set.](https://2400888838-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-caf04b73ea608668db44a0f1c9caa9b36052b148%2FScreenshot%202023-05-09%20at%203.58.13%20PM.png?alt=media)
4. 팝업 창에서 다음을 전환합니다 **이벤트가 처리되지 않을 때 알러트 트리거** 설정을 **ON**.
5. 다음 옆의 **이벤트가 처리되지 않았다는 알러트를 보내기 전에 Panther가 얼마나 기다려야 하나요?** 다음을 설정합니다 **숫자** 및 **Period**.\
   ![In a "Configure Drop-off Alarm" pop-up window, the "Trigger an alert when no events are processed" is toggled to "ON." Below, it asks "How long should Panther wait before it sends you an alert that no events have been processed?" and in the Number selector is "1" and in the Period selector is "Day(s)." At the bottom is a blue "Apply Changes" button.](https://2400888838-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-b0e8f55a2878eb0432b432de1fdb1eb07c3f593e%2FScreenshot%202023-05-09%20at%204.02.05%20PM.png?alt=media)
6. 다음을 클릭하세요. **변경 사항 적용**.
   {% endtab %}
   {% endtabs %}

## 시스템 오류 유형

### 로그 소스 상태 알러트

Panther는 로그 소스에 대해 상태 확인을 수행하여 Panther가 소스에 올바르게 연결되어 있고, 올바른 자격 증명을 가지고 있으며, 소스로부터 일관되게 데이터를 수신하고 있는지 확인합니다.

#### 로그 드롭오프 알러트

Panther에서는 개별 로그 소스에 대해 이벤트 임계값 알람을 설정할 수 있으며, 특정 시간 간격 동안 데이터가 수신되지 않으면 알러트가 트리거됩니다. 이러한 알러트를 활성화하는 방법은 위 섹션을 참조하세요:[ 로그 소스에 대한 로그 드롭오프 알람 구성](#configuring-log-drop-off-alarms-for-log-sources).

다음에 대해서는 로그 드롭오프 알람을 설정할 수 없습니다 [Panther 감사 로그](https://docs.panther.com/ko/data-onboarding/supported-logs/panther-audit-logs), 로그 소스로 활성화된 경우.

### 로그 분류 알러트

들어오는 로그가 해당 로그 소스에 연결된 스키마에 따라 올바르게 파싱되지 않으면 Panther가 로그 분류 알러트를 생성합니다. 이 경우:

* 분류에 실패한 로그는 데이터 레이크로 전송되며 다음 이름의 테이블에서 검색할 수 있습니다 `classification_failures` 에서 `panther_monitor` 데이터베이스.
* 첫 번째 로그가 분류에 실패한 직후 알러트가 생성됩니다. 알러트에는 분류에 실패하고 있는 모든 로그 라인이 표시됩니다.

Panther Console의 알러트 세부 정보 페이지는 올바르게 파싱되지 않는 로그 라인을 강조 표시하여 로그 유형의 해당 스키마에서 수정하거나 추가해야 하는 라인을 파악할 수 있도록 도와줍니다.

알러트에는 해당 로그 소스의 Log Source Ops 페이지로 이동하는 링크가 포함되어 있으며, 여기서 Health 탭 내에서 이벤트가 분류 실패하는 비율을 확인할 수 있습니다.

![그래프가 포함된 Log Source 작업 페이지입니다. 그래프는 이벤트가 잘못 분류되는 비율을 보여줍니다.](https://2400888838-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-7232e87070e8778dd78ae968c05aa48fcb8ef4ed%2Fimage.png?alt=media)

#### 분류 실패 해결

로그 소스 중 하나에서 분류 실패가 발생하면 다음 단계를 수행하여 이를 해결할 수 있습니다:

1. 로그 소스에 둘 이상의 스키마가 연결되어 있는 경우 어떤 스키마가 실패했는지 식별합니다.
   * 이 정보는 다음 중 한 곳에서 찾을 수 있습니다 **상태** 로그 소스 세부 정보 페이지의 탭 또는 Data Explorer에서 직접, 다음 이름의 테이블에서 `classification_failures` 에서 `panther_monitor` 데이터베이스.
2. 스키마가 이벤트를 파싱하지 못한 이유를 파악합니다. 분류 실패의 일반적인 원인은 다음과 같습니다:
   * 다음이 있는 필드 `required:true` 일부 수신 데이터에 존재하지 않았습니다
   * 필드에 `type:string` 이 설정되어 있지만 실제 수신 데이터는 다음입니다 `객체`
   * 타임스탬프 필드의 형식 정의가 잘못되었습니다
   * 이벤트가 소스에 구성되지 않은 LogType이었습니다
   * 이벤트가 다른 방식으로 잘못 구성되었습니다
3. [스키마를 업데이트합니다](https://docs.panther.com/ko/data-onboarding/custom-log-types#editing-a-custom-schema) 필요에 따라.
4. 다음을 클릭하여 분류 실패 알러트를 해결합니다 **해결됨으로 표시**.

   <figure><img src="https://2400888838-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-704a71213cf7ef0ffcee6918e87f4a1dca80c205%2FScreenshot%202025-07-11%20at%2010.38.06%E2%80%AFAM.png?alt=media" alt="Under an &#x22;Overview&#x22; tab, a button labeled &#x22;Mark as Resolved&#x22; is circled."><figcaption></figcaption></figure>
5. 다음 항목에서 **이벤트를 재처리하시겠습니까?** 표시되는 팝업 모달에서 분류 실패한 이벤트를 다음 중 하나를 클릭하여 처리합니다:
   * (베타) **이벤트 재처리**: 분류에 실패한 이벤트가 다시 처리됩니다.\
     ![Under a "Reprocess events?" header, a "Reprocess Events" button is circled.](https://2400888838-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-33a07abdc21c5c00eb049331c76134559e04643b%2FScreenshot%202025-07-11%20at%2008.13.59.png?alt=media)<br>

     <div data-gb-custom-block data-tag="hint" data-style="warning" class="hint hint-warning"><p>이벤트 재분류는 지난 15일 이내에 분류에 실패한 이벤트에 대해서만 가능합니다.</p><p>해결 중인 분류 실패 알러트에 지난 15일 이내에 수신된 이벤트와 15일보다 오래된 이벤트가 모두 포함되어 있는 경우, 전자만 재처리되고 후자는 무시됩니다.</p><p>재처리된 이벤트는 성공적으로 수집되는 시점의 수집 할당량에 반영됩니다.</p></div>

     * 재처리가 성공적으로 완료되면 다음을 수신합니다 [시스템 알림](https://docs.panther.com/ko/system-configuration/notifications/..#system-notifications):\
       ![A rectangle with an "i" icon on the left side says, "Panther completed reclassifying logs for source \[Test Source\]"](https://2400888838-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-e8b5c20c3b5c8c17fe1949cbed1b3b38ce6989d2%2FScreenshot%202025-07-11%20at%2008.17.58.png?alt=media)
     * 분류가 다시 실패하면 새 분류 실패 알러트를 수신합니다.
   * **재처리 건너뛰기**: 분류에 실패한 이벤트는 Panther로 수집되지 않습니다.

### S3 GetObject 오류 알림

Panther가 S3 객체를 가져오지 못하면 S3 GetObject 오류 알러트가 생성됩니다. 이 경우 기본적으로 다음 작업이 수행됩니다:

* Panther는 S3 객체를 데이터 레이크에 저장하며, Data Explorer를 통해 다음 제목의 테이블에서 쿼리할 수 있습니다 `panther_monitor.data_audit`.
* 지난 24시간 동안 Panther가 S3 객체를 하나라도 가져오지 못하면 알러트가 생성됩니다. 알러트에는 실패하고 있는 특정 S3 객체가 표시됩니다.

{% hint style="info" %}
이 유형의 오류는 Panther가 다음을 초과하는 로그 이벤트를 수집하려고 시도할 때 생성됩니다 [데이터 수집 크기 제한(15 MB)](https://docs.panther.com/ko/data-onboarding#data-ingestion-size-limit). CloudWatch, Azure Blob Storage 및 Google Cloud Storage(GCS)에 대해서도 유사한 오류가 생성됩니다.
{% endhint %}

### 알러트 전달 실패

알러트 전달 실패 알러트는 Panther가 목적지에 알러트를 전달하지 못할 때 생성됩니다.

알러트 전달의 초기 시도가 실패하면 Panther는 자동으로 재전달을 시도합니다. 알러트 전달 실패가 특정 임계값을 초과하면 시스템 상태 알러트가 생성되어 다음을 수신하도록 구성된 모든 알러트 대상으로 전송됩니다 `System Error` 알러트.

### 클라우드 보안 스캔 실패

클라우드 보안 스캔 실패 알러트는 Panther가 "access denied" 오류로 인해 클라우드 리소스를 스캔하지 못할 때 생성됩니다.

이는 스캔이 수행될 수 있도록 권한이 올바르게 구성되지 않았을 때 발생합니다. 가장 일반적인 원인은 다음 시나리오 중 하나입니다:

* 당사의 스캐닝 역할 (`PantherAuditRole`) 에 충분한 권한이 구성되어 있지 않습니다.
  * 이 역할의 권한은 거의 변경되지 않으므로 이는 매우 드문 경우입니다. 이는 다음을 업데이트하여 해결할 수 있습니다 `PantherAuditRole` 을/를 최신 버전으로.
* AWS Organizations 서비스 제어 정책(SCP)이 당사의 스캐닝 역할이 스캔을 수행하지 못하도록 막고 있습니다.
  * 이는 일반적으로 특정 리전 또는 서비스에 대한 제한이 있는 SCP에서 발생합니다. 이는 당사의 스캐닝 역할에 대한 예외를 추가하도록 SCP를 수정하거나, 특정 리전 또는 리소스 유형을 제외하도록 Cloud Security 통합을 수정하여 해결할 수 있습니다.
* AWS 리소스 기반 정책이 당사의 스캐닝 역할이 스캔을 수행하지 못하도록 막고 있습니다.
  * AWS에서 권한은 양방향입니다. 다음은 `PantherAuditRole` 리소스에 액세스할 권한을 부여받았을 수 있지만, 리소스 자체가 당사 역할에 의해 액세스되는 것을 허용하지 않을 수 있습니다. 이는 당사의 스캐닝 역할에 대한 예외를 추가하도록 리소스 기반 정책을 수정하거나, 특정 리소스 또는 리소스 유형을 제외하도록 Cloud Security 통합을 수정하여 해결할 수 있습니다.

알러트는 어떤 리소스에서 스캔이 실패했는지와 스캔 실패의 원인이 된 AWS 오류를 표시합니다:

<figure><img src="https://2400888838-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-aeabf5161b824fcf1da79067a1a8b4cb6e5d6214%2Fscanning-errors.png?alt=media" alt="The image shows an alert in the Panther Console titled &#x22;Source [panther-account] has scanning errors.&#x22; The &#x22;Events&#x22; tab is open, and it includes metadata for the alert."><figcaption></figcaption></figure>

이 정보를 사용하여 정확한 권한 문제를 찾아낼 수 있습니다. 위 예시에서는 다음을 확인할 수 있습니다 `kms:ListResourcetags 작업을 허용하는 리소스 기반 정책이 없습니다`. 이는 문제가 리소스 기반 정책과 관련되어 있음을 나타냅니다.
