IONIX Attack Surface Management 로그 수집

다음에서 지원:

이 문서에서는 웹훅을 사용하여 로그를 Google Security Operations로 푸시하도록 IONIX Attack Surface Management를 구성하는 방법을 설명합니다.

IONIX는 조직의 인터넷 연결 애셋과 디지털 공급망 전반에서 보안 노출을 탐색, 평가, 검증하는 외부 공격 표면 관리 (EASM) 플랫폼입니다. IONIX는 DNS 결과, PKI 문제, 클라우드 노출, 취약점에 대한 작업 항목을 제공하여 우선순위가 지정된 해결 워크플로를 제공합니다.

시작하기 전에

다음 기본 요건이 충족되었는지 확인합니다.

  • Google SecOps 인스턴스
  • IONIX 공격 표면 관리에서 로그 전송을 위한 HTTP POST 푸시 지원
  • Google Cloud 콘솔 액세스 (API 키 생성용)
  • 설정> 통합에 대한 관리자 액세스 권한이 있는 활성 IONIX 포털 계정

Google SecOps에서 웹훅 피드 만들기

피드 만들기

  1. SIEM 설정 > 피드로 이동합니다.
  2. 새 피드 추가를 클릭합니다.
  3. 다음 페이지에서 단일 피드 구성을 클릭합니다.
  4. 피드 이름 필드에 피드 이름을 입력합니다(예: IONIX ASM Logs).
  5. 소스 유형으로 Webhook을 선택합니다.
  6. 로그 유형으로 IONIX를 선택합니다.
  7. 다음을 클릭합니다.
  8. 다음 입력 파라미터의 값을 지정합니다.
    • 분할 구분 기호 (선택사항): 여러 줄로 된 이벤트를 분할할 구분 기호를 입력합니다. 일반적인 값:
      • \n - 줄바꿈 구분자 (NDJSON에 가장 일반적임)
      • 각 요청에 단일 이벤트가 포함된 경우 비워 둡니다.
    • 애셋 네임스페이스: 애셋 네임스페이스
    • 수집 라벨: 이 피드의 이벤트에 적용할 라벨
  9. 다음을 클릭합니다.
  10. 확정 화면에서 새 피드 구성을 검토한 다음 제출을 클릭합니다.

보안 비밀 키 생성 및 저장

피드를 만든 후 인증을 위한 보안 비밀 키를 생성해야 합니다.

  1. 피드 세부정보 페이지에서 보안 비밀 키 생성을 클릭합니다.
  2. 대화상자에 보안 비밀 키가 표시됩니다.
  3. 보안 비밀 키를 안전하게 복사하여 저장합니다.

피드 엔드포인트 URL 가져오기

  1. 피드의 세부정보 탭으로 이동합니다.
  2. 엔드포인트 정보 섹션에서 피드 엔드포인트 URL을 복사합니다.
  3. URL 형식은 다음과 같습니다.

    https://malachiteingestion-pa.googleapis.com/v2/unstructuredlogentries:batchCreate
    

    또는

    https://<REGION>-malachiteingestion-pa.googleapis.com/v2/unstructuredlogentries:batchCreate
    
  4. 다음 단계를 위해 이 URL을 저장합니다.

  5. 완료를 클릭합니다.

Google Cloud API 키 만들기

Google SecOps에는 인증을 위한 API 키가 필요합니다. Google Cloud 콘솔에서 제한된 API 키를 만듭니다.

API 키 만들기

  1. Google Cloud 콘솔 사용자 인증 정보 페이지로 이동합니다.
  2. 프로젝트 (Google SecOps 인스턴스와 연결된 프로젝트)를 선택합니다.
  3. 사용자 인증 정보 만들기 API 키를 클릭합니다.
  4. API 키가 생성되어 대화상자에 표시됩니다.
  5. API 키 수정을 클릭하여 키를 제한합니다.

API 키 제한

  1. API 키 설정 페이지에서 다음을 수행합니다.
    • 이름: 설명이 포함된 이름 (예: Google SecOps Webhook API Key)을 입력합니다.
  2. API 제한사항에서 다음을 실행합니다.
    1. 키 제한을 선택합니다.
    2. API 선택 드롭다운에서 Google SecOps API (또는 Chronicle API)를 검색하여 선택합니다.
  3. 저장을 클릭합니다.
  4. 페이지 상단의 API 키 필드에서 API 키 값을 복사합니다.
  5. API 키를 안전하게 저장합니다.

IONIX 공격 표면 관리 웹훅 구성

IONIX는 통합 프레임워크를 사용하여 HTTP POST를 통해 보안 이벤트 데이터를 외부 엔드포인트로 푸시하는 기능을 기본적으로 지원합니다. 통합은 IONIX 포털에서 구성되며 Splunk HEC 통합과 동일한 메커니즘을 사용하여 Google SecOps 웹훅 엔드포인트로 데이터를 푸시하도록 적용됩니다.

웹훅 URL 구성

  • Google SecOps 엔드포인트 URL과 API 키를 하나의 URL로 결합합니다.

    <ENDPOINT_URL>?key=<API_KEY>&secret=<SECRET_KEY>
    
    • 예:

      https://malachiteingestion-pa.googleapis.com/v2/unstructuredlogentries:batchCreate?key=AIzaSyD...&secret=abcd1234...
      

IONIX 포털에서 통합 구성

  1. IONIX 포털 (예: https://<your-portal-name>.ionix.com)에 로그인합니다.
  2. 설정 > 통합으로 이동합니다.
  3. Splunk 통합 > 설정을 클릭합니다.
  4. 다음 구성 세부정보를 제공합니다.

    • HEC 토큰: Google SecOps 웹훅 피드에서 생성된 보안 비밀 키를 입력합니다.
    • Splunk 서버: API 키가 쿼리 매개변수로 추가된 전체 Google SecOps 웹훅 엔드포인트 URL을 입력합니다. 다음 형식을 사용합니다.

      https://malachiteingestion-pa.googleapis.com/v2/unstructuredlogentries:batchCreate?key=<API_KEY>
      
  5. 푸시 간격을 구성하여 IONIX가 엔드포인트에 데이터를 전송하는 빈도를 설정합니다 (예: 60분마다).

  6. 환경과 관련된 추가 데이터 필드를 작성합니다.

  7. 저장을 클릭합니다.

  8. 통합 스위치를 사용 설정됨으로 전환하여 통합을 사용 설정합니다.

  9. 데이터는 푸시 간격 주기 내에 Google SecOps에 표시되기 시작합니다. 초기 데이터 전송에는 최대 1시간이 걸릴 수 있습니다.

대안: 맞춤 스크립트로 IONIX REST API 사용

기본 Splunk HEC 통합이 요구사항을 충족하지 않는 경우 IONIX REST API를 사용하여 데이터를 가져와 Google SecOps로 전달할 수 있습니다.

IONIX API 키 생성

  1. IONIX 포털에 로그인합니다.
  2. API 설정을 클릭합니다.
  3. 토큰의 이름을 입력합니다.
  4. 토큰 유형을 선택합니다.
    • 읽기 전용 (데이터 수집에 권장)
    • 읽기-쓰기
  5. 토큰의 만료일을 설정합니다.
  6. 토큰 만들기를 클릭합니다.
  7. 생성된 토큰을 복사하여 안전하게 저장합니다.

IONIX API 엔드포인트

다음 API 엔드포인트를 사용하여 IONIX에서 보안 데이터를 가져옵니다.

엔드포인트 설명
/api/v1/remediation/action-items/open/ 열린 작업 항목 (도메인, 루트 엔드포인트)
/api/v1/remediation/action-items/all/detailed 세부정보가 포함된 모든 작업 항목
/api/v1/discovery/org-assets/export-discovery-evidence 애셋 위험 및 검색 증거
/api/v1/discovery/org-assets 조직 애셋 (first_seen 날짜 포함)
/api/v1/tests 보안 테스트 결과
  • API 요청 예

    curl -X GET "https://api.portal.ionix.io/api/v1/remediation/action-items/all/detailed" \
        -H "Authorization: Token <IONIX_API_KEY>" \
        -H "Content-Type: application/json"
    

Google SecOps로 데이터 전달

  • IONIX API에서 데이터를 가져온 후 Google SecOps 웹훅 엔드포인트로 전달합니다.

    curl -X POST "<ENDPOINT_URL>?key=<API_KEY>&secret=<SECRET_KEY>" \
        -H "Content-Type: application/json" \
        -d @ionix_events.json
    

인증 방법 참조

Google SecOps 웹훅 피드는 여러 인증 방법을 지원합니다. 공급업체에서 지원하는 방법을 선택합니다.

공급업체에서 맞춤 HTTP 헤더를 지원하는 경우 이 방법을 사용하여 보안을 강화하세요.

  • 요청 형식:

    POST <ENDPOINT_URL> HTTP/1.1
    Content-Type: application/json
    x-goog-chronicle-auth: <API_KEY>
    x-chronicle-auth: <SECRET_KEY>
    
    {
            "event": "data",
            "timestamp": "2025-01-15T10:30:00Z"
    }
    

장점:

  • API 키 및 보안 비밀이 URL에 표시되지 않음
  • 더 안전함 (헤더가 웹 서버 액세스 로그에 기록되지 않음)
  • 공급업체에서 지원하는 경우 선호되는 방법

방법 2: 쿼리 매개변수

공급업체에서 맞춤 헤더를 지원하지 않는 경우 사용자 인증 정보를 URL에 추가하세요.

  • URL 형식:

    <ENDPOINT_URL>?key=<API_KEY>&secret=<SECRET_KEY>
    
    • 예:
    https://malachiteingestion-pa.googleapis.com/v2/unstructuredlogentries:batchCreate?key=AIzaSyD...&secret=abcd1234...
    
  • 요청 형식:

    POST <ENDPOINT_URL>?key=<API_KEY>&secret=<SECRET_KEY> HTTP/1.1
    Content-Type: application/json
    
    {
            "event": "data",
            "timestamp": "2025-01-15T10:30:00Z"
    }
    

단점:

  • URL에 사용자 인증 정보가 표시됨
  • 웹 서버 액세스 로그에 기록될 수 있음
  • 헤더보다 보안 수준이 낮음

방법 3: 하이브리드 (URL + 헤더)

일부 구성에서는 URL에 API 키를 사용하고 헤더에 비밀 키를 사용합니다.

  • 요청 형식:

    POST <ENDPOINT_URL>?key=<API_KEY> HTTP/1.1
    Content-Type: application/json
    x-chronicle-auth: <SECRET_KEY>
    
    {
            "event": "data",
            "timestamp": "2025-01-15T10:30:00Z"
    }
    

인증 헤더 이름

Google SecOps는 인증을 위해 다음 헤더 이름을 허용합니다.

  • API 키의 경우:

    • x-goog-chronicle-auth(권장)
    • X-Goog-Chronicle-Auth (대소문자 구분 안 함)
  • 보안 비밀 키:

    • x-chronicle-auth(권장)
    • X-Chronicle-Auth (대소문자 구분 안 함)

UDM 매핑 테이블

IONIX 로그 필드가 Google Security Operations 통합 데이터 모델 (UDM) 필드에 매핑되는 방식에 관한 자세한 내용은 지원되는 기본 파서 참조에서 IONIX 로그 유형을 검색하세요.

변경 로그

이 파서의 변경 로그 보기

도움이 더 필요하신가요? 커뮤니티 회원 및 Google SecOps 전문가에게 문의하여 답변을 받으세요.