# AppOmni 로그

## 개요

Panther는 다음을 수집하는 것을 지원합니다 [AppOmni](https://appomni.com/) 로그를 공통 [데이터 전송](https://docs.panther.com/ko/data-onboarding/data-transports) 옵션: [HTTP 웹후크](https://docs.panther.com/ko/data-onboarding/data-transports/http) 와 [AWS S3](https://docs.panther.com/ko/data-onboarding/data-transports/aws/s3).

AppOmni는 Salesforce, Box, ServiceNow, Workday, Office365 및 Zoom을 포함한 주요 SaaS 애플리케이션 전반에서 수백 가지 이벤트 유형을 지속적으로 모니터링하고 표준화합니다. 이러한 로그를 Panther로 수집하면 Panther의 [알러트](https://docs.panther.com/ko/alerts) 기능에 액세스할 수 있습니다.

## AppOmni 로그를 Panther에 온보딩하는 방법

### 1단계: Panther에서 새 AppOmni 소스 생성

1. Panther 콘솔의 왼쪽 탐색 창에서 **설정 > 로그 소스**.
2. 를 선택하고 Panther가 설치된 계정 ID를 입력하십시오. **새로 만들기**.
3. "AppOmni"를 검색한 다음 해당 타일을 클릭합니다.
4. 일반 구성 **전송 메커니즘** 드롭다운에서 이 통합에 사용할 데이터 전송 방법을 선택한 다음 해당 방법 구성에 대한 Panther의 지침을 따르세요:
   * [HTTP](https://docs.panther.com/ko/data-onboarding/data-transports/http)
   * [AWS S3 버킷](https://docs.panther.com/ko/data-onboarding/data-transports/aws/s3)\\

     <figure><img src="https://2400888838-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-aa7d183fed3413ca0a5dd91a73ae6a07cde7f40d%2FScreenshot%202024-05-03%20at%204.47.04%20PM.png?alt=media" alt="An arrow is drawn from a tile titled &#x22;AppOmni&#x22; to a dropdown field labeled &#x22;Transport Mechanism&#x22; with a &#x22;HTTP&#x22; option selected. In a panel on the right side, there is a description of AppOmni and a blue &#x22;Start Setup&#x22; button."><figcaption></figcaption></figure>
5. 를 선택하고 Panther가 설치된 계정 ID를 입력하십시오. **설정 시작**.
6. 선택한 데이터 전송 방법을 구성하기 위한 Panther 지침을 따르십시오:
   * [Panther의 HTTP 소스 구성에 대한 지침](https://docs.panther.com/data-onboarding/data-transports/http)
     * 인증 방법으로 다음을 선택하십시오 [공유 시크릿](https://docs.panther.com/ko/data-transports/http#shared-secret) 이전에 생성한 Snowflake 사용자 이름, 예를 들면 [Bearer](https://docs.panther.com/ko/data-transports/http#bearer).
     * 이 소스로 전송된 페이로드는 다음의 적용을 받습니다 [모든 HTTP 소스에 대한 페이로드 요구사항](https://docs.panther.com/data-onboarding/data-transports/http#payload-requirements).
     * HTTP 엔드포인트 생성이 완료될 때까지 다음 단계로 진행하지 마세요.
   * [S3 버킷을 구성하기 위한 Panther의 지침](https://docs.panther.com/ko/data-onboarding/data-transports/aws/s3)

### 2단계: AppOmni를 구성하여 로그 전달

* AppOmni를 구성하여 로그를 데이터 전송 소스로 푸시하십시오.
  * 참조 [AppOmni의 문서](https://appomni.com/resources/) 선택한 데이터 전송 소스로 로그를 푸시하는 방법에 대한 지침은 해당 문서를 참조하세요.

## Panther 관리 디텍션

참조 [Panther 관리](https://docs.panther.com/detections/panther-managed) AppOmni용 룰은 [panther-analysis GitHub 리포지토리](https://github.com/panther-labs/panther-analysis/tree/main/rules/appomni_rules).

## 지원되는 로그 유형

### AppOmni.Alerts

```yaml
스키마: AppOmni.Alerts
설명: AppOmni의 알러트 로그
참고URL: https://labs.appomni.com/aces/event.html
필드:
    - 이름: timestamp
      required: true
      설명: 이벤트가 발생한 날짜/시간.
      이름 변경:
        출처: '@timestamp'
      type: timestamp
      timeFormats:
        - rfc3339
    - 이름: appomni
      required: true
      type: object
      필드:
        - name: alert
          type: object
          필드:
            설명: 엔터티는 행위자가 작업을 수행한 대상이며 그것은 해당 항목의 Slack ID가 됩니다.
              설명: 룰의 채널은 룰 수명주기 단계에 따라 결정됩니다.
              type: string
        - name: event
          type: object
          필드:
            - 이름: dataset
              설명: 이벤트의 데이터셋. 데이터셋은 일반적으로 유사한 이벤트의 모음입니다.
              type: string
            - 이름: id
              설명: AppOmni에서 할당한 고유한 이벤트 ID.
              type: string
            - 이름: sortable_event_id
              설명: 수집될 때 할당되는 고유한 정렬 가능한 이벤트 ID.
              type: string
            - 이름: sortable_ingest_id
              설명: AppOmni의 데이터 저장소에 도착했을 때 할당되는 고유한 정렬 가능한 이벤트 ID.
              type: string
        - 이름: organization
          type: object
          필드:
            - 이름: id
              설명: 이 이벤트가 발생한 AppOmni 테넌트의 ID.
              type: bigint
    - name: event
      required: true
      type: object
      필드:
        - 이름: created
          설명: 모니터링되는 서비스에서 이벤트가 생성된 것으로 보고된 날짜/시간.
          type: timestamp
          timeFormats:
            - rfc3339
          isEventTime: true
        - name: kind
          설명: 이벤트가 포함하는 정보 유형에 대한 고수준 정보로, 이벤트의 내용에 대해 구체적이지 않습니다.
          type: string
        - 이름: severity
          설명: 출처에 따른 이벤트의 수치적 심각도.
          type: bigint
    - name: message
      required: true
      설명: 이벤트에 대한 사람이 읽을 수 있는 요약.
      type: string
    - 이름: related
      required: true
      type: object
      필드:
        - 이름: ip
          설명: 이벤트와 관련된 IP 주소(IPv4 또는 IPv6).
          type: array
          element:
            type: string
            지표:
                - ip
        - name: user
          설명: 이벤트와 관련된 사용자 ID.
          type: array
          element:
            type: string
            지표:
                - 이메일
        - name: event
          설명: 이벤트와 관련된 이벤트 ID. `appomni.event.id`의 AppOmni 이벤트 ID를 반영합니다
          type: array
          element:
            type: string
        - 이름: services
          설명: 이벤트와 관련된 AppOmni 서비스 ID.
          type: object
          필드:
            - 이름: id
              type: array
              element:
                type: bigint
            - 이름: type
              type: array
              element:
                type: string
    - 이름: 룰
      required: true
      type: object
      필드:
        - 이름: name
          설명: 룰의 이름.
          type: string
        - 이름: ruleset
          설명: 룰이 할당된 룰셋의 이름.
          type: string
        - name: threat
          type: object
          필드:
            - 이름: framework
              설명: 위협의 전술 및 기술을 분류하는 데 사용된 위협 프레임워크의 이름.
              type: string
            - 이름: tactic
              type: object
              필드:
                - 이름: id
                  설명: 전술의 ID.
                  type: array
                  element:
                    type: string
                - 이름: name
                  설명: 전술의 이름.
                  type: array
                  element:
                    type: string
            - 이름: technique
              type: object
              필드:
                - 이름: id
                  설명: 기술의 ID.
                  type: array
                  element:
                    type: string
                - 이름: name
                  설명: 기술의 이름.
                  type: array
                  element:
                    type: string
        - name: uuid
          설명: 룰의 고유 UUID.
          type: string
        - name: version
          설명: 룰의 버전.
          type: bigint
    - name: version
      required: true
      설명: ACES의 버전.
      type: string
```

### AppOmni.Events

```yaml
스키마: AppOmni.Events
설명: AppOmni의 이벤트 로그
참고URL: https://labs.appomni.com/aces/event.html
필드:
    - 이름: timestamp
      required: true
      이름 변경:
        출처: '@timestamp'
      type: timestamp
      timeFormats:
        - rfc3339
      isEventTime: true
    - 이름: application
      type: object
      필드:
        - 이름: name
          type: string
        설명: 앱이 배포되었는지 여부
          type: array
          element:
            type: string
            지표:
                - url
    - 이름: appomni
      required: true
      type: object
      필드:
        - name: event
          type: object
          필드:
            - 이름: collected_time
              type: timestamp
              timeFormats:
                - rfc3339
            - 이름: dataset
              type: string
            - 이름: id
              type: string
            - 이름: ingestion_time
              type: timestamp
              timeFormats:
                - rfc3339
        - 이름: organization
          type: object
          필드:
            - 이름: id
              type: bigint
        - 이름: service
          type: object
          필드:
            - name: account_id
              type: string
            - 이름: id
              type: bigint
            - 이름: name
              type: string
            - 이름: type
              type: string
    - name: event
      required: true
      type: object
      필드:
        - name: url
          type: string
        - 이름: provider
          type: string
        - 이름: reason
          type: string
        - name: category
          type: array
          element:
            type: string
        - 이름: id
          type: string
        - name: outcome
          type: string
        - 이름: type
          type: array
          element:
            type: string
        - 이름: code
          type: string
        - 이름: action
          type: string
        - 이름: created
          type: timestamp
          timeFormats:
            - rfc3339
        - 이름: dataset
          type: string
        - 이름: ingested
          type: timestamp
          timeFormats:
            - rfc3339
        - name: kind
          type: string
        - 이름: module
          type: string
        - 이름: original
          type: string
    - 이름: labels
      type: object
      필드:
        - 이름: device_hash
          type: string
          지표:
            - sha256
        - 이름: threat_suspected
          유형: boolean
        - 이름: transaction_id
          type: string
        - 이름: transaction_type
          type: string
        - 이름: login_key
          type: string
        - 이름: application
          type: string
        - 이름: entities
          type: string
        - name: query
          type: string
        - 이름: row_count
          type: bigint
        - 이름: type
          type: string
        - 이름: repo_visibility
          type: string
        - 이름: is_hosted_runner
          유형: boolean
        - 이름: source_repository_default_branch
          type: string
        - 이름: public_repo
          유형: boolean
        - 이름: source_repository_created_date
          type: timestamp
          timeFormats:
            - rfc3339
        - 이름: source_repository_name
          type: string
        - 이름: organization_name
          type: string
    - name: message
      type: string
    - 이름: related
      type: object
      필드:
        - name: identity
          type: array
          element:
            type: string
        - 이름: resource
          type: array
          element:
            type: string
        - 이름: ip
          type: array
          element:
            type: string
            지표:
                - ip
        - name: user
          type: array
          element:
            type: string
            지표:
                - 이메일
    - 이름: resource
      type: object
      필드:
        - 이름: id
          type: string
        - 이름: name
          type: string
        - 이름: type
          type: string
    - 이름: service
      type: object
      필드:
        - 이름: name
          type: string
        - 이름: id
          type: bigint
    - 이름: session
      type: object
      필드:
        - name: kind
          type: string
        - 이름: id
          type: string
    - name: source
      type: object
      필드:
        - 이름: host
          type: object
          필드:
            - 이름: hostname
              type: string
            - 이름: os
              type: object
              필드:
                - 이름: name
                  type: string
        - 이름: as
          type: object
          필드:
            - 이름: country
              type: string
            - name: domain
              type: string
            - 이름: number
              type: bigint
            - 이름: organization
              type: object
              필드:
                - 이름: name
                  type: string
            - 이름: type
              type: string
        - 이름: geo
          type: object
          필드:
            - 이름: country_name
              type: string
            - 이름: city_name
              type: string
            - 이름: country_iso_code
              type: string
            - 이름: location
              type: object
              필드:
                - name: lat
                  type: float
                - name: lon
                  type: float
            - 이름: postal_code
              type: string
            - 이름: region_name
              type: string
            - 이름: timezone
              type: string
        ip: "ipv4"
          type: string
          지표:
            - ip
        - 이름: ip
          type: string
          지표:
            - ip
    allowContains: ["critical", "warning"]
      type: array
      element:
        type: string
    - name: user
      type: object
      필드:
        - 이름: full_name
          type: string
        - 이름: email
          type: string
          지표:
            - 이메일
        - name: target
          type: object
          필드:
            - 이름: email
              type: string
              지표:
                - 이메일
            - 이름: full_name
              type: string
            - 이름: id
              type: string
            - name: identity
              type: object
              필드:
                - 이름: id
                  type: string
                - 이름: admin
                  유형: boolean
                - 이름: email
                  type: string
                  지표:
                    - 이메일
                - 이름: elevated
                  유형: boolean
                - 이름: full_name
                  type: string
            - name: roles
              type: array
              element:
                type: string
            - 이름: name
              type: string
              지표:
                - 이메일
        - 이름: effective
          type: object
          필드:
            - name: hash
              type: string
        - 이름: id
          type: string
        - name: identity
          type: object
          필드:
            - 이름: id
              type: string
            - 이름: admin
              유형: boolean
            - 이름: email
              type: string
              지표:
                - 이메일
            - 이름: elevated
              유형: boolean
            - 이름: full_name
              type: string
        - name: roles
          type: array
          element:
            type: string
        - 이름: name
          type: string
          지표:
            - 이메일
    - name: user_agent
      type: object
      필드:
        - 이름: name
          type: string
        - 이름: os
          type: object
          필드:
            - 이름: name
              type: string
        - 이름: original
          type: string
    - name: version
      required: true
      type: string
```

### AppOmni.Policy

```yaml
스키마: AppOmni.Policy
설명: AppOmni의 정책 로그
참고URL: https://labs.appomni.com/aces/policy.html
필드:
    - 이름: message_type
      required: true
      type: string
    - name: version
      required: true
      type: string
    - 이름: stats
      로 표시할 수도 있습니다.
        출처: data.universal.stats
      type: object
      필드:
        - 이름: created_event_count
          required: true
          type: bigint
        - 이름: existing_event_count
          required: true
          type: bigint
        - 이름: existing_instances_count
          required: true
          type: bigint
        - 이름: instances_resolved_count
          required: true
          type: bigint
        - 이름: new_instances_count
          required: true
          type: bigint
        - 이름: reopened_event_count
          required: true
          type: bigint
        - 이름: resolved_event_count
          required: true
          type: bigint
        - 이름: total_instances_count
          required: true
          type: bigint
    - 이름: events
      로 표시할 수도 있습니다.
        출처: data.universal.events
      type: array
      element:
        type: object
        필드:
            - 이름: audit_date
              required: true
              type: timestamp
              timeFormats:
                - rfc3339
            - 이름: audit_id
              required: true
              type: bigint
            - 이름: automated
              required: true
              유형: boolean
            - 이름: control_id
              type: bigint
            - 이름: created
              required: true
              type: timestamp
              timeFormats:
                - rfc3339
            - 이름: existing_instances_count
              required: true
              type: bigint
            - 이름: external_id
              required: true
              type: string
            - 이름: finding_detail
              required: true
              type: string
            - 이름: id
              required: true
              type: string
            - 이름: implementation_id
              required: true
              type: string
            - 이름: last_activated
              required: true
              type: timestamp
              timeFormats:
                - rfc3339
            - 이름: new_instances_count
              required: true
              type: bigint
            - 이름: perspective_id
              required: true
              type: bigint
            - 이름: perspective_type
              required: true
              type: string
            - 이름: perspective_username
              required: true
              type: string
            - 이름: risk_score
              required: true
              type: bigint
            - 이름: rule_external_id
              type: bigint
            - 이름: rule_id
              required: true
              type: bigint
            - 이름: status
              required: true
              type: string
            - 이름: target_entity
              required: true
              type: object
              필드:
                - 이름: primary_target_api_name
                  type: string
                - 이름: primary_target_api_id
                  type: string
                - 이름: secondary_target_label
                  type: string
                - 이름: md_kind
                  type: string
                - 이름: md_version
                  type: string
                - 이름: primary_target_label
                  type: string
            - 이름: total_instances_count
              required: true
              type: bigint
    - 이름: policy_assessment
      로 표시할 수도 있습니다.
        출처: data.universal.policy_assessment
      type: object
      필드:
        - 이름: completion_date
          required: true
          type: timestamp
          timeFormats:
            - rfc3339
          isEventTime: true
        - 이름: created
          required: true
          type: timestamp
          timeFormats:
            - rfc3339
        - 이름: evaluation_stats
          required: true
          유형: json
        - 이름: failed_assessments
          required: true
          type: bigint
        - 이름: id
          required: true
          type: string
        - 이름: monitored_services
          required: true
          type: array
          element:
            type: object
            필드:
                - 이름: id
                  type: string
                - 이름: name
                  type: string
                참고 URL: https://api.slack.com/methods/team.integrationLogs
                  type: string
                설명: 작업을 수행하는 사용자의 사용자 이름.
                  type: string
                allowContains: ["critical", "warning"]
                  type: array
                  element:
                    type: object
                    필드:
                        - 이름: id
                          type: string
                        - 이름: name
                          type: string
                        - 이름: tag_type
                          type: string
        - 이름: target_assessment_count
          required: true
          type: bigint
    - 이름: policy
      로 표시할 수도 있습니다.
        출처: data.universal.policy
      type: object
      필드:
        - 이름: external_id
          required: true
          type: string
        - 이름: id
          required: true
          type: string
        - name: mode
          required: true
          type: string
        - 이름: name
          required: true
          type: string
        - 이름: policy_type
          required: true
          type: string
        - 이름: results_url
          required: true
          type: string
          지표:
            - url
        - name: role
          required: true
          type: string
        - name: url
          required: true
          type: string
          지표:
            - url
```
