> For the complete documentation index, see [llms.txt](https://docs.panther.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.panther.com/ko/enrichment/anomali-threatstream.md).

# Anomali ThreatStream

## 개요

다음을 사용할 수 있습니다 [Panther의 보강 소스로서의 Anomali ThreatStream](https://www.anomali.com/products/threatstream) ThreatStream은 위협 데이터를 정규화하고, 중복을 제거하고, 오탐을 제거하고, 보강한 다음 관련된 모든 위협 인디케이터를 연결하여 여러 위협 피드를 단일 고신뢰 저장소로 통합합니다.

다음 방법을 알아보세요 [저장된 보강 데이터를 여기에서 확인하는 방법](/ko/enrichment.md#viewing-and-managing-enrichments), 그리고 어떻게 [여기에서 엔리치먼트 데이터가 포함된 로그 이벤트를 확인하세요](/ko/enrichment.md#viewing-log-events-with-enrichment-data).

{% hint style="warning" %}
Panther에서 Anomali ThreatStream 보강을 사용하려면 Anomali ThreatStream 라이선스가 필요합니다.
{% endhint %}

### Panther에서 Anomali ThreatStream 보강 제공자가 작동하는 방식

기본적으로 Anomali ThreatStream은 Panther 환경의 모든 로그 소스에 대해 실행되도록 구성되어 있습니다(하지만 [비활성화할 수 있습니다](#enabling-or-disabling-anomali-threatstream-enrichment-for-a-log-source), 원하는 경우). Panther는 모든 로그 유형에 걸쳐 들어오는 각 로그 이벤트를 디택션 엔진을 통과하기 전에 Anomali 보강 데이터와 일치시키려고 시도합니다.

Panther가 [일치를 식별하면](#how-a-match-between-a-log-event-and-anomali-is-made) 들어오는 이벤트와 Anomali 항목 사이에 일치가 이루어지면, Anomali 데이터는 최상위 수준의 `p_enrichment` 키 아래에 추가되며, 디택션 로직과 검색에서 참조할 수 있습니다.

Anomali에 동일한 인디케이터에 대한 여러 항목이 있고, 활성 상태인 Anomali 항목이 하나뿐이면 Panther는 그 항목을 사용합니다. 여러 Anomali 항목이 활성 상태이면 Panther는 신뢰도 점수가 가장 높은 활성 항목을 사용합니다.

엔리치먼트 소스를 사용한 디택션 작성에 대한 자세한 내용은 다음을 참조하세요. [보강 데이터를 사용한 디택션 작성](/ko/enrichment/custom.md#writing-a-detection-using-lookup-table-data).

#### 로그 이벤트와 Anomali 간 일치가 이루어지는 방식

로그 이벤트는 Anomali 보강 데이터로 보강됩니다(아래의 `p_enrichment`) 다음 항목 간에 일치가 발견되면 엔리치됩니다:

* 연결된 각 로그 유형에 대해 구성된 Selector 필드의 값 중 하나라도.
  * 각 로그 유형의 기본 선택자는 해당 [지표 필드](/ko/search/panther-fields.md#indicator-fields) (다음으로 표시됨 `p_any_*`)이며, 하지만 [선택자는 구성 가능합니다](#enabling-disabling-or-modifying-anomali-threatstream-enrichment-for-a-log-source).
* 다음의 값은 `match` Panther의 Anomali 테이블 항목에서의 키입니다.
  * `match` Anomali 테이블의 기본 키이며 Panther에 의해 미리 설정됩니다.
  * 다음 예시를 보세요. `match` 에서 [아래는 Anomali 테이블 항목의 예시입니다](#example).

## Anomali ThreatStream 보강 설정

### 1단계: Anomali에서 API 키 만들기

* 다음을 따르세요. [Anomali 문서](https://ui.threatstream.com/optic-doc/Content/Optic%20Administration/updateContactInformation.htm?Highlight=setting%20api%20key) 에서 다음 권한의 API 키를 생성합니다 `읽기 전용` 액세스를 사용하여 Panther에서 사용합니다.

### 2단계: Anomali의 허용 목록에 Panther IP 주소 추가하기

#### 2.1단계: Panther 게이트웨이 공용 IP 주소 찾기

1. Panther Console의 오른쪽 상단 모서리에서 <img src="/files/35242326ad05ec3c2d819d43066074a4cc35b5de" alt="Gear icon" data-size="line"> 을 클릭하여 설정을 연 다음 **일반 설정** > **기본 정보 및 기본 설정**.
2. 다음 **인프라** 섹션에서 **게이트웨이 공용 IP**.
   * 이 값은 다음 단계에서 사용하므로 안전한 위치에 저장하세요.

#### 2.2단계: Anomali의 허용 목록에 IP 추가하기

* 다음을 따르세요. [Anomali 문서](https://ui.threatstream.com/login) 를 클릭하여 Panther 게이트웨이 IP 주소를 Anomali IP 허용 목록에 추가합니다.

### 3단계: Panther에서 Anomali ThreatStream 보강 제공자 만들기

Panther에서 Anomali ThreatStream 보강 제공자를 활성화하려면:

1. Panther Console의 왼쪽 탐색 모음에서 **보강**.
2. 다음 타일을 클릭하세요: **Custom Enrichment** 카드.
3. 오른쪽 상단에서 다음을 클릭하세요: **새로 만들기**.
4. 클릭합니다 **Anomali**.\
   ![The Panther Console shows "What type of enrichment would you like to set up?" above three options: Anomali (circled), Google Workspace, and Okta.](/files/d6f2c2dac157d0d37c5f10d4ec137c1b11972a8b)
5. 다음 **보강 설정** 양식에서 다음 필드의 값을 입력하세요:
   * **이름**: 통합에 대한 설명이 포함된 이름을 입력합니다.
   * **Anomali 하위 도메인**: Anomali 하위 도메인을 입력하세요.
   * **사용자 이름**: Anomali 사용자 이름을 입력하세요.
   * **API 토큰**: [1단계](#step-1-create-an-api-key-in-anomali).
   * **ThreatStream 인디케이터 쿼리**: Panther가 보강을 구성하는 데 사용할 인디케이터 쿼리를 제공하세요.
     * 이 필드의 자리표시자 텍스트에는 예시 쿼리가 표시됩니다: `feed_id=42 and status="active"`
     * Panther에 제공하기 전에 Anomali ThreatStream 인터페이스에서 쿼리를 테스트하는 것이 좋습니다.
   * **새로고침 주기(분)**: 새로 고침 주기를 설정하세요. 이 주기는 Panther가 Anomali ThreatStream 보강 제공자 데이터를 얼마나 자주 새로 고칠지를 결정합니다. 기본 및 최소 새로 고침 주기는 60분입니다.\
     ![The Enrichment Setting form has empty fields for: Name, Anomali subdomain, Username, API Token, ThreatStream indicator query, and Refresh period (min).](/files/44d44198a4b7f697166b086db4cc99993d5dd35a)
6. 클릭합니다 **설정**.
7. 다음 페이지에서 클릭합니다 **저장.**
   * 새로운 Anomali ThreatStream 구성은 **보강** 페이지.

## 로그 유형에 대한 Anomali ThreatStream 보강 활성화, 비활성화 또는 수정하기

Anomali ThreatStream은 Panther 인스턴스의 각 로그 유형에 대해 기본적으로 활성화되어 있습니다.

특정 로그 유형에 대해 Anomali를 비활성화(또는 나중에 활성화)하거나 해당 선택자를 변경하려면:

1. Panther Console의 왼쪽 탐색 표시줄에서 다음을 클릭하세요. **보강**.
2. 다음의 **보강** 목록에서 수정하려는 Anomali ThreatStream 소스를 찾은 다음 이름을 클릭합니다.
3. 제공자 세부 정보 페이지에서, 오른쪽의 **엔리치된 로그 유형** 헤더 **편집**.\
   ![Next to an Enriched Log Types (114) header, there's a circled Edit button. Below, there is a table with columns for Log Type and Log Attribute.](/files/dc702366369ad01f2e2abb440f24ae9652796954)
   * 이 엔리치먼트를 새 로그 유형에 활성화하려면 **로그 유형 추가**.
     * 생성된 새 행에서 **로그 유형** 를 선택하고, **Selectors** 필드에는 최소 하나의 이벤트 필드를 추가하세요.\
       ![An arrow points from a Add Log Type button to a Log Type selector. To its right is a Selectors field and a trash can icon.](/files/f183989f7a1d6f9eb6ae2f266a658334cc2dc30d)
   * 이 엔리치먼트를 로그 유형에서 비활성화하려면, 해당 로그 유형의 행을 찾아 휴지통 아이콘을 클릭하세요.\
     ![A trash can icon is circled. Also in its row are a Log Type field (with Okta.SystemLog selected), and $.actor.id selected in the Selectors field.](/files/973049bbc00ae0277f96f773104665b225cb9ea6)
   * 로그 유형의 Selectors를 변경하려면, 다음 **Selectors** 필드에서 이벤트 필드 선택 항목을 추가하거나 제거하세요.\
     ![A list of rows each with a Log Type, Selectors, and trash fields is shown. The Selectors field of the first row is open, with an arrow pointing from it to one of the option's checkboxes.](/files/d6c02c39a82b2c62df8fc0325a3c811bc4c8e4b1)
4. 오른쪽 상단 모서리에서 **엔리치된 로그 유형** 타일을 클릭하세요: **저장**.

## Anomali ThreatStream 보강 테이블 항목 예시

아래는 쿼리에서 Panther에 의해 정규화된 Anomali ThreatStream 응답의 예시입니다 `feed_id=336`:

```json
{
	"asn": "306",
	"can_add_public_tags": true,
	"confidence": 50,
	"country": "US",
	"created_ts": "2023-08-11 10:35:52.302",
	"expiration_ts": "2023-11-09 13:35:49",
	"feed_id": "336",
	"id": "457335623",
	"ip": "55.44.33.22",
	"is_anonymous": false,
	"is_editable": true,
	"is_public": false,
	"itype": "mal_ip",
	"latitude": 37.751,
	"longitude": -97.822,
	"match": [
		"55.44.33.22"
	],
	"meta": {
		"detail2": "사용자 450에 의해 가져옴",
		"severity": "중간"
	},
	"modified_ts": "2023-08-11 10:35:52.302",
	"org": "미국 국방부 네트워크",
	"owner_organization_id": "151",
	"p_any_ip_addresses": [
		"55.44.33.22"
	],
	"p_event_time": "2023-08-11 10:35:52.302",
	"p_log_type": "Anomali.Indicator",
	"p_parse_time": "2023-09-29 17:24:09.176",
	"p_row_id": "1a4857af055ca1eb94e79eef1a04",
	"p_schema_version": 0,
	"resource_uri": "/api/v2/intelligence/457335623/",
	"retina_confidence": -1,
	"sort": [
		1691750152302,
		457335623
	],
	"source": "Panther 개발 피드",
	"source_reported_confidence": 50,
	"status": "활성",
	"tags": [
		{
			"id": "d4j",
			"name": "sdk_demo",
			"org_id": "151",
			"tlp": "white"
		}
	],
	"threat_type": "멀웨어",
	"threatscore": 40,
	"type": "ip",
	"update_id": "1155874106",
	"uuid": "0d126865-0b34-4d60-b51b-24083ba53313",
	"value": "55.44.33.22"
}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.panther.com/ko/enrichment/anomali-threatstream.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
