Google Chronicle을 Google SecOps와 통합
이 문서에서는 Google Chronicle을 Google Security Operations와 통합하는 방법을 설명합니다.
사용 사례
Google Chronicle 통합은 Google SecOps 기능을 사용하여 다음 사용 사례를 지원합니다.
자동화된 피싱 조사 및 해결: 과거 이메일 데이터, 사용자 활동 로그, 위협 인텔리전스를 자동으로 쿼리하여 이메일의 적법성을 평가합니다. 자동화된 해결은 멀웨어 또는 정보 유출의 확산을 방지하여 분류 및 격리에 도움이 될 수 있습니다.
보안 알림 보강: 과거 사용자 행동 및 애셋 정보와 같은 이전 컨텍스트로 SIEM에서 생성된 알림을 보강합니다. 이를 통해 분석가는 사고를 포괄적으로 파악하여 더 빠르고 정보에 입각한 의사 결정을 내릴 수 있습니다.
Google SecOps 인사이트를 기반으로 한 위협 탐색: 관련 침해 지표 (IOC)에 대해 다른 보안 도구를 쿼리하는 프로세스를 자동화합니다. 이렇게 하면 잠재적인 보안 침해가 확대되기 전에 선제적으로 식별할 수 있습니다.
자동화된 사고 대응 플레이북: Google SecOps 데이터를 사용하여 손상된 시스템을 격리하고, 악성 IP 주소를 차단하고, 관련 이해관계자에게 알리는 사전 정의된 플레이북을 트리거합니다. 이를 통해 사고 대응 시간을 줄이고 보안 사고의 영향을 최소화할 수 있습니다.
규정 준수 보고 및 감사: Google SecOps에서 규정 준수 보고를 위한 보안 데이터 수집을 자동화하여 감사 프로세스를 간소화하고 수작업을 줄입니다.
시작하기 전에
Google SecOps에서 Google Chronicle 통합을 구성하기 전에 활성Google Cloud 프로젝트에 액세스할 수 있는지 확인하세요.
Backstory API를 Chronicle API로 마이그레이션
이 통합의 일부 새로운 기능과 작업은 Chronicle API만 지원하므로 모든 사용자가 Chronicle API를 사용하도록 배포를 마이그레이션하는 것이 좋습니다.
기존 Backstory API에서 Chronicle API로 마이그레이션하려면 다음 안내를 따르세요.
- Chronicle API 루트를 찾아 통합 구성, 커넥터, 작업 전반의
API Root매개변수에 입력합니다. - 인증 방법이 Google Cloud 프로젝트 유형에 지원되고 통합 구성, 커넥터, 작업에 동일하게 적용되는지 확인합니다.
Chronicle API 루트 찾기
Chronicle API에 액세스할 때는 통합, 커넥터, 작업 구성에 대한 환경의 고유한 API Root를 찾아야 합니다.
브라우저의 개발자 도구를 열고 Google SecOps 플랫폼으로 이동합니다.
조사 > 데이터 테이블을 선택합니다.
개발자 도구에서 네트워크 탭으로 이동하고 이름 열에서 항목(예:
dataTables?pageSize=1000)을 클릭합니다.세부정보 창에서 헤더를 선택하고 엔드포인트 및 쿼리 매개변수 (선택한 항목의 이름)를 제외한 일반 아래에 있는
Request URL값을 복사합니다.예를 들어 값이
https://{api_root}/v1alpha/projects/{project_id}/locations/{location}/instances/{customer_id}/dataTables?pageSize=1000이면 API 루트는/dataTables?pageSize=1000를 제외하고https://{api_root}/v1alpha/projects/{project_id}/locations/{location}/instances/{customer_id}입니다.
인증 방법 및 사용자 인증 정보 우선순위
Google Chronicle 통합, 커넥터, 작업은 다음 순서로 사용자 인증 정보를 평가합니다.
- 기본 제공 사용자 인증 정보:
Workload Identity Email및User's Service Account를 제공하지 않으면 자동으로 사용됩니다.- 사용 시기: 2025년 4분기 이후에 프로비저닝된 Google 관리 프로젝트 (기본값) 또는 기존 Backstory API를 사용하는 Google 관리 프로젝트에 가장 적합합니다. 서비스 계정 생성, 역할 할당 또는 키 관리가 필요하지 않습니다. Chronicle API를 사용하는 BYOP (Bring Your Own Project) 배포에는 기본 제공 사용자 인증 정보가 지원되지 않습니다.
- 2025년 4분기 이전 Google 관리 프로젝트: Chronicle API로 마이그레이션하는 경우 Google 지원팀에 문의하여 기본 제공 Chronicle API 사용자 인증 정보를 사용 설정하거나 워크로드 아이덴티티 또는 JSON 키를 사용하여 서비스 계정을 구성하세요.
- 워크로드 아이덴티티(
Workload Identity Email): 서비스 계정 이메일을 제공할 때 사용됩니다.Workload Identity Email및User's Service Account가 모두 채워진 경우 우선 적용됩니다.- 사용 시기: 서비스 계정이 필요한 경우(예: Bring Your Own Project (BYOP) 배포 또는 기본 제공 Chronicle API 사용자 인증 정보가 없는 2025년 4분기 이전 Google 관리 프로젝트)에 권장됩니다. JSON 키를 다운로드하거나 순환하지 않고 키 없는 인증을 제공하며 서비스 계정 키 생성을 제한하는 조직 정책을 준수합니다.
- 서비스 계정 JSON 키(
User's Service Account):Workload Identity Email가 비어 있고 서비스 계정 JSON 키를 제공하는 경우에만 사용됩니다.- 사용 시기: 서비스 계정이 필요하고 워크로드 아이덴티티 가장을 구성할 수 없는 경우에만 사용합니다. 정적 JSON 키 파일을 다운로드하고 관리해야 합니다.
워크로드 아이덴티티를 사용한 인증 (권장)
워크로드 아이덴티티를 사용하여 인증하려면 서비스 계정을 만들고, 필요한 역할을 할당하고, Google SecOps 인스턴스에 가장 권한을 부여합니다.
서비스 계정 만들기
Google Cloud 콘솔에서 사용자 인증 정보 페이지로 이동합니다.
사용자 인증 정보 만들기 메뉴에서 서비스 계정을 선택합니다.
서비스 계정 세부정보의 서비스 계정 이름 필드에 이름을 입력합니다.
선택사항: 서비스 계정 ID를 수정합니다.
만들고 계속하기를 클릭합니다. 권한 화면이 표시됩니다.
계속을 클릭합니다. 액세스 권한이 있는 주 구성원 화면이 표시됩니다.
완료를 클릭합니다.
Chronicle API: 서비스 계정에 필요한 역할
Chronicle API를 사용할 때 서비스 계정에 Chronicle API Editor 역할이 필요합니다.
Google Cloud 콘솔에서 사용자 인증 정보 페이지로 이동합니다.
서비스 계정에서 서비스 계정을 선택하고 권한 > 액세스 관리를 클릭합니다.
add역할 추가를 클릭하고
Chronicle API Editor역할을 선택합니다. 저장을 클릭합니다.
Google SecOps 인스턴스에 가장 권한 부여
Google SecOps 인스턴스에 서비스 계정을 가장할 수 있는 권한을 부여합니다.
Google SecOps에서 콘텐츠 허브 > 응답 통합으로 이동합니다.
구성 중인 통합을 선택하고
Workload Identity Email에 서비스 계정 이메일을 입력합니다.저장 > 테스트를 클릭합니다. 테스트가 실패할 것으로 예상됩니다.
Test 오른쪽에 있는 close_small를 클릭하고 오류 메시지에서
gke-init-python@PROJECT.iam.gserviceaccount.com또는soar-python@TENANT_PROJECT.iam.gserviceaccount.com를 검색합니다. 이 고유 이메일을 복사합니다 (Google SecOps 인스턴스를 식별함).서비스 계정으로 이동하여 프로젝트를 선택하고 서비스 계정을 선택합니다.
액세스 권한이 있는 주 구성원 > add액세스 권한 부여를 선택합니다.
주 구성원 추가에 복사한 값을 붙여넣습니다.
역할 추가에서
Service Account Token Creator(roles/iam.serviceAccountTokenCreator) 역할을 선택합니다.
서비스 계정 JSON 키로 인증
권장되는 워크로드 아이덴티티 방법 대신 서비스 계정 JSON 키를 사용하여 인증하려면 전용 서비스 계정을 만들고 JSON 키를 다운로드합니다.
Google Cloud 콘솔에서 IAM 및 관리자 > 서비스 계정으로 이동합니다.
서비스 계정 만들기를 선택하고 안내를 따릅니다.
새 서비스 계정의 이메일 주소를 선택하고 키 > 키 추가 > 새 키 만들기로 이동합니다.
키 유형으로
JSON을 선택하고 만들기를 클릭합니다. JSON 키 파일이 컴퓨터에 다운로드됩니다.Chronicle API를 사용할 때는 서비스 계정에
Chronicle API Editor역할을 할당합니다.
통합 매개변수
Google Chronicle 통합에는 다음 매개변수가 필요합니다.
| 매개변수 | 설명 |
|---|---|
UI Root |
필수 입력란입니다. Google SecOps 인터페이스의 기준 URL입니다. 케이스에서 Google SecOps로 다시 연결되는 직접 링크를 생성하는 데 사용됩니다. 기본값은 |
API Root |
필수 입력란입니다. Google SecOps 인스턴스의 API 기준 URL:
|
User's Service Account |
(선택사항) 인증에 사용되는 서비스 계정 JSON 키입니다. 지원되는 경우 기본 제공 사용자 인증 정보를 사용하려면 두 사용자 인증 정보 필드를 모두 비워 둡니다(인증 방법 및 사용자 인증 정보 우선순위 참조). |
Workload Identity Email |
(선택사항) 워크로드 아이덴티티 인증에 사용되는 서비스 계정 이메일입니다 (서비스 계정이 필요한 경우 권장). 두 사용자 인증 정보 필드가 모두 채워진 경우 우선 적용됩니다. 지원되는 경우 기본 제공 사용자 인증 정보를 사용하려면 두 사용자 인증 정보 필드를 모두 비워 둡니다(인증 방법 및 사용자 인증 정보 우선순위 참조). |
Verify SSL |
필수 입력란입니다. 선택하면 통합에서 Google SecOps 서버에 연결할 때 SSL 인증서를 검증합니다. 기본적으로 사용 설정됩니다. |
Google SecOps에서 통합을 구성하는 방법에 대한 안내는 통합 구성을 참조하세요.
필요한 경우 이후 단계에서 변경할 수 있습니다. 통합 인스턴스를 구성한 후 플레이북에서 사용할 수 있습니다. 여러 인스턴스를 구성하고 지원하는 방법에 관한 자세한 내용은 다중 인스턴스 지원을 참고하세요.
작업
작업에 대한 자세한 내용은 Workdesk의 대기 중인 작업에 응답 및 케이스에서 수동 작업 실행을 참고하세요.
관심 목록에 항목 추가
관심 목록에 항목 추가 작업을 사용하여 지정된 항목을 Google SecOps의 기존 위험 분석 관심 목록에 추가합니다.
이 작업은 Google SecOps 항목에서 실행되지 않습니다.
작업 입력
관심 목록에 항목 추가 작업에는 다음 매개변수가 필요합니다.
| 매개변수 | 설명 |
|---|---|
Watchlist Name |
필수 입력란입니다. 항목을 추가할 위험 분석 관심 목록의 이름입니다. |
Entry |
필수 입력란입니다. 관심 목록에 추가할 항목을 나타내는 JSON 객체입니다. JSON 구조에는 항목 값, 항목 유형, 선택적 네임스페이스가 필요합니다. 기본값은 다음과 같습니다.
[
{
"entity": "",
"type": "ASSET_IP_ADDRESS/MAC/HOSTNAME/PRODUCT_SPECIFIC_ID/USERNAME/EMAIL/EMPLOYEE_ID/WINDOWS_SID/PRODUCT_OBJECT_ID",
"namespace": "Optional"
}
]
|
작업 출력
관심 목록에 항목 추가 작업은 다음 출력을 제공합니다.
| 작업 출력 유형 | 가용성 |
|---|---|
| 케이스 월 연결 | 사용 불가 |
| 케이스 월 링크 | 사용 불가 |
| 케이스 월 테이블 | 사용 불가 |
| 보강 테이블 | 사용 불가 |
| JSON 결과 | 사용 가능 |
| 출력 메시지 | 사용 가능 |
| 스크립트 결과 | 사용 가능 |
JSON 결과
다음 예시에서는 관심 목록에 항목 추가 작업을 사용할 때 수신되는 JSON 결과 출력을 보여줍니다.
[
{
"namespace": "Yuriy",
"asset": {
"hostname": "koko"
}
},
{
"namespace": "Yuriy",
"asset": {
"hostname": "koko"
}
}
]
출력 메시지
관심 목록에 항목 추가 작업은 다음 출력 메시지를 반환할 수 있습니다.
| 출력 메시지 | 메시지 설명 |
|---|---|
|
작업이 완료되었습니다. |
Error executing action "Add Entry To Watchlist". Reason:
ERROR_REASON |
작업이 실패했습니다. 서버, 입력 매개변수 또는 사용자 인증 정보에 대한 연결을 확인하세요. |
스크립트 결과
다음 표에는 관심 목록에 항목 추가 작업을 사용할 때 스크립트 결과 출력 값이 나와 있습니다.
| 스크립트 결과 이름 | 값 |
|---|---|
is_success |
true 또는 false |
데이터 테이블에 행 추가
데이터 테이블에 행 추가 작업을 사용하여 Google SecOps의 데이터 테이블에 행을 추가합니다.
이 작업은 Google SecOps 항목에서 실행되지 않습니다.
작업 입력
작업을 구성하려면 다음 매개변수를 사용합니다.
| 매개변수 | 설명 |
|---|---|
Data Table Name |
필수 입력란입니다. 업데이트할 데이터 테이블의 표시 이름입니다. |
Rows |
필수 입력란입니다. 추가할 행에 대한 정보가 포함된 JSON 객체 목록입니다. 예를 들면 다음과 같습니다.
[
{
"columnName1": "value1",
"columnName2": "value2",
},
{
"columnName1": "value1",
"columnName2": "value2",
}
]
|
작업 출력
데이터 테이블에 행 추가 작업은 다음 출력을 제공합니다.
| 작업 출력 유형 | 가용성 |
|---|---|
| 케이스 월 연결 | 사용 불가 |
| 케이스 월 링크 | 사용 불가 |
| 케이스 월 테이블 | 사용 불가 |
| 보강 테이블 | 사용 불가 |
| 항목 통계 | 사용 불가 |
| JSON 결과 | 사용 가능 |
| 출력 메시지 | 사용 가능 |
| 스크립트 결과 | 사용 가능 |
JSON 결과
다음 예시는 데이터 테이블에 행 추가 작업에서 반환하는 샘플 JSON 결과를 보여줍니다.
{
"name": "projects/365235532452/locations/us/instances/df6f1958-0381-41f9-8794-08a3229744a5/dataTables/data_table/dataTableRows/840d18a85944833e1b97ed6d2fb11377",
"values": {
"columnName1": "asda",
"columnName2": "asdasd",
"columnName3": "zxczxc"
}
}
출력 메시지
데이터 테이블에 행 추가 작업은 다음 출력 메시지를 제공합니다.
| 출력 메시지 | 메시지 설명 |
|---|---|
Successfully added rows to the data table
DATA_TABLE_NAME in
Google SecOps. |
작업이 완료되었습니다. |
Error executing action "Add Rows to Data Table". Reason:
ERROR_REASON |
작업이 실패했습니다.
서버, 입력 매개변수 또는 사용자 인증 정보에 대한 연결을 확인하세요. |
스크립트 결과
다음 표에서는 데이터 테이블에 행 추가 작업을 사용할 때 스크립트 결과 출력의 값을 설명합니다.
| 스크립트 결과 이름 | 값 |
|---|---|
is_success |
true 또는 false |
참조 목록에 값 추가
참조 목록에 값 추가 작업을 사용하여 Google SecOps의 참조 목록에 값을 추가합니다.
이 작업은 Google SecOps 항목에서 실행되지 않습니다.
작업 입력
작업을 구성하려면 다음 매개변수를 사용합니다.
| 매개변수 | 설명 |
|---|---|
Reference List Name |
필수 입력란입니다. 업데이트할 참조 목록의 이름입니다. |
Values |
필수 입력란입니다. 참조 목록에 추가할 쉼표로 구분된 값 목록입니다. |
작업 출력
참조 목록에 값 추가 작업은 다음 출력을 제공합니다.
| 작업 출력 유형 | 가용성 |
|---|---|
| 케이스 월 연결 | 사용 불가 |
| 케이스 월 링크 | 사용 불가 |
| 케이스 월 테이블 | 사용 불가 |
| 보강 테이블 | 사용 불가 |
| 항목 통계 | 사용 불가 |
| JSON 결과 | 사용 가능 |
| 출력 메시지 | 사용 가능 |
| 스크립트 결과 | 사용 가능 |
JSON 결과
다음 예시에서는 Backstory API와 함께 참조 목록에 값 추가 작업을 사용할 때 수신되는 JSON 결과 출력을 설명합니다.
{
"name": "list_name",
"description": "description of the list",
"lines": [
"192.0.2.0/24",
"198.51.100.0/24"
],
"create_time": "2020-11-20T17:18:20.409247Z",
"content_type": "CIDR"
}
다음 예시에서는 Chronicle API와 함께 참조 목록에 값 추가 작업을 사용할 때 수신되는 JSON 결과 출력을 보여줍니다.
{
"name": "projects/PROJECT_ID/locations/us/instances/INSTANCE_ID/referenceLists/REFERENCE_LIST_NAME",
"displayName": "REFERENCE_LIST_NAME",
"revisionCreateTime": "2025-01-16T09:15:21.795743Z",
"description": "Test reference list",
"entries": [
{
"value": "example.com"
},
{
"value": "exampledomain.com"
}
],
"syntaxType": "REFERENCE_LIST_SYNTAX_TYPE_PLAIN_TEXT_STRING",
"scopeInfo": {
"referenceListScope": {}
},
"createTime": "2025-01-16T09:15:21.795743Z",
"lines": [
"example.com",
"exampledomain.com"
]
}
출력 메시지
참조 목록에 값 추가 작업은 다음 출력 메시지를 제공합니다.
| 출력 메시지 | 메시지 설명 |
|---|---|
Successfully added values to the reference list
REFERENCE_LIST_NAME. |
작업이 완료되었습니다. |
Error executing action "Add Values To Reference List". Reason:
ERROR_REASON |
작업이 실패했습니다.
서버, 입력 매개변수 또는 사용자 인증 정보에 대한 연결을 확인하세요. |
스크립트 결과
다음 표에서는 참조 목록에 값 추가 작업을 사용할 때 스크립트 결과 출력의 값을 설명합니다.
| 스크립트 결과 이름 | 값 |
|---|---|
is_success |
true 또는 false |
Gemini에게 물어보기
Gemini에게 물어보기 작업을 사용하여 Google SecOps의 Gemini에 텍스트 프롬프트를 전송합니다.
이 작업은 Google SecOps 항목에서 실행되지 않습니다.
처리 한도 및 제한 시간
이 작업은 Google SecOps 파이프라인 내의 처리 제약조건에 따라 달라집니다. 이러한 제약조건을 초과하는 작업은 일반적으로 503 Service Unavailable 오류를 발생시킵니다.
성공적으로 실행하려면 요청이 다음 사양을 준수해야 합니다.
제한 시간: 인텐트 인식의 제한 시간은 30초입니다. 이 처리 시간을 초과하는 대규모 요약 작업이나 복잡한 프롬프트는 작업을 실패하게 만듭니다.
응답 생성 한도: 생성 단계는 최대 28,000개의 토큰으로 제한됩니다.
작업 입력
Gemini에게 물어보기 작업에는 다음 매개변수가 필요합니다.
| 매개변수 | 설명 |
|---|---|
Automatic Opt-in |
(선택사항) 선택하면 플레이북이 수동 확인 없이 Gemini 대화에 사용자를 자동으로 선택합니다. 기본적으로 사용 설정됩니다. |
Prompt |
필수 입력란입니다. Gemini에 전송할 초기 텍스트 프롬프트 또는 질문입니다. |
작업 출력
Gemini에게 물어보기 작업은 다음 출력을 제공합니다.
| 작업 출력 유형 | 가용성 |
|---|---|
| 케이스 월 연결 | 사용 불가 |
| 케이스 월 링크 | 사용 불가 |
| 케이스 월 테이블 | 사용 불가 |
| 보강 테이블 | 사용 불가 |
| 항목 통계 | 사용 불가 |
| JSON 결과 | 사용 가능 |
| 출력 메시지 | 사용 가능 |
| 스크립트 결과 | 사용 가능 |
JSON 결과
다음 예시에서는 Gemini에게 물어보기 작업을 사용할 때 수신되는 JSON 결과 출력을 설명합니다.
{
{
"name": "projects/365235532452/locations/us/instances/df6f1958-0381-41f9-8794-08a3229744a5/users/me/conversations/db3b0fc2-94f8-42ae-b743-c3693f593269/messages/b58e3186-e697-4400-9da8-8ef252a20bd9",
"input": {
"body": "Is IP 159.138.84.217 malicious? What can you tell me about it?"
},
"responses": [
{
"blocks": [
{
"blockType": "HTML",
"htmlContent": {
"privateDoNotAccessOrElseSafeHtmlWrappedValue": "<p>The IP address 159.138.84.217 is associated with malware and threat actors.</p>\n<ul>\n<li>It is an IPv4 indicator.</li>\n<li>It is associated with BEACON malware.</li>\n<li>It is categorized as malware-Backdoor.</li>\n<li>It has a low confidence, high severity threat rating.</li>\n<li>VirusTotal's IP Address Report indicates the network for this IP is 159.138.80.0/20, and the IP is associated with HUAWEI CLOUDS in Singapore.</li>\n<li>VirusTotal's last analysis on April 22, 2025, showed 8 malicious detections out of 94 sources.</li>\n</ul>\n<p>I might have more details for a question with more context (e.g., what is the source of the IP, what type of network traffic is associated with the IP).</p>\n"
}
}
],
"references": [
{
"blockType": "HTML",
"htmlContent": {
"privateDoNotAccessOrElseSafeHtmlWrappedValue": "<ol>\n<li><a href=\"https://advantage.mandiant.com/indicator/ipv4/159.138.84.217\" target=\"_blank\">Mandiant - indicator - 159.138.84.217</a></li>\n</ol>\n"
}
}
],
"groundings": [
"IP address 159.138.84.217 malicious cybersecurity",
"IP address 159.138.84.217 threat intelligence"
]
}
],
"createTime": "2025-05-16T11:31:36.660538Z"
}
}
출력 메시지
Gemini에게 물어보기 작업은 다음 출력 메시지를 제공합니다.
| 출력 메시지 | 메시지 설명 |
|---|---|
Successfully executed a prompt in Google SecOps. |
작업이 완료되었습니다. |
Error executing action "GoogleChronicle - Ask Gemini".
Reason: ERROR_REASON |
작업이 실패했습니다.
서버, 입력 매개변수 또는 사용자 인증 정보에 대한 연결을 확인하세요. |
스크립트 결과
다음 표에서는 Gemini에게 물어보기 작업을 사용할 때 스크립트 결과 출력의 값을 설명합니다.
| 스크립트 결과 이름 | 값 |
|---|---|
is_success |
true 또는 false |
도메인 보강 - 지원 중단됨
도메인 보강 작업을 사용하여 Google SecOps의 IoC 정보를 사용해 도메인을 보강합니다.
이 작업은 다음 Google SecOps 항목에서 실행됩니다.
URLHostname
작업 입력
도메인 보강 작업에는 다음 매개변수가 필요합니다.
| 매개변수 | 설명 |
|---|---|
Create Insight |
선택하면 작업에서 항목에 대한 정보가 포함된 통계를 만듭니다. 기본적으로 사용 설정됩니다. |
Only Suspicious Insight |
선택하면 작업에서 의심스러운 것으로 표시된 항목에 대한 통계만 만듭니다. 기본적으로 사용 설정되지 않습니다. 이 매개변수를 선택하는 경우 |
Lowest Suspicious Severity |
필수 입력란입니다. 도메인을 의심스러운 것으로 신고하는 데 필요한 도메인과 관련된 가장 낮은 심각도입니다. 기본값은
|
Mark Suspicious N/A Severity |
필수 입력란입니다. 선택되어 있고 심각도에 대한 정보를 사용할 수 없는 경우 작업은 항목을 의심스러운 것으로 표시합니다. |
작업 출력
도메인 보강 작업은 다음 출력을 제공합니다.
| 작업 출력 유형 | 가용성 |
|---|---|
| 케이스 월 연결 | 사용 불가 |
| 케이스 월 링크 | 사용 불가 |
| 케이스 월 테이블 | 사용 가능 |
| 보강 테이블 | 사용 가능 |
| 항목 통계 | 사용 불가 |
| JSON 결과 | 사용 가능 |
| 출력 메시지 | 사용 가능 |
| 스크립트 결과 | 사용 가능 |
케이스 월 테이블
도메인 보강 작업은 다음 표를 제공합니다.
이름: ENTITY_IDENTIFIER
열:
- 소스
- 심각도
- 카테고리
- 신뢰도
항목 보강
도메인 보강 작업은 다음 항목 보강 로직을 지원합니다.
| 보강 필드 | 로직 (적용 시기) |
|---|---|
severity |
JSON으로 제공되는 경우 |
average_confidence |
JSON으로 제공되는 경우 |
related_domains |
JSON으로 제공되는 경우 |
categories |
JSON으로 제공되는 경우 |
sources |
JSON으로 제공되는 경우 |
first_seen |
JSON으로 제공되는 경우 |
last_seen |
JSON으로 제공되는 경우 |
report_link |
JSON으로 제공되는 경우 |
JSON 결과
다음 예시에서는 Backstory API와 함께 도메인 보강 작업을 사용할 때 수신되는 JSON 결과 출력을 설명합니다.
{
{
"sources": [
{
"source": "ET Intelligence Rep List",
"confidenceScore": {
"normalizedConfidenceScore": "Low",
"intRawConfidenceScore": 0
},
"rawSeverity": "High",
"category": "Malware Command and Control Server"
}
],
"iocIngestTime": "2021-01-26T17:00:00Z",
"firstSeenTime": "2018-10-03T00:03:53Z",
"lastSeenTime": "2022-02-09T10:52:21.229Z",
"uri": [
"https://INSTANCE/domainResults?domain=example.net&selectedList=DomainViewDistinctAssets&whoIsTimestamp=2022-02-09T11%3A51%3A52.393783515Z"
]
}
}
다음 예시에서는 Chronicle API와 함께 도메인 보강 작업을 사용할 때 수신되는 JSON 결과 출력을 보여줍니다.
[
{
"Entity": "example.com",
"EntityResult": {
"sources": [
{
"category": "Indicator was published in publicly available sources",
"firstActiveTime": "1970-01-01T00:00:01Z",
"lastActiveTime": "9999-12-31T23:59:59Z",
"addresses": [
{
"domain": "example.com"
}
],
"rawSeverity": "medium",
"confidenceScore": {
"strRawConfidenceScore": "100"
}
},
{
"category": "Phishing",
"firstActiveTime": null,
"lastActiveTime": "2020-11-27T14:31:37Z",
"addresses": [
{
"domain": "example.com"
},
{
"ipAddress": "IP_ADDRESS"
}
],
"rawSeverity": "high",
"confidenceScore": {
"strRawConfidenceScore": "high"
}
},
{
"category": "Indicator was published in publicly available sources",
"firstActiveTime": "1970-01-01T00:00:01Z",
"lastActiveTime": "9999-12-31T23:59:59Z",
"addresses": [
{
"domain": "example.com"
}
],
"rawSeverity": "medium",
"confidenceScore": {
"strRawConfidenceScore": "100"
}
}
],
"feeds": [
{
"metadata": {
"title": "Mandiant Open Source Intelligence",
"description": "Open Source Intel IoC",
"confidenceScoreBucket": {
"rangeEnd": 100
}
},
"iocs": [
{
"domainAndPorts": {
"domain": "example.com"
},
"categorization": "Indicator was published in publicly available sources",
"activeTimerange": {
"start": "1970-01-01T00:00:01Z",
"end": "9999-12-31T23:59:59Z"
},
"confidenceScore": "100",
"rawSeverity": "Medium"
}
]
},
{
"metadata": {
"title": "ESET Threat Intelligence",
"description": "ESET Threat Intelligence"
},
"iocs": [
{
"domainAndPorts": {
"domain": "example.com"
},
"categorization": "Phishing",
"activeTimerange": {
"end": "2020-11-27T14:31:37Z"
},
"ipAndPorts": {
"ipAddress": "IP_ADDRESS"
},
"confidenceScore": "High",
"rawSeverity": "High"
}
]
},
{
"metadata": {
"title": "Mandiant Active Breach Intelligence",
"description": "Mandiant Active Breach IoC",
"confidenceScoreBucket": {
"rangeEnd": 100
}
},
"iocs": [
{
"domainAndPorts": {
"domain": "example.com"
},
"categorization": "Indicator was published in publicly available sources",
"activeTimerange": {
"start": "1970-01-01T00:00:01Z",
"end": "9999-12-31T23:59:59Z"
},
"confidenceScore": "100",
"rawSeverity": "Medium"
}
]
}
]
}
}
]
출력 메시지
도메인 보강 작업은 다음 출력 메시지를 제공합니다.
| 출력 메시지 | 메시지 설명 |
|---|---|
Successfully enriched the following domain in Google Chronicle:
LIST_OF_IDS |
작업이 완료되었습니다. |
Error executing action "Enrich Domain". Reason:
ERROR_REASON |
작업이 실패했습니다. 서버, 입력 매개변수 또는 사용자 인증 정보에 대한 연결을 확인하세요. |
스크립트 결과
다음 표에서는 도메인 보강 작업을 사용할 때 스크립트 결과 출력 값을 설명합니다.
| 스크립트 결과 이름 | 값 |
|---|---|
is_success |
true 또는 false |
항목 보강
항목 보강 작업을 사용하여 지정된 항목 유형의 추가 컨텍스트 및 속성을 Google SecOps에 쿼리합니다. 이 작업은 외부 인텔리전스를 통합하여 위협 조사 데이터를 향상시킵니다.
이 작업은 다음 Google SecOps 항목에서 실행됩니다.
DomainFile HashHostnameIP AddressURL(URL에서 도메인 추출)UserEmail(이메일 정규 표현식이 있는 사용자 항목)
작업 입력
항목 보강 작업에는 다음 매개변수가 필요합니다.
| 매개변수 | 설명 |
|---|---|
Namespace |
(선택사항) 보강할 항목의 논리적 그룹화 또는 범위입니다. 선택하지 않으면 보강이 기본 네임스페이스 또는 액세스 가능한 모든 네임스페이스의 항목에 적용됩니다. 항목이 처리되려면 이 네임스페이스에 속해야 합니다. |
Time Frame |
(선택사항) 상대적 기간 (예: 이 매개변수는 |
Start Time |
(선택사항) ISO 8601 형식의 보강 기간 시작 시간입니다.
|
End Time |
(선택사항) ISO 8601 형식의 보강 기간 절대 종료 시간입니다.
|
작업 출력
항목 보강 작업은 다음 출력을 제공합니다.
| 작업 출력 유형 | 가용성 |
|---|---|
| 케이스 월 연결 | 사용 불가 |
| 케이스 월 링크 | 사용 불가 |
| 케이스 월 테이블 | 사용 불가 |
| 보강 테이블 | 사용 가능 |
| JSON 결과 | 사용 가능 |
| 출력 메시지 | 사용 가능 |
| 스크립트 결과 | 사용 가능 |
| 보강 필드 | 소스 (JSON 키) | 적용 범위 |
|---|---|---|
GoogleSecOps_related_entities |
related_entities 수 | JSON 결과에서 사용할 수 있는 경우 |
GoogleSecOps_alert_count_ruleName |
특정 규칙마다 {alertCounts.count} | JSON 결과에서 사용할 수 있는 경우 |
GoogleSecOps_first_seen |
metric.firstSeen |
JSON 결과에서 사용할 수 있는 경우 |
GoogleSecOps_last_seen |
metric.lastSeen |
JSON 결과에서 사용할 수 있는 경우 |
GoogleSecOps_flattened_key_under_entity |
"entity" 객체 아래의 중첩 구조에서 평면화된 키 값입니다. |
JSON 결과에서 사용할 수 있는 경우 |
JSON 결과
다음 예시는 항목 보강 작업을 사용할 때 수신되는 JSON 결과 출력을 보여줍니다.
[
{
"Entity": "HTTP://MARKOSSOLOMON.COM/F1Q7QX.PHP",
"EntityResult": {
"name": "projects/365235532452/locations/us/instances/df6f1958-0381-41f9-8794-08a3229744a5/entities/ChFtYXJrb3Nzb2xvbW9uLmNvbRDIAQ",
"metadata": { "entityType": "DOMAIN_NAME" },
"entity": {
"name": "projects/365235532452/locations/us/instances/df6f1958-0381-41f9-8794-08a3229744a5/entities/ChFtYXJrb3Nzb2xvbW9uLmNvbRDIAQ",
"metadata": { "entityType": "DOMAIN_NAME" },
"entity": {
"domain": {
"name": "markossolomon.com",
"firstSeenTime": "1970-01-01T00:00:00Z",
"lastSeenTime": "1970-01-01T00:00:00Z",
"registrar": "NameCheap, Inc.",
"creationTime": "2013-12-06T02:41:09Z",
"updateTime": "2019-11-06T11:48:33Z",
"expirationTime": "2020-12-06T02:41:09Z",
"registrant": {
"userDisplayName": "WhoisGuard Protected",
"emailAddresses": [
"58d09cb5035042e9920408f8bafd0869.protect@whoisguard.com"
],
"personalAddress": { "countryOrRegion": "PANAMA" },
"companyName": "WhoisGuard, Inc."
}
}
}
},
"timeline": {
"buckets": [
{},
{},
{},
{},
{},
{},
{},
{},
{},
{},
{},
{},
{},
{},
{},
{}
],
"bucketSize": "172800s"
}
}
},
{
"Entity": "npatni-sysops",
"EntityResult": {
"name": "projects/365235532452/locations/us/instances/df6f1958-0381-41f9-8794-08a3229744a5/entities/Cg1ucGF0bmktc3lzb3BzEGYaBVl1cml5IhsKCwiC-OzCBhCAvYMUEgwIqvnnwwYQgMyI4QE",
"metadata": {
"entityType": "ASSET",
"interval": {
"startTime": "2025-06-25T00:00:02.042Z",
"endTime": "2025-07-18T07:50:02.472Z"
}
},
"entity": {
"name": "projects/365235532452/locations/us/instances/df6f1958-0381-41f9-8794-08a3229744a5/entities/Cg1ucGF0bmktc3lzb3BzEGYaBVl1cml5IhsKCwiC-OzCBhCAvYMUEgwIqvnnwwYQgMyI4QE",
"metadata": {
"entityType": "ASSET",
"interval": {
"startTime": "2025-06-25T00:00:02.042Z",
"endTime": "2025-07-18T07:50:02.472Z"
}
},
"entity": {
"namespace": "Yuriy",
"asset": { "hostname": "npatni-sysops" }
},
"metric": {
"firstSeen": "2025-06-25T00:00:02.042Z",
"lastSeen": "2025-07-18T07:50:02.472Z"
}
},
"metric": {
"firstSeen": "2025-06-25T00:00:02.042Z",
"lastSeen": "2025-07-18T07:50:02.472Z"
},
"alertCounts": [
{ "rule": "rule_Pavel_test_Risk_score", "count": "329" },
{ "rule": "rule_testbucket", "count": "339" },
{ "rule": "pavel_test2_rule_1749239699456", "count": "332" }
],
"timeline": {
"buckets": [
{},
{},
{},
{},
{},
{},
{},
{},
{},
{},
{},
{},
{},
{},
{},
{ "alertCount": 1000 }
],
"bucketSize": "172800s"
}
}
},
{
"Entity": "exlab2019-ad",
"EntityResult": {
"name": "projects/365235532452/locations/us/instances/df6f1958-0381-41f9-8794-08a3229744a5/entities/CgxleGxhYjIwMTktYWQQZhoFWXVyaXkiGwoMCLv57MIGEMCp7qgDEgsI8PTnwwYQwLD6SA",
"metadata": {
"entityType": "ASSET",
"interval": {
"startTime": "2025-06-25T00:03:07.891Z",
"endTime": "2025-07-18T07:40:32.153Z"
}
},
"entity": {
"name": "projects/365235532452/locations/us/instances/df6f1958-0381-41f9-8794-08a3229744a5/entities/CgxleGxhYjIwMTktYWQQZhoFWXVyaXkiGwoMCLv57MIGEMCp7qgDEgsI8PTnwwYQwLD6SA",
"metadata": {
"entityType": "ASSET",
"interval": {
"startTime": "2025-06-25T00:03:07.891Z",
"endTime": "2025-07-18T07:40:32.153Z"
}
},
"entity": {
"namespace": "Yuriy",
"asset": { "hostname": "exlab2019-ad" }
},
"metric": {
"firstSeen": "2025-06-25T00:03:07.891Z",
"lastSeen": "2025-07-18T07:40:32.153Z"
}
},
"metric": {
"firstSeen": "2025-06-25T00:03:07.891Z",
"lastSeen": "2025-07-18T07:40:32.153Z"
},
"alertCounts": [
{ "rule": "pavel_test2_rule_1749239699456", "count": "319" },
{ "rule": "rule_testbucket", "count": "360" },
{ "rule": "rule_Pavel_test_Risk_score", "count": "321" }
],
"timeline": {
"buckets": [
{},
{},
{},
{},
{},
{},
{},
{},
{},
{ "alertCount": 26 },
{ "alertCount": 175 },
{ "alertCount": 185 },
{ "alertCount": 195 },
{ "alertCount": 182 },
{ "alertCount": 168 },
{ "alertCount": 69 }
],
"bucketSize": "172800s"
}
}
},
{
"Entity": "172.30.202.229",
"EntityResult": {
"name": "projects/365235532452/locations/us/instances/df6f1958-0381-41f9-8794-08a3229744a5/entities/Cg4xNzIuMzAuMjAyLjIyORBkGgVZdXJpeSIbCgwIu_nswgYQwKnuqAMSCwjw9OfDBhDAsPpI",
"metadata": {
"entityType": "ASSET",
"interval": {
"startTime": "2025-06-25T00:03:07.891Z",
"endTime": "2025-07-18T07:40:32.153Z"
}
},
"entity": {
"name": "projects/365235532452/locations/us/instances/df6f1958-0381-41f9-8794-08a3229744a5/entities/Cg4xNzIuMzAuMjAyLjIyORBkGgVZdXJpeSIbCgwIu_nswgYQwKnuqAMSCwjw9OfDBhDAsPpI",
"metadata": {
"entityType": "ASSET",
"interval": {
"startTime": "2025-06-25T00:03:07.891Z",
"endTime": "2025-07-18T07:40:32.153Z"
}
},
"entity": {
"namespace": "Yuriy",
"asset": { "ip": ["172.30.202.229"] }
},
"metric": {
"firstSeen": "2025-06-25T00:03:07.891Z",
"lastSeen": "2025-07-18T07:40:32.153Z"
}
},
"metric": {
"firstSeen": "2025-06-25T00:03:07.891Z",
"lastSeen": "2025-07-18T07:40:32.153Z"
},
"alertCounts": [
{ "rule": "rule_Pavel_test_Risk_score", "count": "321" },
{ "rule": "rule_testbucket", "count": "360" },
{ "rule": "pavel_test2_rule_1749239699456", "count": "319" }
],
"timeline": {
"buckets": [
{},
{},
{},
{},
{},
{},
{},
{},
{},
{ "alertCount": 26 },
{ "alertCount": 175 },
{ "alertCount": 185 },
{ "alertCount": 195 },
{ "alertCount": 182 },
{ "alertCount": 168 },
{ "alertCount": 69 }
],
"bucketSize": "172800s"
}
}
},
{
"Entity": "172.17.0.1",
"EntityResult": {
"name": "projects/365235532452/locations/us/instances/df6f1958-0381-41f9-8794-08a3229744a5/entities/CgoxNzIuMTcuMC4xEGQaBVl1cml5IhsKCwjOzre-BhDA1rU_EgwI9ZOMwAYQgPn82QM",
"metadata": {
"entityType": "ASSET",
"interval": {
"startTime": "2025-03-09T19:09:02.133Z",
"endTime": "2025-04-19T02:27:01.994Z"
}
},
"entity": {
"name": "projects/365235532452/locations/us/instances/df6f1958-0381-41f9-8794-08a3229744a5/entities/CgoxNzIuMTcuMC4xEGQaBVl1cml5IhsKCwjOzre-BhDA1rU_EgwI9ZOMwAYQgPn82QM",
"metadata": {
"entityType": "ASSET",
"interval": {
"startTime": "2025-03-09T19:09:02.133Z",
"endTime": "2025-04-19T02:27:01.994Z"
}
},
"entity": { "namespace": "Yuriy", "asset": { "ip": ["172.17.0.1"] } },
"metric": {
"firstSeen": "2025-03-09T19:09:02.133Z",
"lastSeen": "2025-04-19T02:27:01.994Z"
}
},
"metric": {
"firstSeen": "2025-03-09T19:09:02.133Z",
"lastSeen": "2025-04-19T02:27:01.994Z"
},
"timeline": {
"buckets": [
{},
{},
{},
{},
{},
{},
{},
{},
{},
{},
{},
{},
{},
{},
{},
{}
],
"bucketSize": "172800s"
}
}
},
{
"Entity": "911d039e71583a07320b32bde22f8e22",
"EntityResult": {
"name": "projects/365235532452/locations/us/instances/df6f1958-0381-41f9-8794-08a3229744a5/entities/CiA5MTFkMDM5ZTcxNTgzYTA3MzIwYjMyYmRlMjJmOGUyMhCwAiIVCgYItrj6ugYSCwi_9ufDBhDAyroV",
"metadata": {
"entityType": "FILE",
"interval": {
"startTime": "2024-12-15T09:07:02Z",
"endTime": "2025-07-18T07:43:59.045Z"
}
},
"entity": {
"name": "projects/365235532452/locations/us/instances/df6f1958-0381-41f9-8794-08a3229744a5/entities/CiA5MTFkMDM5ZTcxNTgzYTA3MzIwYjMyYmRlMjJmOGUyMhCwAiIVCgYItrj6ugYSCwi_9ufDBhDAyroV",
"metadata": {
"entityType": "FILE",
"interval": {
"startTime": "2024-12-15T09:07:02Z",
"endTime": "2025-07-18T07:43:59.045Z"
}
},
"entity": {
"file": {
"sha256": "bc866cfcdda37e24dc2634dc282c7a0e6f55209da17a8fa105b07414c0e7c527",
"md5": "911d039e71583a07320b32bde22f8e22",
"sha1": "ded8fd7f36417f66eb6ada10e0c0d7c0022986e9",
"size": "278528",
"fileType": "FILE_TYPE_PE_EXE",
"names": [
"C:\\Windows\\System32\\cmd.exe",
"cmd",
"Cmd.Exe",
"C:\\Windows\\system32\\cmd.exe",
"C:\\Windows\\SYSTEM32\\cmd.exe",
"cmd.exe",
"C:\\\\Windows\\\\System32\\\\cmd.exe",
"C:\\windows\\SYSTEM32\\cmd.exe",
"C:\\Users\\user\\AppData\\Local\\Temp\\wjxpour4.d0f\\cmd.exe",
"c:\\Windows\\System32\\cmd.exe",
"Utilman.exe",
"c:\\windows\\system32\\cmd.exe",
"System32/cmd.exe",
"UtilityVM/Files/Windows/System32/cmd.exe",
"KerishDoctor/Data/KerishDoctor/Restore/cmd.rst",
"cmd.exe_",
"C:\\WINDOWS\\SYSTEM32\\cmd.exe",
"Cmd.exe",
"Windows/System32/cmd.exe",
"sethc.exe",
"C:\\WINDOWS\\System32\\cmd.exe",
"esRzqurX.exe",
"rofl.png",
"F:\\Windows\\SYSTEM32\\cmd.exe",
"utilman.exe",
"C:\\Windows\\system32\\CMD.exe",
"sys32exe/cmd.exe",
"cmd.txt",
"C:\\WINDOWS\\system32\\cmd.exe",
"cmd2.exe",
"Utilman.exe.sc",
"uhrHRIv8.exe",
"C:\\windows\\system32\\cmd.exe",
"submitted_file",
"C:\\Users\\user\\AppData\\Local\\Temp\\n1qo0bq3.2tn\\KerishDoctor\\Data\\KerishDoctor\\Restore\\cmd.rst",
"J6ff7z0hLYo.exe",
"N:\\Windows\\System32\\cmd.exe",
"Q:\\Windows\\System32\\cmd.exe",
"C:\\Users\\user\\AppData\\Local\\Temp\\cmd.exe",
"C:\\Users\\<USER>\\AppData\\Local\\Temp\\cmd.exe",
"test.exe",
"68E2F01F8DE9EFCAE9C0DD893DF0E8C34E2B5C98A6C4073C9C9E8093743D318600.blob",
"8FCVE0Kq.exe",
"cmd (7).exe",
"cmd (8).exe",
"21455_16499564_bc866cfcdda37e24dc2634dc282c7a0e6f55209da17a8fa105b07414c0e7c527_cmd.exe",
"LinX v0.9.11 (Intel)/cmd.exe",
"C:\\Users\\user\\AppData\\Local\\Temp\\inbvmkaa.1xd\\LinX v0.9.11 (Intel)\\cmd.exe",
"cmd_b.exe",
"C:\\Users\\user\\AppData\\Local\\Temp\\sfd5bhoe.nqi\\cmd.exe",
"cMd.exe",
"Repl_Check.bat__",
"cmd.pdf",
"cmd.EXE",
"C:\\Users\\user\\AppData\\Local\\Temp\\uszjr42t.kda\\cmd.exe",
"LFepc1St.exe",
"firefox.exe",
"3BcnNlWV.exe",
"Utilman.exebak",
"utilman1.exe",
"1.exe",
"C:\\Users\\user\\AppData\\Local\\Temp\\ispvscgp.ep2\\sys32exe\\cmd.exe",
"cmd_1771019736291028992.exe",
"C:\\Users\\user\\AppData\\Local\\Temp\\xijgwqvd.54g\\cmd.exe",
"Sethc.exe",
"\\Device\\CdRom1\\DANFE352023067616112\\DANFE352023067616112.EXE",
"DANFE352023067616112.exe",
"file.exe",
"DANFE352023067616112/DANFE352023067616112.exe",
"C:\\Windows\\SYSTEM32\\Cmd.exe",
"pippo.exe",
"C:\\Windows\\System32\\sethc.exe",
"cmd.exe-bws024-windowsfolder",
"whatever.exe",
"sethc.exe.bak",
"S71dbOR1.exe",
"F:\\windows\\SYSTEM32\\cmd.exe",
"L6puhWL7.exe",
"DANFE357986551413927.exe",
"DANFE357666506667634.exe",
"\\Device\\CdRom1\\DANFE357666506667634\\DANFE357666506667634.EXE",
"\\Device\\CdRom1\\DANFE357986551413927\\DANFE357986551413927.EXE",
"\\Device\\CdRom1\\DANFE358567378531506\\DANFE358567378531506.EXE",
"\\Device\\CdRom1\\HtmlFactura3f48daa069f0e42253194ca7b51e7481DPCYKJ4Ojk\\HTMLFACTURA3F48DAA069F0E42253194CA7B51E7481DPCYKJ4OJK.EXE",
"\\Device\\CdRom1\\DANFE357410790837014\\DANFE357410790837014.EXE",
"\\Device\\CdRom1\\DANFE357702036539112\\DANFE357702036539112.EXE",
"winlogon.exe",
"AccessibilityEscalation.A' in file 'utilman.exe'",
"qpl9AqT0.exe",
"C:\\windows\\system32\\CMD.exe",
"C:\\po8az\\2po9hmc\\4v1b5.exe",
"batya.exe",
"nqAwJaba.exe",
"\\Device\\CdRom1\\DANFE356907191810758\\DANFE356907191810758.EXE",
"/Volumes/10_11_2023/DANFE356907191810758/DANFE356907191810758.exe",
"/Volumes/09_21_2023/DANFE357986551413927/DANFE357986551413927.exe",
"\\Device\\CdRom1\\DANFE355460800350113\\DANFE355460800350113.EXE",
"/Volumes/09_19_2023/DANFE355460800350113/DANFE355460800350113.exe",
"DANFE352429512050669.exe",
"/Volumes/04_15_2023/HtmlFacturaeb58f4396e2028a70905705291031e7b3dlvDNyGp3/HtmlFacturaeb58f4396e2028a70905705291031e7b3dlvDNyGp3.exe"
],
"firstSeenTime": "2024-12-15T09:07:02Z",
"lastSeenTime": "2025-07-18T07:43:59.045Z",
"lastAnalysisTime": "2025-07-16T10:06:40Z",
"signatureInfo": {
"sigcheck": {
"verificationMessage": "Signed",
"verified": true,
"signers": [{ "name": "Microsoft Windows" }]
}
},
"firstSubmissionTime": "2025-07-15T16:30:27Z"
}
},
"metric": {
"firstSeen": "2024-12-15T09:07:02Z",
"lastSeen": "2025-07-18T07:43:59.045Z"
}
},
"metric": {
"firstSeen": "2024-12-15T09:07:02Z",
"lastSeen": "2025-07-18T07:43:59.045Z"
},
"alertCounts": [
{ "rule": "pavel_test2_rule_1749239699456", "count": "329" },
{ "rule": "rule_testbucket", "count": "345" },
{ "rule": "rule_Pavel_test_Risk_score", "count": "326" }
],
"timeline": {
"buckets": [
{},
{},
{},
{},
{ "alertCount": 31 },
{ "alertCount": 111 },
{ "alertCount": 109 },
{ "alertCount": 82 },
{ "alertCount": 86 },
{ "alertCount": 98 },
{ "alertCount": 86 },
{ "alertCount": 85 },
{ "alertCount": 92 },
{ "alertCount": 89 },
{ "alertCount": 90 },
{ "alertCount": 41 }
],
"bucketSize": "172800s"
},
"prevalenceResult": [
{ "prevalenceTime": "2025-01-16T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-01-17T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-01-18T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-01-19T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-01-20T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-01-21T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-01-22T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-01-23T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-01-24T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-01-25T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-01-26T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-01-27T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-01-28T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-01-29T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-01-30T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-01-31T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-02-01T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-02-02T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-02-03T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-02-04T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-02-05T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-02-06T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-02-07T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-02-08T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-02-09T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-02-10T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-02-11T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-02-12T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-02-13T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-02-14T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-02-15T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-02-16T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-02-17T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-02-18T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-02-19T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-02-20T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-02-21T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-02-22T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-02-23T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-02-24T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-02-25T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-02-26T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-02-27T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-02-28T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-03-01T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-03-02T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-03-03T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-03-04T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-03-05T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-03-06T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-03-07T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-03-08T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-03-09T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-03-10T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-03-11T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-03-12T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-03-13T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-03-14T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-03-15T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-03-16T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-03-17T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-03-18T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-03-19T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-03-20T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-03-21T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-03-22T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-03-23T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-03-24T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-03-25T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-03-26T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-03-27T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-03-28T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-03-29T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-03-30T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-03-31T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-04-01T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-04-02T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-04-03T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-04-04T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-04-05T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-04-06T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-04-07T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-04-08T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-04-09T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-04-10T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-04-11T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-04-12T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-04-13T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-04-14T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-04-15T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-04-16T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-04-17T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-04-18T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-04-19T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-04-20T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-04-21T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-04-22T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-04-23T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-04-24T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-04-25T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-04-26T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-04-27T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-04-28T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-04-29T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-04-30T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-05-01T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-05-02T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-05-03T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-05-04T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-05-05T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-05-06T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-05-07T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-05-08T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-05-09T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-05-10T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-05-11T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-05-12T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-05-13T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-05-14T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-05-15T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-05-16T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-05-17T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-05-18T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-05-19T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-05-20T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-05-21T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-05-22T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-05-23T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-05-24T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-05-25T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-05-26T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-05-27T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-05-28T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-05-29T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-05-30T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-05-31T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-06-01T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-06-02T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-06-03T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-06-04T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-06-05T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-06-06T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-06-07T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-06-08T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-06-09T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-06-10T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-06-11T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-06-12T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-06-13T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-06-14T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-06-15T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-06-16T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-06-17T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-06-18T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-06-19T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-06-20T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-06-21T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-06-22T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-06-23T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-06-24T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-06-25T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-06-26T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-06-27T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-06-28T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-06-29T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-06-30T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-07-01T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-07-02T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-07-03T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-07-04T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-07-05T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-07-06T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-07-07T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-07-08T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-07-09T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-07-10T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-07-11T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-07-12T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-07-13T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-07-14T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-07-15T00:00:00Z", "count": 1 },
{ "prevalenceTime": "2025-07-16T00:00:00Z", "count": 2 },
{ "prevalenceTime": "2025-07-17T00:00:00Z", "count": 2 },
{ "prevalenceTime": "2025-07-18T00:00:00Z", "count": 2 }
],
"relatedEntities": [
{
"name": "projects/365235532452/locations/us/instances/df6f1958-0381-41f9-8794-08a3229744a5/entities/CgxleGxhYjIwMTktYWQQZhoFWXVyaXkiFQoGCPbso7wGEgsIv_bnwwYQwMq6FQ",
"metadata": {
"entityType": "ASSET",
"interval": {
"startTime": "2025-01-16T12:07:18Z",
"endTime": "2025-07-18T07:43:59.045Z"
}
},
"entity": {
"namespace": "Yuriy",
"asset": {
"hostname": "exlab2019-ad",
"firstSeenTime": "2025-01-16T12:07:18Z"
}
},
"metric": {
"firstSeen": "2025-01-16T12:07:18Z",
"lastSeen": "2025-07-18T07:43:59.045Z"
}
},
{
"name": "projects/365235532452/locations/us/instances/df6f1958-0381-41f9-8794-08a3229744a5/entities/Cg4xNzIuMzAuMjAyLjIyORBkGgVZdXJpeSIVCgYI9uyjvAYSCwi_9ufDBhDAyroV",
"metadata": {
"entityType": "ASSET",
"interval": {
"startTime": "2025-01-16T12:07:18Z",
"endTime": "2025-07-18T07:43:59.045Z"
}
},
"entity": {
"namespace": "Yuriy",
"asset": {
"ip": ["172.30.202.229"],
"firstSeenTime": "2025-01-16T12:07:18Z"
}
},
"metric": {
"firstSeen": "2025-01-16T12:07:18Z",
"lastSeen": "2025-07-18T07:43:59.045Z"
}
}
]
}
},
{
"Entity": "tencent.com",
"EntityResult": {
"name": "projects/365235532452/locations/us/instances/df6f1958-0381-41f9-8794-08a3229744a5/entities/Cgt0ZW5jZW50LmNvbRDIASIQCgYInNyZvAYSBgjo-Jm8Bg",
"metadata": {
"entityType": "DOMAIN_NAME",
"interval": {
"startTime": "2025-01-14T14:01:00Z",
"endTime": "2025-01-14T15:02:00Z"
}
},
"entity": {
"name": "projects/365235532452/locations/us/instances/df6f1958-0381-41f9-8794-08a3229744a5/entities/Cgt0ZW5jZW50LmNvbRDIASIQCgYInNyZvAYSBgjo-Jm8Bg",
"metadata": {
"entityType": "DOMAIN_NAME",
"interval": {
"startTime": "2025-01-14T14:01:00Z",
"endTime": "2025-01-14T15:02:00Z"
}
},
"entity": {
"domain": {
"name": "tencent.com",
"firstSeenTime": "2025-01-14T14:01:00Z",
"lastSeenTime": "2025-01-14T15:02:00Z",
"registrar": "MarkMonitor Information Technology (Shanghai) Co., Ltd.",
"creationTime": "1998-09-14T04:00:00Z",
"updateTime": "2024-08-20T08:04:01Z",
"expirationTime": "2032-09-13T04:00:00Z",
"registrant": {
"emailAddresses": [""],
"personalAddress": { "countryOrRegion": "CHINA" },
"companyName": "\u6df1\u5733\u5e02\u817e\u8baf\u8ba1\u7b97\u673a\u7cfb\u7edf\u6709\u9650\u516c\u53f8"
}
}
},
"metric": {
"firstSeen": "2025-01-14T14:01:00Z",
"lastSeen": "2025-01-14T15:02:00Z"
}
},
"metric": {
"firstSeen": "2025-01-14T14:01:00Z",
"lastSeen": "2025-01-14T15:02:00Z"
},
"timeline": {
"buckets": [
{},
{},
{},
{},
{},
{},
{},
{},
{},
{},
{},
{},
{},
{},
{},
{}
],
"bucketSize": "172800s"
}
}
},
{
"Entity": "00:50:56:b6:34:86",
"EntityResult": {
"name": "projects/365235532452/locations/us/instances/df6f1958-0381-41f9-8794-08a3229744a5/entities/ChEwMDo1MDo1NjpiNjozNDo4NhBlGgVZdXJpeSIKCgASBgjemLzBBg",
"metadata": {
"entityType": "ASSET",
"interval": {
"startTime": "1970-01-01T00:00:00Z",
"endTime": "2025-05-22T11:37:02Z"
}
},
"entity": {
"name": "projects/365235532452/locations/us/instances/df6f1958-0381-41f9-8794-08a3229744a5/entities/ChEwMDo1MDo1NjpiNjozNDo4NhBlGgVZdXJpeSIKCgASBgjemLzBBg",
"metadata": {
"entityType": "ASSET",
"interval": {
"startTime": "1970-01-01T00:00:00Z",
"endTime": "2025-05-22T11:37:02Z"
}
},
"entity": {
"namespace": "Yuriy",
"asset": { "mac": ["00:50:56:b6:34:86"] }
},
"metric": {
"firstSeen": "1970-01-01T00:00:00Z",
"lastSeen": "2025-05-22T11:37:02Z"
}
},
"metric": {
"firstSeen": "1970-01-01T00:00:00Z",
"lastSeen": "2025-05-22T11:37:02Z"
},
"timeline": {
"buckets": [
{},
{},
{},
{},
{},
{},
{},
{},
{},
{},
{},
{},
{},
{},
{},
{}
],
"bucketSize": "172800s"
}
}
}
]
출력 메시지
항목 보강 작업은 다음 출력 메시지를 반환할 수 있습니다.
| 출력 메시지 | 메시지 설명 |
|---|---|
|
작업이 완료되었습니다. |
Error executing action "Enrich Entities". Reason:
ERROR_REASON |
작업이 실패했습니다. 서버, 입력 매개변수 또는 사용자 인증 정보에 대한 연결을 확인하세요. |
스크립트 결과
다음 표에는 항목 보강 작업을 사용할 때 스크립트 결과 출력 값이 나와 있습니다.
| 스크립트 결과 이름 | 값 |
|---|---|
is_success |
true 또는 false |
IP 보강 - 지원 중단됨
IP 보강 작업을 사용하여 Google SecOps의 IoC 정보를 사용해 IP 항목을 보강합니다.
이 작업은 `IP 주소` 항목에서 실행됩니다.
작업 입력
IP 보강 작업에는 다음 매개변수가 필요합니다.
| 매개변수 | 설명 |
|---|---|
Create Insight |
(선택사항) 선택하면 작업에서 항목에 대한 정보가 포함된 통계를 만듭니다.기본적으로 사용 설정됩니다. |
Only Suspicious Insight |
(선택사항) 선택하면 작업에서 의심스러운 것으로 표시된 항목에 대해서만 통계를 만듭니다.기본적으로 사용 설정되지 않습니다. 이 매개변수를 선택하면 |
Lowest Suspicious Severity |
필수 입력란입니다. IP 주소를 의심스러운 것으로 표시하기 위해 IP 주소와 연결된 가장 낮은 심각도입니다. 기본값은
|
Mark Suspicious N/A Severity |
필수 입력란입니다. 선택되어 있고 심각도에 대한 정보를 사용할 수 없는 경우 작업은 항목을 의심스러운 것으로 표시합니다. |
작업 출력
IP 보강 작업은 다음 출력을 제공합니다.
| 작업 출력 유형 | 가용성 |
|---|---|
| 케이스 월 연결 | 사용 불가 |
| 케이스 월 링크 | 사용 불가 |
| 케이스 월 테이블 | 사용 가능 |
| 보강 테이블 | 사용 가능 |
| JSON 결과 | 사용 가능 |
| 출력 메시지 | 사용 가능 |
| 스크립트 결과 | 사용 가능 |
케이스 월 테이블
이름: ENTITY_IDENTIFIER
열:
- 소스
- 심각도
- 카테고리
- 신뢰도
- 관련 도메인
항목 보강
IP 보강 작업은 다음 항목 보강 로직을 지원합니다.
| 보강 필드 | 로직 (적용 시기) |
|---|---|
severity |
JSON으로 제공되는 경우 |
average_confidence |
JSON으로 제공되는 경우 |
related_domains |
JSON으로 제공되는 경우 |
categories |
JSON으로 제공되는 경우 |
sources |
JSON으로 제공되는 경우 |
first_seen |
JSON으로 제공되는 경우 |
last_seen |
JSON으로 제공되는 경우 |
report_link |
JSON으로 제공되는 경우 |
JSON 결과
다음 예시에서는 Backstory API와 함께 IP 보강 작업을 사용할 때 수신되는 JSON 결과 출력을 설명합니다.
{
{
"sources": [
{
"source": "Example List",
"confidenceScore": {
"normalizedConfidenceScore": "Low",
"intRawConfidenceScore": 0
},
"rawSeverity": "High",
"category": "Malware Command and Control Server"
}
],
"iocIngestTime": "2021-01-26T17:00:00Z",
"firstSeenTime": "2018-10-03T00:03:53Z",
"lastSeenTime": "2022-02-09T10:52:21.229Z",
"uri": [
"https://INSTANCE/domainResults?domain=example.net&selectedList=DomainViewDistinctAssets&whoIsTimestamp=2022-02-09T11%3A51%3A52.393783515Z"
]
}
}
다음 예시에서는 Chronicle API와 함께 IP 보강 작업을 사용할 때 수신되는 JSON 결과 출력을 설명합니다.
[
{
"Entity": "192.0.2.121",
"EntityResult": {
"sources": [
{
"category": "Indicator was published in publicly available sources",
"firstActiveTime": "1970-01-01T00:00:01Z",
"lastActiveTime": "9999-12-31T23:59:59Z",
"addresses": [
{
"ipAddress": "IP_ADDRESS"
}
],
"rawSeverity": "low",
"confidenceScore": {
"strRawConfidenceScore": "67"
}
}
],
"feeds": [
{
"metadata": {
"title": "Mandiant Open Source Intelligence",
"description": "Open Source Intel IoC",
"confidenceScoreBucket": {
"rangeEnd": 100
}
},
"iocs": [
{
"categorization": "Indicator was published in publicly available sources",
"activeTimerange": {
"start": "1970-01-01T00:00:01Z",
"end": "9999-12-31T23:59:59Z"
},
"ipAndPorts": {
"ipAddress": "IP_ADDRESS"
},
"confidenceScore": "67",
"rawSeverity": "Low"
}
]
}
]
}
}
]
출력 메시지
IP 보강 작업은 다음 출력 메시지를 제공합니다.
| 출력 메시지 | 메시지 설명 |
|---|---|
Successfully enriched the following IPs from Google Chronicle:
LIST_OF_IPS |
작업이 완료되었습니다. |
Error executing action "Enrich IP". Reason:
ERROR_REASON |
작업이 실패했습니다. 서버, 입력 매개변수 또는 사용자 인증 정보에 대한 연결을 확인하세요. |
스크립트 결과
다음 표에서는 IP 보강 작업을 사용할 때 스크립트 결과 출력 값을 설명합니다.
| 스크립트 결과 이름 | 값 |
|---|---|
is_success |
true 또는 false |
Retrohunt 실행
Retrohunt 실행 작업을 사용하여 Google SecOps에서 규칙 Retrohunt를 실행합니다.
이 작업은 Google SecOps 항목에서 실행되지 않습니다.
작업 입력
Retrohunt 실행 작업에는 다음 매개변수가 필요합니다.
| 매개변수 | 설명 |
|---|---|
Rule ID |
필수 입력란입니다. RetroHunt를 실행할 규칙의 ID입니다. 규칙의 최신 버전에는 |
Time Frame |
(선택사항) 결과를 가져올 기간입니다. 가능한 값은 다음과 같습니다.
기본값은 |
Start Time |
ISO 8601 형식의 결과 시작 시간입니다.
|
End Time |
ISO 8601 형식의 결과 종료 시간입니다.
값을 설정하지 않고 |
작업 출력
Retrohunt 실행 작업은 다음 출력을 제공합니다.
| 작업 출력 유형 | 가용성 |
|---|---|
| 케이스 월 연결 | 사용 불가 |
| 케이스 월 링크 | 사용 불가 |
| 케이스 월 테이블 | 사용 불가 |
| 보강 테이블 | 사용 불가 |
| 항목 통계 | 사용 불가 |
| JSON 결과 | 사용 가능 |
| 출력 메시지 | 사용 가능 |
| 스크립트 결과 | 사용 가능 |
JSON 결과
다음 예시에서는 Backstory API와 함께 Retrohunt 실행 작업을 사용할 때 수신되는 JSON 결과 출력을 설명합니다.
{
"retrohuntId": "oh_d738c8ea-8fd7-4cc1-b43d-25835b8e1785",
"ruleId": "ru_30979d84-aa89-47d6-bf4d-b4bb0eacb497",
"versionId": "ru_30979d84-aa89-47d6-bf4d-b4bb0eacb497@v_1612472807_179679000",
"eventStartTime": "2021-01-14T23:00:00Z",
"eventEndTime": "2021-01-30T23:00:00Z",
"retrohuntStartTime": "2021-02-08T02:40:59.192113Z",
"state": "RUNNING"
}
다음 예시에서는 Chronicle API와 함께 Retrohunt 실행 작업을 사용할 때 수신되는 JSON 결과 출력을 설명합니다.
{
"name": "projects/PROJECT_ID/locations/us/instances/INSTANCE_ID/operations/OPERATION_ID",
"metadata": {
"@type": "type.googleapis.com/RetrohuntMetadata",
"retrohunt": "projects/PROJECT_ID/locations/us/instances/INSTANCE_ID/rules/RULE_ID/retrohunts/RETROHUNT_ID",
"executionInterval": {
"startTime": "2025-01-22T12:16:20.963182Z",
"endTime": "2025-01-23T12:16:20.963182Z"
}
},
"retrohuntId": "RETROHUNT_ID",
"ruleId": "RULE_ID",
"versionId": "VERSION_ID",
"eventStartTime": "2025-01-22T12:16:20.963182Z",
"eventEndTime": "2025-01-23T12:16:20.963182Z"
}
출력 메시지
Retrohunt 실행 작업은 다음 출력 메시지를 제공합니다.
| 출력 메시지 | 메시지 설명 |
|---|---|
Successfully executed a retrohunt for the provided rule in Google
Chronicle.
|
작업이 완료되었습니다. |
Error executing action "Execute Retrohunt". Reason:
ERROR_REASON |
작업이 실패했습니다.
서버, 입력 매개변수 또는 사용자 인증 정보에 대한 연결을 확인하세요. |
스크립트 결과
다음 표에서는 Retrohunt 실행 작업을 사용할 때 스크립트 결과 출력 값을 설명합니다.
| 스크립트 결과 이름 | 값 |
|---|---|
is_success |
true 또는 false |
UDM 쿼리 실행
UDM 쿼리 실행 작업을 사용하여 Google SecOps에서 커스텀 UDM 쿼리를 실행합니다.
이 작업은 Google SecOps 항목에서 실행되지 않습니다.
작업 입력
UDM 쿼리 실행 작업에는 다음 매개변수가 필요합니다.
| 매개변수 | 설명 |
|---|---|
Query |
필수 입력란입니다. Google SecOps에서 실행할 쿼리입니다. |
Include Raw Log Data |
(선택사항) 선택하면 UDM 검색 결과와 연결된 원본 원시 로그 파일을 검색합니다. 이 옵션은 Chronicle API 인증을 사용하는 경우에만 사용할 수 있습니다. 기본적으로 사용 중지됩니다. |
Time Frame |
(선택사항) 결과를 가져올 기간입니다. 가능한 값은 다음과 같습니다.
기본값은 |
Start Time |
(선택사항) ISO 8601 형식의 결과 시작 시간입니다 (예:
최대 기간은 90일입니다. |
End Time |
(선택사항) ISO 8601 형식의 결과 종료 시간입니다 (예: 값을 설정하지 않고 최대 기간은 90일입니다. |
Max Results To Return |
(선택사항) 단일 쿼리에 대해 반환할 결과 수입니다. 최댓값은 기본값은 |
작업 출력
UDM 쿼리 실행 작업은 다음 출력을 제공합니다.
| 작업 출력 유형 | 가용성 |
|---|---|
| 케이스 월 연결 | 사용 불가 |
| 케이스 월 링크 | 사용 불가 |
| 케이스 월 테이블 | 사용 불가 |
| 보강 테이블 | 사용 불가 |
| JSON 결과 | 사용 가능 |
| 출력 메시지 | 사용 가능 |
| 스크립트 결과 | 사용 가능 |
JSON 결과
다음 예시에서는 UDM 쿼리 실행 작업을 사용할 때 수신되는 JSON 결과 출력을 설명합니다.
{
"events": [
{
"name": "02c2c701c5bb7e7042701ayyyyyyyyyx,4,16496990275yyyxx,EMAIL,",
"udm": {
"metadata": {
"enrichmentState": "ENRICHED",
"eventTimestamp": "2022-04-11T17:43:47.586Z",
"eventType": "EMAIL_TRANSACTION",
"ingestedTimestamp": "2022-04-11T15:50:21.912562Z",
"productName": "Chronicle Internal"
},
"network": {
"email": {
"from": "test@example.com",
"subject": [
"I did not create this service account"
],
"to": [
"test@example.com"
]
}
},
"principal": {
"asset": {
"assetId": "CS:8973060bcf1d441a8cf10eyyyyyyyyyx",
"hostname": "test-pc",
"ip": [
"10.2.xx.yyy"
],
"mac": [
"b5:1c:8b:xx:xx:xx"
]
},
"assetId": "CS:8973060bcf1d441a8cf10eyyyyyyyyyx",
"hostname": "test-pc",
"ip": [
"10.2.xx.yyy"
],
"location": {
"city": "San Francisco",
"countryOrRegion": "US",
"state": "California"
},
"mac": [
"b5:1c:8b:xx:xx:xx"
],
"user": {
"attribute": {
"labels": [
{
"key": "2FA Enabled",
"value": "false"
}
]
},
"department": [
"Cymbal Investments IT Contractors"
],
"emailAddresses": [
"test@example.com"
],
"groupIdentifiers": [
"Contractors"
],
"productObjectId": "test",
"title": "IT Support Agent",
"userDisplayName": "test test",
"userid": "test",
"windowsSid": "S-1-5-21-2623356yyy-8883713yyy-9684409yyy-yyyxx"
}
},
"rawLogData": {
"agent_id": "yyyyyy",
"aggregate_id": "yyyyyy",
"created_timestamp": "yyyyyy",
"decodedString": "yyyyyy",
"description": "yyyyyy",
"display_name": "yyyyyy",
"filename": "yyyyyy"
},
"securityResult": [
{
"action": [
"ALLOW"
]
}
]
}
},
{
"name": "02c2c701c5bb7e7042701ayyyyyyyyyx,3,16496987245yyyxx,EMAIL,",
"udm": {
"metadata": {
"enrichmentState": "ENRICHED",
"eventTimestamp": "2022-04-11T17:38:44.586Z",
"eventType": "EMAIL_TRANSACTION",
"ingestedTimestamp": "2022-04-11T15:50:21.912562Z",
"productName": "Chronicle Internal"
},
"network": {
"email": {
"from": "test@example.com",
"subject": [
"Did you create this service account"
],
"to": [
"test@example.com"
]
}
},
"principal": {
"asset": {
"assetId": "CS:8973060bcf1d441a8cf10eyyyyyyyyyx",
"hostname": "test-pc",
"ip": [
"10.2.xx.yyy"
],
"mac": [
"b5:1c:8b:xx:xx:xx"
]
},
"assetId": "CS:8973060bcf1d441a8cf10eyyyyyyyyyx",
"hostname": "test-pc",
"ip": [
"10.2.xx.yyy"
],
"location": {
"city": "San Francisco",
"countryOrRegion": "US",
"state": "California"
},
"mac": [
"b5:1c:8b:xx:xx:xx"
],
"user": {
"attribute": {
"labels": [
{
"key": "2FA Enabled",
"value": "false"
}
]
},
"department": [
"Cymbal Investments IT Contractors"
],
"emailAddresses": [
"test@example.com"
],
"groupIdentifiers": [
"Contractors"
],
"productObjectId": "test",
"title": "IT Support Agent",
"userDisplayName": "test test",
"userid": "test",
"windowsSid": "S-1-5-21-2623356yyy-8883713yyy-9684409yyy-yyyxx"
}
},
"rawLogData": {
"agent_id": "yyyyyy",
"aggregate_id": "yyyyyy",
"created_timestamp": "yyyyyy",
"decodedString": "yyyyyy",
"description": "yyyyyy",
"display_name": "yyyyyy",
"filename": "yyyyyy"
},
"securityResult": [
{
"action": [
"ALLOW"
]
}
]
}
},
{
"avg_seconds": {
"values": [
{
"doubleVal": 1755680893.3333333
}
]
},
"event_type_array": {
"values": [
{
"stringVal": "673961a71ba82e0556ef95cb2147e212"
}
]
},
"target.file.vhash": {
"values": [
{
"stringVal": "673961a71ba82e0556ef95cb2147e212"
}
]
}
}
]
}
출력 메시지
UDM 쿼리 실행 작업은 다음 출력 메시지를 제공합니다.
| 출력 메시지 | 메시지 설명 |
|---|---|
|
작업이 완료되었습니다. |
Error executing action "Execute UDM Query". Reason:
ERROR_REASON
|
작업이 실패했습니다. 서버, 입력 매개변수 또는 사용자 인증 정보에 대한 연결을 확인하세요. |
Error executing action "Execute UDM Query". Reason: you've reached a
rate limit. Please wait for several minutes and try again. |
작업이 실패했습니다. 몇 분 정도 기다린 후 작업을 다시 실행합니다. |
스크립트 결과
다음 표에서는 UDM 쿼리 실행 작업을 사용할 때 스크립트 결과 출력의 값을 설명합니다.
| 스크립트 결과 이름 | 값 |
|---|---|
is_success |
true 또는 false |
UDM 쿼리 비동기 실행
UDM 쿼리 비동기 실행 작업을 사용하여 Google SecOps에서 커스텀 UDM 쿼리를 실행합니다.
이 작업은 Google SecOps 항목에서 실행되지 않습니다.
작업 입력
UDM 쿼리 실행 작업에는 다음 매개변수가 필요합니다.
| 매개변수 | 설명 |
|---|---|
Query |
필수 입력란입니다. Google SecOps에서 실행할 쿼리입니다. |
Time Frame |
(선택사항) 결과를 가져올 기간입니다. 가능한 값은 다음과 같습니다.
기본값은 |
Start Time |
(선택사항) ISO 8601 형식의 결과 시작 시간(
|
End Time |
(선택사항) ISO 8601 형식( 값을 설정하지 않고 |
Max Results To Return |
(선택사항) 단일 쿼리에 대해 반환할 결과 수입니다. 최댓값은 기본값은 |
작업 출력
UDM 쿼리 비동기 실행 작업은 다음 출력을 제공합니다.
| 작업 출력 유형 | 가용성 |
|---|---|
| 케이스 월 연결 | 사용 불가 |
| 케이스 월 링크 | 사용 불가 |
| 케이스 월 테이블 | 사용 불가 |
| 보강 테이블 | 사용 불가 |
| JSON 결과 | 사용 가능 |
| 출력 메시지 | 사용 가능 |
| 스크립트 결과 | 사용 가능 |
JSON 결과
다음 예시에서는 UDM 쿼리 비동기 실행 작업을 사용할 때 수신되는 JSON 결과 출력을 설명합니다.
{
"events": [
{
"event": {
"metadata": {
"eventTimestamp": "2022-01-20T09:15:15.687Z",
"eventType": "USER_LOGIN",
"vendorName": "Microsoft",
"productName": "Active Directory",
"ingestedTimestamp": "2022-01-20T09:45:07.433587Z"
},
"principal": {
"hostname": "workstation-01",
"ip": [
"192.168.1.50"
],
"mac": [
"00:1A:2B:3C:4D:5E",
"00:1A:2B:3C:4D:5E",
"00:1A:2B:3C:4D:5E"
],
"location": {
"city": "Metropolis",
"state": "New York",
"countryOrRegion": "US"
},
"asset": {
"hostname": "workstation-01",
"ip": [
"192.168.1.50",
"192.168.1.50",
"192.168.1.50"
],
"mac": [
"00:1A:2B:3C:4D:5E",
"00:1A:2B:3C:4D:5E",
"00:1A:2B:3C:4D:5E"
]
}
},
"target": {
"user": {
"userid": "user_alpha",
"userDisplayName": "User Alpha",
"windowsSid": "S-1-5-21-1111111111-2222222222-3333333333-1000",
"emailAddresses": [
"alpha@example.com",
"admin.alpha@example.com"
],
"employeeId": "1234567",
"productObjectId": "11111111-2222-3333-4444-555555555555",
"firstName": "User",
"lastName": "Alpha",
"phoneNumbers": [
"555-0199-0000"
],
"title": "Executive Assistant",
"companyName": "Example Corp",
"department": [
"Executive - Admin"
],
"managers": [
{
"userDisplayName": "Manager Beta",
"windowsSid": "S-1-5-21-1111111111-2222222222-3333333333-2000",
"emailAddresses": [
"beta@example.com"
],
"employeeId": "7654321",
"productObjectId": "66666666-7777-8888-9999-000000000000",
"firstName": "Manager",
"lastName": "Beta",
"phoneNumbers": [
"555-0199-0001 ext 123"
],
"title": "Chief Technology Officer",
"companyName": "Example Corp",
"department": [
"Executive - Admin"
]
}
]
},
"ip": [
"203.0.113.10"
],
"email": "alpha@example.com",
"application": "Windows Sign In"
},
"securityResult": [
{
"summary": "Successful Login",
"action": [
"ALLOW"
]
}
],
"rawLogData": {
"agent_id": "00000000000000000000000000000001",
"aggregate_id": "aggind:00000000000000000000000000000001:123456789012",
"data_domains": [
"Endpoint"
],
"description": "A suspicious process related to a likely malicious file was launched. Review any binaries involved as they may be related to malware.",
"device": {
"agent_load_flags": "0",
"agent_local_time": "2025-08-07T01:42:54.415Z",
"agent_version": "7.27.18003.0",
"bios_manufacturer": "Generic Manufacturer LTD"
},
"template_instance_id": "10001",
"timestamp": "2025-08-19T15:08:13.742Z",
"user_name": "root"
},
"extensions": {
"auth": {
"type": "SSO"
}
}
},
"eventLogToken": "abcdef0123456789abcdef0123456789,1,1642670115687000,USER,|USER_LOGIN"
}
]
}
출력 메시지
UDM 쿼리 비동기 실행 작업은 다음 출력 메시지를 제공합니다.
| 출력 메시지 | 메시지 설명 |
|---|---|
|
작업이 완료되었습니다. |
Error executing action "Execute UDM Query Async". Reason:
ERROR_REASON
|
작업이 실패했습니다. 서버, 입력 매개변수 또는 사용자 인증 정보에 대한 연결을 확인하세요. |
Error executing action "Execute UDM Query Async ". Reason: you've reached a
rate limit. Please wait for several minutes and try again. |
작업이 실패했습니다. 몇 분 정도 기다린 후 작업을 다시 실행합니다. |
스크립트 결과
다음 표에서는 UDM 쿼리 비동기 실행 작업을 사용할 때 스크립트 결과 출력 값을 설명합니다.
| 스크립트 결과 이름 | 값 |
|---|---|
is_success |
true 또는 false |
UDM 쿼리 생성
(프리뷰) UDM 쿼리 생성 작업을 사용하여 Google SecOps에서 자연어 프롬프트를 통해 복잡한 UDM 쿼리를 구성합니다.
이 작업은 Google SecOps 항목에서 실행되지 않습니다.
작업 입력
UDM 쿼리 생성 작업에는 다음 매개변수가 필요합니다.
| 매개변수 | 설명 |
|---|---|
Prompt |
필수 입력란입니다. 시스템이 정형화된 UDM 쿼리를 생성하는 데 사용하는 프롬프트입니다. |
작업 출력
UDM 쿼리 생성 작업은 다음 출력을 제공합니다.
| 작업 출력 유형 | 가용성 |
|---|---|
| 케이스 월 연결 | 사용 불가 |
| 케이스 월 링크 | 사용 불가 |
| 케이스 월 테이블 | 사용 불가 |
| 보강 테이블 | 사용 불가 |
| JSON 결과 | 사용 가능 |
| 출력 메시지 | 사용 가능 |
| 스크립트 결과 | 사용 가능 |
JSON 결과
다음 예시에서는 UDM 쿼리 생성 작업을 사용할 때 수신되는 JSON 결과 출력을 설명합니다.
{
"query": "ip = \"10.0.0.1\""
}
출력 메시지
UDM 쿼리 생성 작업은 다음 출력 메시지를 제공합니다.
| 출력 메시지 | 메시지 설명 |
|---|---|
Successfully generated a UDM query in Google SecOps. |
작업이 완료되었습니다. |
Error executing action "Generate UDM Query". Reason:
ERROR_REASON |
작업이 실패했습니다. 서버, 입력 매개변수 또는 사용자 인증 정보에 대한 연결을 확인하세요. |
스크립트 결과
다음 표에서는 UDM 쿼리 생성 작업을 사용할 때 스크립트 결과 출력의 값을 설명합니다.
| 스크립트 결과 이름 | 값 |
|---|---|
is_success |
true 또는 false |
데이터 표 가져오기
데이터 테이블 가져오기 작업을 사용하여 Google SecOps에서 사용 가능한 데이터 테이블을 검색합니다.
이 작업은 Google SecOps 항목에서 실행되지 않습니다.
데이터 테이블 캐싱
캐싱을 사용 설정하여 Google SecOps에 대한 반복 요청을 줄이고 플레이북 실행 속도를 높일 수 있습니다.
캐싱 작동 방식:
Use Cache를 선택하면 작업이 검색된 데이터 테이블을 Google SecOps 환경의 공유 캐시에 저장합니다. 동일한 환경에서 플레이북 및 지원되는 데이터 테이블 작업 전반에 걸친 후속 실행은 캐시된 데이터가 만료될 때까지 이를 재사용합니다.전체 테이블 캐싱: 이 작업은 항상 일치하는 각 테이블의 모든 행을 캐시하므로 (
Expanded Rows가 사용 중지되거나Max Data Table Rows To Return가 더 작은 한도로 설정된 경우에도) Is Value In Data Table 및 Is Value In Data Table Async가 캐시를 재사용할 수 있습니다.필터링되지 않은 첫 번째 실행: 일치하는 모든 테이블의 모든 행이 캐시되므로 캐시가 비어 있거나 만료된 경우
Filter Value없이 작업을 실행하는 데 시간이 더 오래 걸릴 수 있습니다.Cache TTL의 영향: 작업이 Google SecOps에서 새 데이터를 가져오기 전에 캐시된 데이터가 유효한 기간을 제어합니다.- 더 긴 TTL: API 요청을 줄이고 플레이북 속도를 높이지만 캐시가 만료될 때까지 데이터 테이블 업데이트가 반영되지 않습니다.
- 짧은 TTL: 자주 변경되는 테이블의 결과를 최신 상태로 유지하지만 Google SecOps에 대한 요청이 증가합니다.
작업 입력
데이터 테이블 가져오기 작업에는 다음 매개변수가 필요합니다.
| 매개변수 | 설명 |
|---|---|
Filter Key |
(선택사항) 필터링할 키
가능한 값은 다음과 같습니다. NameDescription |
Filter Logic |
(선택사항) 적용할 필터 로직입니다. 가능한 값은 다음과 같습니다. Equal (일치검색)Contains(하위 문자열 일치) |
Filter Value |
(선택사항) 필터에 사용할 값입니다. 가능한 값은 다음과 같습니다. Equal (일치검색)Contains(하위 문자열 일치)
아무것도 제공되지 않으면 필터가 적용되지 않습니다. |
Expanded Rows |
(선택사항) 선택하면 응답에 세부 데이터 표 행이 포함됩니다. |
Max Data Tables To Return |
필수 입력란입니다. 반환할 데이터 테이블 수입니다. 최댓값은 |
Max Data Table Rows To Return |
필수 입력란입니다. 반환할 데이터 테이블 행의 수입니다.
최댓값은 |
Use Cache |
(선택사항) 선택하면 작업이 실행될 때마다 Google SecOps를 쿼리하는 대신 사용 가능한 경우 캐시된 데이터 테이블 결과를 사용합니다. 자세한 내용은 데이터 테이블 캐싱을 참조하세요. |
Cache TTL |
(선택사항) 작업이 Google SecOps에서 새 데이터를 가져오기 전의 캐시 TTL(분)입니다. 자세한 내용은 데이터 테이블 캐싱을 참조하세요. 최솟값은 기본값은 |
작업 출력
데이터 테이블 가져오기 작업은 다음 출력을 제공합니다.
| 작업 출력 유형 | 가용성 |
|---|---|
| 케이스 월 연결 | 사용 불가 |
| 케이스 월 링크 | 사용 불가 |
| 케이스 월 테이블 | 사용 불가 |
| 보강 테이블 | 사용 불가 |
| JSON 결과 | 사용 가능 |
| 출력 메시지 | 사용 가능 |
| 스크립트 결과 | 사용 가능 |
JSON 결과
다음 예시에서는 데이터 테이블 가져오기 작업을 사용할 때 수신되는 JSON 결과 출력을 설명합니다.
{
"name": "projects/365235532452/locations/us/instances/df6f1958-0381-41f9-8794-08a3229744a5/dataTables/data_table",
"displayName": "data_table",
"createTime": "2025-05-14T12:52:50.064133Z",
"updateTime": "2025-05-14T13:13:48.631442Z",
"columnInfo": [
{
"originalColumn": "columnName1",
"columnType": "STRING"
},
{
"columnIndex": 1,
"originalColumn": "columnName2",
"columnType": "STRING"
},
{
"columnIndex": 2,
"originalColumn": "columnName3",
"columnType": "STRING"
}
],
"dataTableUuid": "c3cce57bb8d940d5ac4523c37d540436",
"approximateRowCount": "2",
"Used cache": true,
"rows": [
{
"name": "projects/365235532452/locations/us/instances/df6f1958-0381-41f9-8794-08a3229744a5/dataTables/data_table/dataTableRows/840d18a85944833e1b97ed6d2fb11377",
"values": {
"columnName1": "asda",
"columnName2": "asdasd",
"columnName3": "zxczxc"
},
"createTime": "2025-05-14T12:52:51.908143Z",
"updateTime": "2025-05-14T12:52:51.908143Z"
}
]
}
출력 메시지
데이터 테이블 가져오기 작업은 다음 출력 메시지를 제공합니다.
| 출력 메시지 | 메시지 설명 |
|---|---|
Successfully found data tables for the provided criteria in Google
SecOps |
작업이 완료되었습니다. |
Error executing action "Get Data Tables". Reason:
ERROR_REASON |
작업이 실패했습니다.
서버, 입력 매개변수 또는 사용자 인증 정보에 대한 연결을 확인하세요. |
스크립트 결과
다음 표에서는 데이터 테이블 가져오기 작업을 사용할 때 스크립트 결과 출력의 값을 설명합니다.
| 스크립트 결과 이름 | 값 |
|---|---|
is_success |
true 또는 false |
감지 세부정보 가져오기
감지 세부정보 가져오기 작업을 사용하여 Google SecOps에서 감지에 대한 정보를 검색합니다.
이 작업은 Google SecOps 항목에서 실행되지 않습니다.
작업 입력
감지 세부정보 가져오기 작업에는 다음 매개변수가 필요합니다.
| 매개변수 | 설명 |
|---|---|
Rule ID |
필수 입력란입니다. 감지와 관련된 규칙의 ID입니다. 규칙의 최신 버전에는 |
Detection ID |
필수 입력란입니다. 세부정보를 가져올 감지 ID입니다. 특수문자가 제공되면 작업이 실패하지 않지만 감지 목록이 반환됩니다. |
Include Raw Log Data |
(선택사항) 선택하면 UDM 검색 결과와 연결된 원본 원시 로그 파일을 검색합니다. 이 옵션은 Chronicle API 인증을 사용하는 경우에만 사용할 수 있습니다. 기본적으로 사용 중지됩니다. |
작업 출력
감지 세부정보 가져오기 작업은 다음 출력을 제공합니다.
| 작업 출력 유형 | 가용성 |
|---|---|
| 케이스 월 연결 | 사용 불가 |
| 케이스 월 링크 | 사용 불가 |
| 케이스 월 테이블 | 사용 불가 |
| 보강 테이블 | 사용 불가 |
| JSON 결과 | 사용 가능 |
| 출력 메시지 | 사용 가능 |
| 스크립트 결과 | 사용 가능 |
JSON 결과
다음 예시에서는 감지 세부정보 가져오기 작업을 사용할 때 수신되는 JSON 결과 출력을 설명합니다.
{
"collectionElements": [
{
"label": "e",
"references": [
{
"event": {
"metadata": {
"eventTimestamp": "2023-10-04T21:18:44Z",
"eventType": "NETWORK_CONNECTION",
"id": "yyyx=",
"ingestedTimestamp": "2023-10-04T21:31:03.790969Z",
"logType": "UDM",
"productEventType": "Traffic - start",
"productLogId": "yyyx-yyyx-yyyx45fc-yyyx-yyyx",
"productName": "NGFW",
"vendorName": "Palo Alto Networks"
},
"network": {
"ipProtocol": "TCP",
"receivedBytes": "yyyyyyyyyxx",
"sentBytes": "yyyyyyyyyxx",
"sessionId": "yyyyyyyyyxx"
},
"principal": {
"asset": {
"hostname": "test3",
"ip": [
"00.0.0.00"
],
"mac": [
"00:00:00:0b:c9:11"
]
},
"hostname": "test3",
"ip": [
"x.x.0.x"
],
"mac": [
"00:00:00:0b:c9:11"
],
"port": 18985
},
"rawLogData": {
"action": "yyyyyy",
"decodedString": "yyyyyy",
"external_id": "yyyyyy",
"matching_status": "yyyyyy",
"severity": "yyyyyy",
"source": "yyyyyy"
},
"securityResult": [
{
"action": [
"ALLOW"
]
}
],
"target": {
"asset": {
"hostname": "youtube.com"
},
"hostname": "youtube.com",
"port": 4548
}
}
}
]
}
],
"createdTime": "2023-10-04T22:16:22.145254Z",
"detection": [
{
"alertState": "ALERTING",
"riskScore": 40,
"ruleId": "yyyx-f66d-yyyx-yyyx-yyyx",
"ruleLabels": [
{
"key": "priority",
"value": "Medium"
},
{
"key": "severity",
"value": "Medium"
}
],
"ruleName": "dns_not_google",
"ruleType": "SINGLE_EVENT",
"ruleVersion": "yyyx-yyyx-yyyx-b682-yyyx@yyyx",
"urlBackToProduct": "https://unotest2.backstory-dev.chronicle.yyyx/alert?yyyx=yyyx-e380-yyyx-d29c-yyyx"
}
],
"detectionTime": "2023-10-04T21:18:44Z",
"id": "yyyx-e380-yyyx-yyyx-yyyx",
"timeWindow": {
"endTime": "2023-10-04T21:18:44Z",
"startTime": "2023-10-04T21:18:44Z"
},
"type": "RULE_DETECTION"
}
출력 메시지
감지 세부정보 가져오기 작업은 다음 출력 메시지를 제공합니다.
| 출력 메시지 | 메시지 설명 |
|---|---|
Successfully fetched information about the detection with ID
DETECTION_ID in Google Chronicle. |
작업이 완료되었습니다. |
Error executing action "Get Detection Details". Reason:
ERROR_REASON |
작업이 실패했습니다.
서버, 입력 매개변수 또는 사용자 인증 정보에 대한 연결을 확인하세요. |
스크립트 결과
다음 표에서는 감지 세부정보 가져오기 작업을 사용할 때 스크립트 결과 출력 값을 설명합니다.
| 스크립트 결과 이름 | 값 |
|---|---|
is_success |
true 또는 false |
참조 목록 가져오기
참조 목록 가져오기 작업을 사용하여 Google SecOps에서 사용 가능한 참조 목록을 검색합니다.
이 작업은 Google SecOps 항목에서 실행되지 않습니다.
작업 입력
참조 목록 가져오기 작업에는 다음 매개변수가 필요합니다.
| 매개변수 | 설명 |
|---|---|
Filter Key |
필터링할 키입니다.
가능한 값은 다음과 같습니다.
|
Filter Logic |
적용할 필터 로직입니다. 가능한 값은 다음과 같습니다. Equal (일치검색)Contains(하위 문자열 일치)기본값은 |
Filter Value |
필터에 사용할 값입니다.
가능한 값은 다음과 같습니다. Equal (일치검색)Contains(하위 문자열 일치)
값을 제공하지 않으면 필터가 적용되지 않습니다. |
Expanded Details |
선택하면 작업이 참조 목록에 대한 세부정보를 반환합니다.
기본적으로 사용 설정되지 않습니다. |
Max Reference Lists To Return |
반환할 참조 목록 수입니다.
기본값은 |
작업 출력
참조 목록 가져오기 작업은 다음 출력을 제공합니다.
| 작업 출력 유형 | 가용성 |
|---|---|
| 케이스 월 연결 | 사용 불가 |
| 케이스 월 링크 | 사용 불가 |
| 케이스 월 테이블 | 사용 가능 |
| 보강 테이블 | 사용 불가 |
| JSON 결과 | 사용 가능 |
| 출력 메시지 | 사용 가능 |
| 스크립트 결과 | 사용 가능 |
케이스 월 테이블
케이스 월에서 참조 목록 가져오기를 선택하면 다음 표가 표시됩니다.
이름: 사용 가능한 참조 목록
열:
- 이름
- 설명
- 유형
JSON 결과
다음 예시에서는 Backstory API와 함께 참조 목록 가져오기 작업을 사용할 때 수신되는 JSON 결과 출력을 설명합니다.
{
"name": "list_name",
"description": "description of the list",
"lines": [
"192.0.2.0/24",
"198.51.100.0/24"
],
"create_time": "2020-11-20T17:18:20.409247Z",
"content_type": "CIDR"
}
다음 예시에서는 Chronicle API와 함께 참조 목록 가져오기 작업을 사용할 때 수신되는 JSON 결과 출력을 설명합니다.
[
{
"name": "projects/PROJECT_ID/locations/us/instances/INSTANCE_ID/referenceLists/REFERENCE_LIST_ID",
"displayName": "REFERENCE_LIST_ID",
"revisionCreateTime": "2025-01-09T15:53:10.851775Z",
"description": "Test reference list",
"syntaxType": "REFERENCE_LIST_SYNTAX_TYPE_PLAIN_TEXT_STRING",
"scopeInfo": {
"referenceListScope": {}
},
"createTime": "2025-01-09T15:53:10.851775Z"
}
]
출력 메시지
참조 목록 가져오기 작업은 다음 출력 메시지를 제공합니다.
| 출력 메시지 | 메시지 설명 |
|---|---|
|
작업이 완료되었습니다. |
Error executing action
ACTION_NAME. Reason:
ERROR_REASON
|
작업이 실패했습니다.
서버, 입력 매개변수 또는 사용자 인증 정보에 대한 연결을 확인하세요. |
Error executing action
ACTION_NAME. Reason: "Invalid
value was provided for "Max Reference Lists to Return":
PROVIIDED_VALUE. Positive number should be provided. |
작업이 실패했습니다.
|
스크립트
다음 표에서는 참조 목록 가져오기 작업을 사용할 때 스크립트 결과 출력의 값을 설명합니다.
| 스크립트 결과 이름 | 값 |
|---|---|
is_success |
true 또는 false |
규칙 세부정보 가져오기
규칙 세부정보 가져오기 작업을 사용하여 Google SecOps의 규칙에 대한 정보를 검색합니다.
이 작업은 Google SecOps 항목에서 실행되지 않습니다.
작업 입력
규칙 세부정보 가져오기 작업에는 다음 매개변수가 필요합니다.
| 매개변수 | 설명 |
|---|---|
Rule ID |
필수 입력란입니다. 세부정보를 가져올 규칙의 고유 ID입니다. 기본값은 |
작업 출력
규칙 세부정보 가져오기 작업은 다음 출력을 제공합니다.
| 작업 출력 유형 | 가용성 |
|---|---|
| 케이스 월 연결 | 사용 불가 |
| 케이스 월 링크 | 사용 불가 |
| 케이스 월 테이블 | 사용 불가 |
| 보강 테이블 | 사용 불가 |
| JSON 결과 | 사용 가능 |
| 출력 메시지 | 사용 가능 |
| 스크립트 결과 | 사용 가능 |
JSON 결과
다음 예시에서는 Backstory API와 함께 규칙 세부정보 가져오기 작업을 사용할 때 수신되는 JSON 결과 출력을 설명합니다.
{
"ruleId": "ru_e6abfcb5-1b85-41b0-b64c-695b3250436f",
"versionId": "ru_e6abfcb5-1b85-41b0-b64c-695b3250436f@v_1602631093_146879000",
"ruleName": "SampleRule",
"metadata": {
"description": "Sample Description of the Rule",
"author": "author@example.com"
},
"ruleText": "rule SampleRule {
meta:
description = \"Sample Description of the Rule\"
author = \"author@example.com\"
events:
// This will just generate lots of detections
$event.metadata.event_type = \"NETWORK_HTTP\"
condition:
$event
} ",
"liveRuleEnabled": true,
"versionCreateTime": "2020-10-13T23:18:13.146879Z",
"compilationState": "SUCCEEDED"
}
다음 예시에서는 Chronicle API와 함께 규칙 세부정보 가져오기 작업을 사용할 때 수신되는 JSON 결과 출력을 설명합니다.
{
"name": "projects/PROJECT_ID/locations/us/instances/INSTANCE_ID/rules/RULE_ID",
"revisionId": "v_1733917896_973567000",
"displayName": "Test_rule_SingleEvent",
"text": "rule Test_rule_SingleEvent {\n // This rule matches single events. Rules can also match multiple events within\n // some time window. For details about how to write a multi-event rule, see\n // URL\n\n meta:\n // Allows for storage of arbitrary key-value pairs of rule details - who\n // wrote it, what it detects on, version control, etc.\n // The \"author\" and \"severity\" fields are special, as they are used as\n // columns on the rules dashboard. If you want to sort based on\n // these fields on the dashboard, make sure to add them here.\n // Severity value, by convention, should be \"Low\", \"Medium\" or \"High\"\n author = \"example_user\"\n description = \"windowed single event example rule\"\n //severity = \"Medium\"\n\n events:\n $e.metadata.event_type = \"USER_LOGIN\"\n $e.principal.user.userid = $user\n\n //outcome:\n // For a multi-event rule an aggregation function is required\n // e.g., risk_score = max(0)\n // See URL\n //$risk_score = 0\n match:\n $user over 1m\n\n condition:\n #e > 0\n}\n",
"author": "example_user",
"metadata": {
"author": "example_user",
"description": "windowed single event example rule",
"severity": null
},
"createTime": "2024-12-11T11:36:18.192127Z",
"revisionCreateTime": "2024-12-11T11:51:36.973567Z",
"compilationState": "SUCCEEDED",
"type": "SINGLE_EVENT",
"allowedRunFrequencies": [
"LIVE",
"HOURLY",
"DAILY"
],
"etag": "CMj55boGEJjondAD",
"ruleId": "RULE_ID",
"versionId": "RULE_ID@v_1733917896_973567000",
"ruleName": "Test_rule_SingleEvent",
"ruleText": "rule Test_rule_SingleEvent {\n // This rule matches single events. Rules can also match multiple events within\n // some time window. For details about how to write a multi-event rule, see\n // URL\n\n meta:\n // Allows for storage of arbitrary key-value pairs of rule details - who\n // wrote it, what it detects on, version control, etc.\n // The \"author\" and \"severity\" fields are special, as they are used as\n // columns on the rules dashboard. If you want to sort based on\n // these fields on the dashboard, make sure to add them here.\n // Severity value, by convention, should be \"Low\", \"Medium\" or \"High\"\n author = \"example_user\"\n description = \"windowed single event example rule\"\n //severity = \"Medium\"\n\n events:\n $e.metadata.event_type = \"USER_LOGIN\"\n $e.principal.user.userid = $user\n\n //outcome:\n // For a multi-event rule an aggregation function is required\n // e.g., risk_score = max(0)\n // See URL\n //$risk_score = 0\n match:\n $user over 1m\n\n condition:\n #e > 0\n}\n",
"ruleType": "SINGLE_EVENT",
"versionCreateTime": "2024-12-11T11:51:36.973567Z"
}
출력 메시지
규칙 세부정보 가져오기 작업은 다음 출력 메시지를 제공합니다.
| 출력 메시지 | 메시지 설명 |
|---|---|
Successfully fetched information about the rule with ID
RULE_ID in Google Chronicle.
|
작업이 완료되었습니다. |
Error executing action "Get Rule Details". Reason:
ERROR_REASON
|
작업이 실패했습니다.
서버, 입력 매개변수 또는 사용자 인증 정보에 대한 연결을 확인하세요. |
스크립트 결과
다음 표에서는 규칙 세부정보 가져오기 작업을 사용할 때 스크립트 결과 출력의 값을 설명합니다.
| 스크립트 결과 이름 | 값 |
|---|---|
is_success |
true 또는 false |
데이터 테이블에 CIDR이 있는지 여부
데이터 테이블의 CIDR을 사용하여 Google SecOps의 특정 데이터 테이블에 특정 CIDR 값이 있는지 확인합니다.
이 작업은 Google SecOps 항목에서 실행되지 않습니다.
작업 입력
데이터 테이블에 CIDR이 있는지 확인 작업에는 다음 매개변수가 필요합니다.
| 매개변수 | 설명 |
|---|---|
Data Table Name |
필수 입력란입니다. 검색할 데이터 테이블의 표시 이름입니다. |
Column |
(선택사항) 데이터 테이블 내에서 검색할 열의 쉼표로 구분된 목록입니다. 값을 제공하지 않으면 작업이 모든 열을 검색합니다. |
CIDR |
필수 입력란입니다. 데이터 테이블에서 검색할 CIDR 값의 쉼표로 구분된 목록입니다. |
Max Data Table Rows To Return |
필수 입력란입니다. 일치하는 값마다 반환할 데이터 테이블 행 수입니다. 최댓값은 기본값은 |
작업 출력
데이터 테이블에 CIDR이 있는지 확인 작업은 다음 출력을 제공합니다.
| 작업 출력 유형 | 가용성 |
|---|---|
| 케이스 월 연결 | 사용 불가 |
| 케이스 월 링크 | 사용 불가 |
| 케이스 월 테이블 | 사용 불가 |
| 보강 테이블 | 사용 불가 |
| JSON 결과 | 사용 가능 |
| 출력 메시지 | 사용 가능 |
| 스크립트 결과 | 사용 가능 |
JSON 결과
다음 예시에서는 데이터 테이블의 CIDR 작업을 사용할 때 수신되는 JSON 결과 출력을 설명합니다.
[{
"Entity": "asda",
"EntityResult": {
"is_found": true,
"matched_rows": [
{
"name": "projects/365235532452/locations/us/instances/df6f1958-0381-41f9-8794-08a3229744a5/dataTables/data_table/dataTableRows/840d18a85944833e1b97ed6d2fb11377",
"values": {
"columnName1": "asda",
"columnName2": "asdasd",
"columnName3": "zxczxc"
},
"createTime": "2025-05-14T12:52:51.908143Z",
"updateTime": "2025-05-14T12:52:51.908143Z"
}
]
}
}]
출력 메시지
데이터 테이블에 CIDR이 있는지 확인 작업은 다음 출력 메시지를 제공합니다.
| 출력 메시지 | 메시지 설명 |
|---|---|
Successfully searched provided CIDR values in the data table
DATA_TABLE_NAME in Google SecOps |
작업이 완료되었습니다. |
Error executing action "Is CIDR In Data Table". Reason:
ERROR_REASON |
작업이 실패했습니다. 서버, 입력 매개변수 또는 사용자 인증 정보에 대한 연결을 확인하세요. |
스크립트 결과
다음 표에서는 데이터 테이블에 CIDR이 있음 작업을 사용할 때 스크립트 결과 출력 값을 설명합니다.
| 스크립트 결과 이름 | 값 |
|---|---|
is_success |
true 또는 false |
데이터 테이블에 값이 있음
데이터 테이블의 값을 사용하여 제공된 값이 Google SecOps의 데이터 테이블에 있는지 확인합니다.
이 작업은 Google SecOps 항목에서 실행되지 않습니다.
데이터 테이블 캐싱
캐싱을 사용 설정하여 Google SecOps에 대한 반복 요청을 줄이고 플레이북 실행 속도를 높일 수 있습니다.
캐싱 작동 방식:
Use Cache를 선택하면 작업이 검색된 데이터 테이블을 Google SecOps 환경의 공유 캐시에 저장합니다. 동일한 환경에서 플레이북 및 지원되는 데이터 테이블 작업 전반에 걸친 후속 실행은 캐시된 데이터가 만료될 때까지 이를 재사용합니다.전체 테이블 캐싱: 캐시가 비어 있거나 만료되면 작업은
Values와 일치하는 행만 가져오는 것이 아니라 전체 데이터 테이블을 가져와 캐시합니다. 그러면 동일한 테이블에서 다른 값을 후속 검색할 때 Google SecOps를 쿼리하지 않고 캐시를 재사용할 수 있습니다.출력 행 한도:
Max Data Table Rows To Return는 캐시에 저장된 행이 아니라 각 값의 작업 출력에서 반환되는 일치하는 행을 제한합니다.Cache TTL의 영향: 작업이 Google SecOps에서 새 데이터를 가져오기 전에 캐시된 데이터가 유효한 기간을 제어합니다.- 더 긴 TTL: API 요청을 줄이고 플레이북 속도를 높이지만 캐시가 만료될 때까지 데이터 테이블 업데이트가 반영되지 않습니다.
- 짧은 TTL: 자주 변경되는 테이블의 결과를 최신 상태로 유지하지만 Google SecOps에 대한 요청이 증가합니다.
작업 입력
데이터 테이블에 값이 있음 작업에는 다음 매개변수가 필요합니다.
| 매개변수 | 설명 |
|---|---|
Data Table Name |
필수 입력란입니다. 검색할 데이터 테이블의 표시 이름입니다. |
Column |
(선택사항) 검색할 열의 쉼표로 구분된 목록입니다. 값을 제공하지 않으면 작업에서 모든 열을 검색합니다. |
Values |
필수 입력란입니다. 검색할 값의 쉼표로 구분된 목록입니다. |
Case Insensitive Search |
(선택사항) 선택하면 검색 시 대소문자를 구분하지 않습니다. 기본적으로 사용 설정됩니다. |
Max Data Table Rows To Return |
필수 입력란입니다. 일치하는 값당 반환할 데이터 테이블 행 수입니다. 최댓값은 |
Use Cache |
(선택사항) 선택하면 작업이 실행될 때마다 Google SecOps를 쿼리하는 대신 사용 가능한 경우 캐시된 데이터 테이블 결과를 사용합니다. 자세한 내용은 데이터 테이블 캐싱을 참조하세요. |
Cache TTL |
(선택사항) 작업이 Google SecOps에서 새 데이터를 가져오기 전의 캐시 TTL(분)입니다. 자세한 내용은 데이터 테이블 캐싱을 참조하세요. 최솟값은 기본값은 |
작업 출력
데이터 테이블에 값이 있는지 확인 작업은 다음 출력을 제공합니다.
| 작업 출력 유형 | 가용성 |
|---|---|
| 케이스 월 연결 | 사용 불가 |
| 케이스 월 링크 | 사용 불가 |
| 케이스 월 테이블 | 사용 불가 |
| 보강 테이블 | 사용 불가 |
| JSON 결과 | 사용 가능 |
| 출력 메시지 | 사용 가능 |
| 스크립트 결과 | 사용 가능 |
JSON 결과
다음 예시에서는 데이터 테이블에 값 있음 작업을 사용할 때 수신되는 JSON 결과 출력을 설명합니다.
[{
"Entity": "asda",
"EntityResult": {
"is_found": true,
"Used cache": true,
"matched_rows": [
{
"name": "projects/365235532452/locations/us/instances/df6f1958-0381-41f9-8794-08a3229744a5/dataTables/data_table/dataTableRows/840d18a85944833e1b97ed6d2fb11377",
"values": {
"columnName1": "asda",
"columnName2": "asdasd",
"columnName3": "zxczxc"
},
"createTime": "2025-05-14T12:52:51.908143Z",
"updateTime": "2025-05-14T12:52:51.908143Z"
}
]
}
}]
출력 메시지
Is Value In Data Table 작업은 다음 출력 메시지를 제공합니다.
| 출력 메시지 | 메시지 설명 |
|---|---|
Successfully searched provided values in the data table
DATA_TABLE_NAME
in Google SecOps.
|
작업이 완료되었습니다. |
| '데이터 표에 값이 있음' 작업을 실행하는 중에 오류가 발생했습니다. 이유: ERROR_REASON | 작업이 실패했습니다.
서버, 입력 매개변수 또는 사용자 인증 정보에 대한 연결을 확인하세요. |
Error executing action "Is Value In Data Table". Reason: the
following data tables were not found in:
DATA_TABLE_NAME:
COLUMN_NAMES. Please check the
spelling.
|
작업이 실패했습니다. |
Error executing action "Is Value In Data Table". Reason:
This action isn't supported for Backstory API configuration. Please update
the integration configuration.
|
작업이 실패했습니다. |
스크립트 결과
다음 표에서는 데이터 테이블의 값 작업을 사용할 때 스크립트 결과 출력의 값을 설명합니다.
| 스크립트 결과 이름 | 값 |
|---|---|
is_success |
true 또는 false |
데이터 테이블에 값이 있는지 비동기식으로 확인
데이터 테이블의 값이 비동기식인지 확인 작업을 사용하여 장기 실행 검색 작업을 통해 Google SecOps의 데이터 테이블에서 제공된 값이 비동기식으로 발견되는지 확인합니다.
이 작업은 Google SecOps 항목에서 실행되지 않습니다.
데이터 테이블 캐싱
캐싱을 사용 설정하여 Google SecOps에 대한 반복 요청을 줄이고 플레이북 실행 속도를 높일 수 있습니다.
캐싱 작동 방식:
Use Cache를 선택하면 작업이 검색된 데이터 테이블을 Google SecOps 환경의 공유 캐시에 저장합니다. 동일한 환경에서 플레이북 및 지원되는 데이터 테이블 작업 전반에 걸친 후속 실행은 캐시된 데이터가 만료될 때까지 이를 재사용합니다.캐시된 경우 즉시 완료: 데이터 테이블에 유효한 캐시가 있으면 작업이 캐시를 검색하고 Google SecOps에서 비동기 검색을 시작하지 않고 즉시 완료됩니다.
행이 1,000,000개 이상인 테이블: 데이터 테이블이 1,000,000행을 초과하는 경우 작업은 검색 결과를 반환하지만 불완전한 사본이 저장되지 않도록 테이블 캐싱을 건너뜁니다.
Cache TTL의 영향: 작업이 Google SecOps에서 새 데이터를 가져오기 전에 캐시된 데이터가 유효한 기간을 제어합니다.- 더 긴 TTL: API 요청을 줄이고 플레이북 속도를 높이지만 캐시가 만료될 때까지 데이터 테이블 업데이트가 반영되지 않습니다.
- 짧은 TTL: 자주 변경되는 테이블의 결과를 최신 상태로 유지하지만 Google SecOps에 대한 요청이 증가합니다.
작업 입력
Is Value In Data Table Async 작업에는 다음 매개변수가 필요합니다.
| 매개변수 | 설명 |
|---|---|
Data Table Name |
필수 입력란입니다. 검색할 데이터 테이블의 표시 이름입니다. |
Column |
(선택사항) 데이터 테이블 내에서 검색할 열의 쉼표로 구분된 목록입니다. 값을 제공하지 않으면 작업에서 모든 열을 검색합니다. |
Values |
필수 입력란입니다. 데이터 표 내에서 검색할 값의 쉼표로 구분된 목록입니다. |
Case Insensitive Search |
(선택사항) 선택하면 검색 시 대소문자를 구분하지 않습니다. 기본적으로 사용 설정됩니다. |
Max Data Table Rows To Return |
필수 입력란입니다. 일치하는 값마다 반환할 데이터 테이블 행 수입니다. 최댓값은 기본값은 |
Use Cache |
(선택사항) 선택하면 작업이 실행될 때마다 Google SecOps를 쿼리하는 대신 사용 가능한 경우 캐시된 데이터 테이블 결과를 사용합니다. 자세한 내용은 데이터 테이블 캐싱을 참조하세요. |
Cache TTL |
(선택사항) 작업이 Google SecOps에서 새 데이터를 가져오기 전의 캐시 TTL(분)입니다. 자세한 내용은 데이터 테이블 캐싱을 참조하세요. 최솟값은 기본값은 |
작업 출력
Is Value In Data Table Async 작업은 다음 출력을 제공합니다.
| 작업 출력 유형 | 가용성 |
|---|---|
| 케이스 월 연결 | 사용 불가 |
| 케이스 월 링크 | 사용 불가 |
| 케이스 월 테이블 | 사용 불가 |
| 보강 테이블 | 사용 불가 |
| JSON 결과 | 사용 가능 |
| 출력 메시지 | 사용 가능 |
| 스크립트 결과 | 사용 가능 |
JSON 결과
다음 예시에서는 Is Value In Data Table Async 작업을 사용할 때 수신되는 JSON 결과 출력을 설명합니다.
[
{
"Entity": "example_value",
"EntityResult": {
"is_found": true,
"Used cache": true,
"matched_rows": [
{
"createTime": "",
"name": "projects/{project_id}/locations/{location}/instances/{instance_id}/dataTables/{table_id}/dataTableRows/{row_id}",
"updateTime": "",
"values": {
"columnName1": "example_value",
"columnName2": "sample_data"
}
}
]
}
}
]
출력 메시지
Is Value In Data Table Async 작업은 다음 출력 메시지를 제공합니다.
| 출력 메시지 | 메시지 설명 |
|---|---|
Successfully searched provided values in the data table
DATA_TABLE_NAME.
|
작업이 완료되었습니다. |
Error executing action "Is Value In Data Table Async". Reason:
ERROR_REASON.
|
작업이 실패했습니다. |
스크립트 결과
다음 표에서는 데이터 테이블에 값이 있는지 비동기식으로 확인 작업을 사용할 때 스크립트 결과 출력 값을 설명합니다.
| 스크립트 결과 이름 | 값 |
|---|---|
is_success |
true 또는 false |
값이 참조 목록에 있음
참조 목록에 값 있음 작업을 사용하여 제공된 값이 Google SecOps의 참조 목록에 있는지 확인합니다.
이 작업은 Google SecOps 항목에서 실행되지 않습니다.
작업 입력
Is Value In Reference List 작업에는 다음 매개변수가 필요합니다.
| 매개변수 | 설명 |
|---|---|
Reference List Names |
필수 입력란입니다. 검색할 참조 목록 이름을 쉼표로 구분한 목록입니다. |
Values |
필수 입력란입니다. 검색할 값의 쉼표로 구분된 목록입니다. |
Case Insensitive Search |
(선택사항) 선택하면 검색 시 대소문자를 구분하지 않습니다. |
작업 출력
Is Value In Reference List 작업은 다음 출력을 제공합니다.
| 작업 출력 유형 | 가용성 |
|---|---|
| 케이스 월 연결 | 사용 불가 |
| 케이스 월 링크 | 사용 불가 |
| 케이스 월 테이블 | 사용 불가 |
| 보강 테이블 | 사용 불가 |
| JSON 결과 | 사용 가능 |
| 출력 메시지 | 사용 가능 |
| 스크립트 결과 | 사용 가능 |
JSON 결과
다음 예시에서는 Backstory API와 함께 참조 목록의 값 작업을 사용할 때 수신되는 JSON 결과 출력을 설명합니다.
{
"Entity": "example.com",
"EntityResult": {
"found_in": [
"Reference list names, where item was found"
],
"not_found_in": [
"Reference list names, where items wasn't found"
],
"overall_status": "found, if at least one reference list had the value/not found, if non of the reference lists found the value"
}
}
다음 예시에서는 Chronicle API와 함께 참조 목록의 값 작업을 사용할 때 수신되는 JSON 결과 출력을 설명합니다.
{
"Entity": "example.com",
"EntityResult": {
"found_in": [
"Reference list names, where item was found"
],
"not_found_in": [
"Reference list names, where items wasn't found"
],
"overall_status": "found, if at least one reference list had the value/not found, if non of the reference lists found the value"
}
}
출력 메시지
Is Value In Reference List 작업은 다음 출력 메시지를 제공합니다.
| 출력 메시지 | 메시지 설명 |
|---|---|
Successfully searched provided values in the reference lists in
Google Chronicle.
|
작업이 완료되었습니다. |
| '참조 목록에 값이 있음' 작업을 실행하는 중에 오류가 발생했습니다. 이유: ERROR_REASON | 작업이 실패했습니다.
서버, 입력 매개변수 또는 사용자 인증 정보에 대한 연결을 확인하세요. |
Error executing action "Is Value In Reference List". Reason: the
following reference lists were not found in Google Chronicle:
MISSING_REFERENCE_LIST_NAME(S).
Please use the action "Get Reference Lists" to see what reference lists are
available.
|
작업이 실패했습니다. 참조 목록 가져오기 작업을 실행하여 사용 가능한 목록을 확인합니다. |
스크립트 결과
다음 표에서는 참조 목록의 값 작업을 사용할 때 스크립트 결과 출력의 값을 설명합니다.
| 스크립트 결과 이름 | 값 |
|---|---|
is_success |
true 또는 false |
애셋 나열
애셋 나열 작업을 사용하여 지정된 기간 내에 관련 항목을 기준으로 Google SecOps의 애셋을 나열합니다.
이 작업은 MD5, SHA-1, SHA-256 해시만 지원합니다.
이 작업은 다음 Google SecOps 항목에서 실행됩니다.
URLIP AddressHash
작업 입력
애셋 나열 작업에는 다음 매개변수가 필요합니다.
| 매개변수 | 설명 |
|---|---|
Max Hours Backwards |
애셋을 가져오기 위해 현재 시간으로부터 거슬러 올라갈 시간입니다.
기본값은 |
Create Insight |
선택하면 작업에서 항목에 대한 정보가 포함된 통계를 만듭니다. 기본적으로 사용 설정됩니다. |
Max Assets To Return |
반환할 애셋 수입니다. 기본값은 |
Time Frame |
(선택사항) 결과를 가져올 기간입니다. 가능한 값은 다음과 같습니다.
기본값은 |
Start Time |
ISO 8601 형식의 시작 시간입니다.
|
End Time |
ISO 8601 형식의 종료 시간입니다.
값을 설정하지 않고 |
작업 출력
애셋 나열 작업은 다음 출력을 제공합니다.
| 작업 출력 유형 | 가용성 |
|---|---|
| 케이스 월 연결 | 사용 불가 |
| 케이스 월 링크 | 사용 불가 |
| 케이스 월 테이블 | 사용 가능 |
| 보강 테이블 | 사용 불가 |
| JSON 결과 | 사용 가능 |
| 출력 메시지 | 사용 가능 |
| 스크립트 결과 | 사용 가능 |
케이스 월 테이블
이름: ENTITY_IDENTIFIER
열:
- 호스트 이름
- IP 주소
- 처음 발견된 아티팩트
- 마지막으로 확인된 아티팩트
JSON 결과
다음 예시에서는 Backstory API와 함께 애셋 나열 작업을 사용할 때 수신되는 JSON 결과 출력을 보여줍니다.
{
"assets": [
{
"asset": {
"hostname": "example"
},
"firstSeenArtifactInfo": {
"artifactIndicator": {
"domainName": "www.example.com"
},
"seenTime": "2020-02-28T09:18:15.675Z"
},
"lastSeenArtifactInfo": {
"artifactIndicator": {
"domainName": "www.example.com"
},
"seenTime": "2020-09-24T06:43:59Z"
}
}
],
"uri": [
"https://INSTANCE/domainResults?domain=www.example.com&selectedList=DomainViewDistinctAssets&whoIsTimestamp=2020-09-27T12%3A07%3A34.166830443Z"
]
}
다음 예시에서는 Chronicle API와 함께 애셋 나열 작업을 사용할 때 수신되는 JSON 결과 출력을 보여줍니다.
[
{
"Entity": "192.0.2.229",
"EntityResult": {
"assets": [
{
"artifactIndicator": {
"domain": "example.com"
},
"sources": [
"Mandiant Open Source Intelligence"
],
"categories": [
"Indicator was published in publicly available sources"
],
"assetIndicators": [
{
"assetIpAddress": "192.0.2.229"
}
],
"iocIngestTimestamp": "2024-09-20T14:14:07.843Z",
"firstSeenTimestamp": "2025-01-15T11:20:00Z",
"lastSeenTimestamp": "2025-01-15T11:20:00Z",
"filterProperties": {
"stringProperties": {
"TLD": {
"values": [
{
"rawValue": ".com"
}
]
},
"IOC FEED": {
"values": [
{
"rawValue": "Mandiant Open Source Intelligence"
}
]
},
"IOC CATEGORIES": {
"values": [
{
"rawValue": "Indicator was published in publicly available sources"
}
]
},
"IOC CONFIDENCE SCORE": {
"values": [
{
"rawValue": "High"
}
]
},
"IOC/ALERT SEVERITY": {
"values": [
{
"rawValue": "Medium"
}
]
}
}
},
"confidenceBucket": "High",
"rawSeverity": "Medium",
"logType": "OPEN_SOURCE_INTEL_IOC",
"confidenceScore": 100,
"globalCustomerId": "ID",
"confidenceScoreBucket": {
"rangeEnd": 100
},
"categorization": "Indicator was published in publicly available sources",
"domainAndPorts": {
"domain": "example.com"
},
"activeTimerange": {
"startTime": "1970-01-01T00:00:01Z",
"endTime": "9999-12-31T23:59:59Z"
},
"feedName": "MANDIANT",
"id": "ID",
"fieldAndValue": {
"value": "ex ",
"valueType": "DOMAIN_NAME"
}
},
{
"artifactIndicator": {
"domain": "example.com"
},
"sources": [
"Mandiant Active Breach Intelligence"
],
"categories": [
"Indicator was published in publicly available sources"
],
"assetIndicators": [
{
"assetIpAddress": "192.0.2.229"
}
],
"iocIngestTimestamp": "2023-07-05T02:42:52.935Z",
"firstSeenTimestamp": "2025-01-15T11:20:00Z",
"lastSeenTimestamp": "2025-01-15T11:20:00Z",
"filterProperties": {
"stringProperties": {
"IOC/ALERT SEVERITY": {
"values": [
{
"rawValue": "Medium"
}
]
},
"IOC CONFIDENCE SCORE": {
"values": [
{
"rawValue": "High"
}
]
},
"IOC FEED": {
"values": [
{
"rawValue": "Mandiant Active Breach Intelligence"
}
]
},
"IOC CATEGORIES": {
"values": [
{
"rawValue": "Indicator was published in publicly available sources"
}
]
},
"TLD": {
"values": [
{
"rawValue": ".com"
}
]
}
}
},
"confidenceBucket": "High",
"rawSeverity": "Medium",
"logType": "MANDIANT_ACTIVE_BREACH_IOC",
"confidenceScore": 100,
"globalCustomerId": "ID",
"confidenceScoreBucket": {
"rangeEnd": 100
},
"categorization": "Indicator was published in publicly available sources",
"domainAndPorts": {
"domain": "example.com"
},
"activeTimerange": {
"startTime": "1970-01-01T00:00:01Z",
"endTime": "9999-12-31T23:59:59Z"
},
"feedName": "MANDIANT",
"id": "ID",
"fieldAndValue": {
"value": "example.com",
"valueType": "DOMAIN_NAME"
}
}
],
"uri": "https://INSTANCE.backstory.chronicle.security/destinationIpResults?ADDRESS=192.0.2.229&selectedList=IpViewDistinctAssets&referenceTime=2025-01-23T11%3A16%3A24.517449Z"
}
}
]
출력 메시지
애셋 나열 작업은 다음 출력 메시지를 제공합니다.
| 출력 메시지 | 메시지 설명 |
|---|---|
Successfully listed related assets for the following entities
from Google Chronicle:
ENTITY_IDENTIFIER |
작업이 완료되었습니다. |
Error executing action "List Assets". Reason:
ERROR_REASON |
작업이 실패했습니다. 서버, 입력 매개변수 또는 사용자 인증 정보에 대한 연결을 확인하세요. |
스크립트 결과
다음 표에서는 애셋 나열 작업을 사용할 때 스크립트 결과 출력의 값을 설명합니다.
| 스크립트 결과 이름 | 값 |
|---|---|
is_success |
true 또는 false |
이벤트 나열
이벤트 나열 작업을 사용하여 지정된 기간 내에 특정 애셋의 이벤트를 나열합니다.
이 작업은 10,000개의 이벤트만 가져올 수 있습니다.
이 작업은 다음 Google SecOps 항목에서 실행됩니다.
IP addressMAC addressHostname
작업 입력
이벤트 나열 작업에는 다음 매개변수가 필요합니다.
| 매개변수 | 설명 |
|---|---|
Event Types |
쉼표로 구분된 이벤트 유형 목록입니다.
값을 제공하지 않으면 모든 이벤트 유형을 가져옵니다. 가능한 모든 값 목록은 이벤트 유형 가능한 값을 참조하세요. |
Time Frame |
지정된 기간 더 나은 결과를 얻으려면 가능한 한 작게 유지하는 것이 좋습니다.
가능한 값은 다음과 같습니다.
기본값은 |
Start Time |
ISO 8601 형식의 시작 시간입니다.
|
End Time |
ISO 8601 형식의 종료 시간입니다. 값이 제공되지 않고 이 매개변수는 |
Reference Time |
이벤트 검색의 참조 시간입니다.
값을 제공하지 않으면 작업에서 종료 시간을 참조로 사용합니다. |
Output |
필수 입력란입니다. 출력 형식입니다. 가능한 값은 다음과 같습니다.
|
Max Events To Return |
각 항목 유형에 대해 처리할 이벤트 수입니다. 기본값은 |
이벤트 유형의 가능한 값
Event Type 매개변수에 사용할 수 있는 값은 다음과 같습니다.
EVENTTYPE_UNSPECIFIEDPROCESS_UNCATEGORIZEDPROCESS_LAUNCHPROCESS_INJECTIONPROCESS_PRIVILEGE_ESCALATIONPROCESS_TERMINATIONPROCESS_OPENPROCESS_MODULE_LOADREGISTRY_UNCATEGORIZEDREGISTRY_CREATIONREGISTRY_MODIFICATIONREGISTRY_DELETIONSETTING_UNCATEGORIZEDSETTING_CREATIONSETTING_MODIFICATIONSETTING_DELETIONMUTEX_UNCATEGORIZEDMUTEX_CREATIONFILE_UNCATEGORIZEDFILE_CREATIONFILE_DELETIONFILE_MODIFICATIONFILE_READFILE_COPYFILE_OPENFILE_MOVEFILE_SYNCUSER_UNCATEGORIZEDUSER_LOGINUSER_LOGOUTUSER_CREATIONUSER_CHANGE_PASSWORDUSER_CHANGE_PERMISSIONSUSER_STATSUSER_BADGE_INUSER_DELETIONUSER_RESOURCE_CREATIONUSER_RESOURCE_UPDATE_CONTENTUSER_RESOURCE_UPDATE_PERMISSIONSUSER_COMMUNICATIONUSER_RESOURCE_ACCESSUSER_RESOURCE_DELETIONGROUP_UNCATEGORIZEDGROUP_CREATIONGROUP_DELETIONGROUP_MODIFICATIONEMAIL_UNCATEGORIZEDEMAIL_TRANSACTIONEMAIL_URL_CLICKNETWORK_UNCATEGORIZEDNETWORK_FLOWNETWORK_CONNECTIONNETWORK_FTPNETWORK_DHCPNETWORK_DNSNETWORK_HTTPNETWORK_SMTPSTATUS_UNCATEGORIZEDSTATUS_HEARTBEATSTATUS_STARTUPSTATUS_SHUTDOWNSTATUS_UPDATESCAN_UNCATEGORIZEDSCAN_FILESCAN_PROCESS_BEHAVIORSSCAN_PROCESSSCAN_HOSTSCAN_VULN_HOSTSCAN_VULN_NETWORKSCAN_NETWORKSCHEDULED_TASK_UNCATEGORIZEDSCHEDULED_TASK_CREATIONSCHEDULED_TASK_DELETIONSCHEDULED_TASK_ENABLESCHEDULED_TASK_DISABLESCHEDULED_TASK_MODIFICATIONSYSTEM_AUDIT_LOG_UNCATEGORIZEDSYSTEM_AUDIT_LOG_WIPESERVICE_UNSPECIFIEDSERVICE_CREATIONSERVICE_DELETIONSERVICE_STARTSERVICE_STOPSERVICE_MODIFICATIONGENERIC_EVENTRESOURCE_CREATIONRESOURCE_DELETIONRESOURCE_PERMISSIONS_CHANGERESOURCE_READRESOURCE_WRITTENANALYST_UPDATE_VERDICTANALYST_UPDATE_REPUTATIONANALYST_UPDATE_SEVERITY_SCOREANALYST_UPDATE_STATUSANALYST_ADD_COMMENT
작업 출력
이벤트 나열 작업은 다음 출력을 제공합니다.
| 작업 출력 유형 | 가용성 |
|---|---|
| 케이스 월 연결 | 사용 불가 |
| 케이스 월 링크 | 사용 불가 |
| 케이스 월 테이블 | 사용 불가 |
| 보강 테이블 | 사용 불가 |
| JSON 결과 | 사용 가능 |
| 출력 메시지 | 사용 가능 |
| 스크립트 결과 | 사용 가능 |
JSON 결과
다음 예시에서는 이벤트 나열 작업을 사용할 때 수신되는 JSON 결과 출력을 설명합니다.
{
"statistics": {
"NETWORK_CONNECTION": 10
}
{
"events": [
{
"metadata": {
"eventTimestamp": "2020-09-28T14:20:00Z",
"eventType": "NETWORK_CONNECTION",
"productName": "EXAMPLE Name",
"productEventType": "NETWORK_DNS",
"ingestedTimestamp": "2020-09-28T16:28:11.615578Z"
},
"principal": {
"hostname": "user-example-pc",
"assetId": "EXAMPLE:user-example-pc",
"process": {
"pid": "1101",
"productSpecificProcessId": "EXAMPLE:32323"
}
},
"target": {
"hostname": "example.com",
"user": {
"userid": "user"
},
"process": {
"pid": "8172",
"file": {
"md5": "a219fc7fcc93890a842183388f80369e",
"fullPath": "C:\\Program Files(x86)\\adobe\\acrobat reader dc\\reader\\acrord32.exe"
},
"commandLine": "\"C:\\Program Files(x86)\\adobe\\acrobat reader dc\\reader\\acrord32.exe\" ...",
"productSpecificProcessId": "EXAMPLE:82315"
}
}
},
{
"metadata": {
"eventTimestamp": "2020-09-28T17:20:00Z",
"eventType": "NETWORK_CONNECTION",
"productName": "EXAMPLE Name",
"productEventType": "NETWORK_DNS",
"ingestedTimestamp": "2020-09-28T16:28:11.615578Z"
},
"principal": {
"hostname": "user-example-pc",
"assetId": "EXAMPLE:user-example-pc",
"process": {
"pid": "1101",
"productSpecificProcessId": "EXAMPLE:32323"
}
},
"target": {
"hostname": "example.com",
"user": {
"userid": "user"
},
"process": {
"pid": "8172",
"file": {
"md5": "a219fc7fcc93890a842183388f80369e",
"fullPath": "C:\\Program Files(x86)\\adobe\\acrobat reader dc\\reader\\acrord32.exe"
},
"commandLine": "\"C:\\Program Files(x86)\\adobe\\acrobat reader dc\\reader\\acrord32.exe\" ...",
"productSpecificProcessId": "EXAMPLE:82315"
}
}
}
],
"uri": [
"https://INSTANCE/assetResults?assetIdentifier=user-example-pc&referenceTime=2020-09-28T17%3A00%3A00Z&selectedList=AssetViewTimeline&startTime=2020-09-28T14%3A20%3A00Z&endTime=2020-09-28T20%3A20%3A00Z"
]
}
}
출력 메시지
이벤트 나열 작업은 다음 출력 메시지를 제공합니다.
| 출력 메시지 | 메시지 설명 |
|---|---|
Successfully listed related events for the following entities
from Google Chronicle:
ENTITY_IDENTIFIER |
작업이 완료되었습니다. |
Error executing action "List Events". Reason:
ERROR_REASON
|
작업이 실패했습니다. 서버, 입력 매개변수 또는 사용자 인증 정보에 대한 연결을 확인하세요. |
Error executing action "List Events". Reason: invalid event type
is provided. Please check the spelling. Supported event types:
SUPPORTED_EVENT_TYPES
|
작업이 실패했습니다.
철자를 확인하세요. |
스크립트 결과
다음 표에서는 이벤트 나열 작업을 사용할 때 스크립트 결과 출력 값을 설명합니다.
| 스크립트 결과 이름 | 값 |
|---|---|
is_success |
true 또는 false |
IOC 나열
IoC 나열 작업을 사용하여 지정된 기간 내에 기업에서 발견된 모든 IoC를 나열합니다.
이 작업은 Google SecOps 항목에서 실행되지 않습니다.
작업 입력
IOC 나열 작업에는 다음 매개변수가 필요합니다.
| 매개변수 | 설명 |
|---|---|
Start Time |
ISO 8601 형식의 결과 시작 시간입니다. |
Max IoCs to Fetch |
반환할 최대 IoC 수입니다.
범위는 기본값은 |
작업 출력
IOC 나열 작업은 다음 출력을 제공합니다.
| 작업 출력 유형 | 가용성 |
|---|---|
| 케이스 월 연결 | 사용 불가 |
| 케이스 월 링크 | 사용 불가 |
| 케이스 월 테이블 | 사용 가능 |
| 보강 테이블 | 사용 불가 |
| JSON 결과 | 사용 가능 |
| 출력 메시지 | 사용 가능 |
| 스크립트 결과 | 사용 가능 |
케이스 월 테이블
열:
- 도메인
- 카테고리
- 소스
- 신뢰도
- 심각도
- IoC 수집 시간
- IoC 최초 확인 시간
- IoC 마지막 확인 시간
- URI
JSON 결과
다음 예시에서는 IOC 나열 작업을 사용할 때 수신되는 JSON 결과 출력을 보여줍니다.
{
"matches":[
{
"artifact":{
"domainName":"www.example.com"
},
"firstSeenTime":"2018-05-25T20:47:11.048998Z",
"iocIngestTime":"2019-08-14T21:00:00Z",
"lastSeenTime":"2019-10-24T16:19:46.880830Z",
"sources":[
{
"category":"Spyware Reporting Server",
"confidenceScore":{
"intRawConfidenceScore":0,
"normalizedConfidenceScore":"Low"
},
"rawSeverity":"Medium",
"source":"Example List"
}
],
"uri":["URI"]
}
],
"moreDataAvailable":true
}
출력 메시지
IOC 나열 작업은 다음 출력 메시지를 제공합니다.
| 출력 메시지 | 메시지 설명 |
|---|---|
Successfully listed IOCs from the provided timeframe in Google
Chronicle. |
작업이 완료되었습니다. |
Error executing action "List IOCs". Reason:
ERROR_REASON.
|
작업이 실패했습니다.
서버, 입력 매개변수 또는 사용자 인증 정보에 대한 연결을 확인하세요. |
스크립트 결과
다음 표에서는 IOC 나열 작업을 사용할 때 스크립트 결과 출력의 값을 설명합니다.
| 스크립트 결과 이름 | 값 |
|---|---|
is_success |
true 또는 false |
유사한 알림 조회
유사한 알림 조회 작업을 사용하여 Google SecOps에서 유사한 알림을 검색합니다.
작업 입력
유사 알림 조회 작업에는 다음 매개변수가 필요합니다.
| 매개변수 | 설명 |
|---|---|
Time Frame |
결과 기간입니다. 최상의 결과를 얻으려면 기간을 최대한 좁게 유지하세요.
가능한 값은 다음과 같습니다.
|
IOCs / Assets |
필수 입력란입니다. 알림에서 찾을 IoC 또는 애셋의 쉼표로 구분된 목록입니다. 이 작업은 제공된 각 항목에 대해 별도의 검색을 수행합니다. |
Similarity By |
유사한 알림을 찾는 데 사용할 속성입니다. 가능한 값은 다음과 같습니다.
기본값은 |
유사성 기준 매개변수 작동 방식
Similarity By 매개변수는 규칙 알림과 외부 알림에 다르게 적용됩니다.
Alert Name, Alert Type and Product또는Alert Name, Alert Type가 선택된 경우:외부 알림의 경우 작업은 이름이 동일한 다른 외부 알림을 검색합니다.
규칙 알림의 경우 작업은 동일한 규칙에서 발생한 알림을 처리합니다.
Product을 선택한 경우:- 이 작업은 규칙 알림인지 외부 알림인지에 관계없이 동일한 제품에서 발생한 알림을 처리합니다.
예를 들어 Crowdstrike에서 발생한 알림은 Crowdstrike의 다른 알림과만 일치합니다.
Only IOCs/Assets을 선택한 경우:이 작업은
IOCs/Assets매개변수에 제공된 IOC를 기반으로 알림을 일치시킵니다. 규칙 알림과 외부 알림 모두에서 이러한 지표를 검색합니다.IOC 알림은 이 옵션이 선택된 경우에만 이 작업을 실행할 수 있습니다. 다른 옵션이 제공되면 작업은 기본적으로
Only IOCs/Assets로 설정됩니다.
유사한 알림 조회 작업은 알림을 분석하는 데 유용한 도구입니다. 이를 통해 분석가는 동일한 기간의 알림을 상호 연관시키고 관련 IOC를 추출하여 사고가 참양성인지 확인할 수 있습니다.
작업 출력
유사 알림 조회 작업은 다음 출력을 제공합니다.
| 작업 출력 유형 | 가용성 |
|---|---|
| 케이스 월 연결 | 사용 불가 |
| 케이스 월 링크 | 사용 가능 |
| 케이스 월 테이블 | 사용 가능 |
| 보강 테이블 | 사용 불가 |
| JSON 결과 | 사용 가능 |
| 출력 메시지 | 사용 가능 |
| 스크립트 결과 | 사용 가능 |
케이스 월 링크
유사한 알림 조회 작업은 다음 링크를 반환할 수 있습니다.
- CBN: GENERATED_LINK_BASED_ON_IU_ROOT_URL
- 규칙: GENERATED_LINK_BASED_ON_IU_ROOT_URL
케이스 월 테이블
테이블 이름: IOC/ASSET_IDENTIFIER
표 열:
- 제품
- 호스트 이름
- IP
- 사용자
- 이메일 주소
- 주제
- URL
- 해시
- 프로세스
- 최초 발생
- 마지막 확인 시간
- 알림 이름
- 일반
JSON 결과
다음 예시에서는 유사한 알림 조회 작업을 사용할 때 수신되는 JSON 결과 출력을 설명합니다.
{
"count": 123,
"distinct": [
{
"first_seen": "time of the first alert that matched our conditions",
"last_seen": "time of the last alert that matched our conditions",
"product_name": "product name",
"used_ioc_asset": "what user provided in the parameter IOCs and Assets",
"name": "Alert Name/Rule Name",
"hostnames": "csv list of unique hostnames that were found in alerts",
"urls": "csv list of unique urls that were found in alerts",
"ips": "csv list of unique ips that were found in alerts",
"subjects": "csv list of unique subjects that were found in alerts",
"users": "csv list of unique users that were found in alerts",
"email_addresses": "csv list of unique email_addresses that were found in alerts",
"hashes": "csv list of unique hashes that were found in alerts",
"processes": "csv list of unique processes that were found in alerts"
"rule_urls": ["Chronicle URL from API response for Rule"]
"count": 123
}
],
"processed_alerts": 10000,
"run_time": "how long it took to run the action or at least API request",
"EXTERNAL_url": "Chronicle URL from API response for EXTERNAL"
}
출력 메시지
유사한 알림 조회 작업은 다음 출력 메시지를 제공합니다.
| 출력 메시지 | 메시지 설명 |
|---|---|
|
작업이 완료되었습니다. |
Error executing action "Lookup Similar Alerts". Reason:
ERROR_REASON
|
작업이 실패했습니다. 서버, 입력 매개변수 또는 사용자 인증 정보에 대한 연결을 확인하세요. |
Error executing action "Lookup Similar Alerts". Reason: all of the
retries are exhausted. Please wait for a minute and try again.
|
작업이 실패했습니다. 몇 분 정도 기다린 후 작업을 다시 실행합니다. |
스크립트 결과
다음 표에서는 유사한 알림 조회 작업을 사용할 때 스크립트 결과 출력의 값을 설명합니다.
| 스크립트 결과 이름 | 값 |
|---|---|
is_success |
true 또는 false |
핑
Ping 작업을 사용하여 Google SecOps에 대한 연결을 테스트합니다.
이 작업은 Google SecOps 항목에서 실행되지 않습니다.
작업 입력
없음
작업 출력
핑 작업은 다음 출력을 제공합니다.
| 작업 출력 유형 | 가용성 |
|---|---|
| 케이스 월 연결 | 사용 불가 |
| 케이스 월 링크 | 사용 불가 |
| 케이스 월 테이블 | 사용 불가 |
| 보강 테이블 | 사용 불가 |
| JSON 결과 | 사용 불가 |
| 출력 메시지 | 사용 가능 |
| 스크립트 결과 | 사용 가능 |
출력 메시지
핑 작업은 다음 출력 메시지를 제공합니다.
| 출력 메시지 | 메시지 설명 |
|---|---|
Successfully connected to the Google Chronicle backstory with the
provided connection parameters! |
작업이 완료되었습니다. |
Failed to connect to the Google Chronicle backstory. Error is
ERROR_REASON
|
작업이 실패했습니다. 서버, 입력 매개변수 또는 사용자 인증 정보에 대한 연결을 확인하세요. |
스크립트 결과
다음 표에서는 Ping 작업을 사용할 때 스크립트 결과 출력 값을 설명합니다.
| 스크립트 결과 이름 | 값 |
|---|---|
is_success |
true 또는 false |
데이터 테이블에서 행 삭제
데이터 테이블에서 행 삭제 작업을 사용하여 Google SecOps의 데이터 테이블에서 행을 삭제합니다.
이 작업은 Google SecOps 항목에서 실행되지 않습니다.
작업 입력
데이터 테이블에서 행 삭제 작업에는 다음 매개변수가 필요합니다.
| 매개변수 | 설명 |
|---|---|
Data Table Name |
필수 입력란입니다. 업데이트할 데이터 테이블의 표시 이름입니다. |
Rows |
필수 입력란입니다. 행을 검색하고 삭제하는 데 사용되는 JSON 객체 목록입니다. 유효한 열만 포함합니다. 기본값은 다음과 같습니다. |
작업 출력
데이터 테이블에서 행 삭제 작업은 다음 출력을 제공합니다.
| 작업 출력 유형 | 가용성 |
|---|---|
| 케이스 월 연결 | 사용 불가 |
| 케이스 월 링크 | 사용 불가 |
| 케이스 월 테이블 | 사용 불가 |
| 보강 테이블 | 사용 불가 |
| JSON 결과 | 사용 가능 |
| 출력 메시지 | 사용 가능 |
| 스크립트 결과 | 사용 가능 |
JSON 결과
다음 예시에서는 데이터 테이블에서 행 삭제 작업을 사용할 때 수신되는 JSON 결과 출력을 설명합니다.
{
"name": "projects/365235532452/locations/us/instances/df6f1958-0381-41f9-8794-08a3229744a5/dataTables/data_table/dataTableRows/840d18a85944833e1b97ed6d2fb11377",
"values": {
"columnName1": "asda",
"columnName2": "asdasd",
"columnName3": "zxczxc"
},
"createTime": "2025-05-14T12:52:51.908143Z",
"updateTime": "2025-05-14T12:52:51.908143Z"
}
출력 메시지
데이터 테이블에서 행 삭제 작업은 다음 출력 메시지를 제공합니다.
| 출력 메시지 | 메시지 설명 |
|---|---|
Successfully removed rows from the data table
DATA_TABLE_NAME in
Google SecOps.
|
작업이 완료되었습니다. |
Error executing action "Remove Rows From Data Table". Reason:
ERROR_REASON
|
작업이 실패했습니다.
서버, 입력 매개변수 또는 사용자 인증 정보에 대한 연결을 확인하세요. |
스크립트 결과
다음 표에서는 데이터 테이블에서 행 삭제 작업을 사용할 때 스크립트 결과 출력 값을 설명합니다.
| 스크립트 결과 이름 | 값 |
|---|---|
is_success |
true 또는 false |
참조 목록에서 값 삭제
참조 목록에서 값 삭제 작업을 사용하여 Google SecOps의 참조 목록에서 값을 삭제합니다.
이 작업은 Google SecOps 항목에서 실행되지 않습니다.
작업 입력
참조 목록에서 값 삭제 작업에는 다음 매개변수가 필요합니다.
| 매개변수 | 설명 |
|---|---|
Reference List Name |
필수 입력란입니다. 업데이트할 참조 목록의 이름입니다. |
Values |
필수 입력란입니다. 참조 목록에서 삭제할 쉼표로 구분된 값 목록입니다. |
작업 출력
참조 목록에서 값 삭제 작업은 다음 출력을 제공합니다.
| 작업 출력 유형 | 가용성 |
|---|---|
| 케이스 월 연결 | 사용 불가 |
| 케이스 월 링크 | 사용 불가 |
| 케이스 월 테이블 | 사용 불가 |
| 보강 테이블 | 사용 불가 |
| JSON 결과 | 사용 가능 |
| 출력 메시지 | 사용 가능 |
| 스크립트 결과 | 사용 가능 |
JSON 결과
다음 예시에서는 Backstory API와 함께 참조 목록에서 값 삭제 작업을 사용할 때 수신되는 JSON 결과 출력을 설명합니다.
{
"name": "list_name",
"description": "description of the list",
"lines": [
"192.0.2.0/24",
"198.51.100.0/24"
],
"create_time": "2020-11-20T17:18:20.409247Z",
"content_type": "CIDR"
}
다음 예시에서는 Chronicle API와 함께 참조 목록에서 값 삭제 작업을 사용할 때 수신되는 JSON 결과 출력을 보여줍니다.
{
"name": "projects/PROJECT_ID/locations/us/instances/INSTANCE_ID/referenceLists/REFERENCE_LIST_NAME",
"displayName": "REFERENCE_LIST_NAME",
"revisionCreateTime": "2025-01-16T09:15:21.795743Z",
"description": "Test reference list",
"entries": [
{
"value": "example.com"
},
{
"value": "exampledomain.com"
}
],
"syntaxType": "REFERENCE_LIST_SYNTAX_TYPE_PLAIN_TEXT_STRING",
"scopeInfo": {
"referenceListScope": {}
},
"createTime": "2025-01-16T09:15:21.795743Z",
"lines": [
"example.com",
"exampledomain.com"
]
}
출력 메시지
참조 목록에서 값 삭제 작업은 다음 출력 메시지를 제공합니다.
| 출력 메시지 | 메시지 설명 |
|---|---|
Successfully removed values from the reference list.
|
작업이 완료되었습니다. |
Error executing action "Remove Values From Reference List". Reason:
ERROR_REASON
|
작업이 실패했습니다.
서버, 입력 매개변수 또는 사용자 인증 정보에 대한 연결을 확인하세요. |
스크립트 결과
다음 표에서는 참조 목록에서 값 삭제 작업을 사용할 때 스크립트 결과 출력의 값을 설명합니다.
| 스크립트 결과 이름 | 값 |
|---|---|
is_success |
true 또는 false |
커넥터
Google SecOps에서 커넥터를 구성하는 방법에 대한 자세한 내용은 데이터 수집 (커넥터)을 참조하세요.
Google Chronicle - Chronicle Alerts Connector
Google Chronicle - Chronicle Alerts Connector를 사용하여 Google SecOps에서 규칙 기반 알림에 대한 정보를 가져옵니다.
개요
Google Chronicle - Chronicle Alerts Connector는 Google SecOps에서 규칙 기반 알림을 수집합니다.
주요 기능 및 운영 세부정보는 다음과 같습니다.
1주일 이내의 데이터를 쿼리합니다. 색인 생성 지연으로 인한 알림 누락을 방지하기 위해 패딩 기간과 커넥터 제한 시간 증가를 구성할 수 있지만, 패딩이 너무 길면 성능에 부정적인 영향을 미칠 수 있습니다.
동적 목록을 활용하여 유연하게 구성할 수 있습니다.
심각도 값이 없는 알림에
Fallback Severity를 제공합니다.
동적 목록 필터
동적 목록은 커넥터 구성 페이지에서 직접 알림을 필터링하는 데 사용됩니다.
연산자 로직
동적 목록은 집합 기반 평가와 여러 줄 로직을 조합하여 필터 규칙을 처리합니다.
쉼표로 구분된 값 (집합 평가): 같은 줄에 있는 값은 쉼표로 구분되며 단일 집합으로 처리됩니다. 적용되는 로직은 사용되는 연산자에 따라 다릅니다.
- 포함 (
=): 허용 목록 역할을 합니다.
값이 목록의 항목과 일치하는 경우 알림을 수집합니다 (예:
Rule.severity = low,medium는low또는medium를 의미함).- 제외 (
!=): 차단 목록으로 작동합니다.
값이 목록의 항목과 일치하지 않는 경우에만 알림을 수집합니다(예:
Rule.ruleName != rule_a,rule_b는 규칙 이름이rule_a및rule_b가 아님을 의미).- 포함 (
별도의 줄 (AND 논리): 동적 목록의 각 별도 줄은 필터를 추가로 제한합니다 (예: 줄 1 AND 줄 2).
지원되는 연산자: (
=,!=,>,<,>=,<=)는 필터 키에 따라 다릅니다.
다음은 연산자 규칙을 사용하는 예시입니다.
Rule.severity = medium: 커넥터가 중간 심각도의 규칙 알림만 수집합니다.
Rule.severity = low,medium: 커넥터는 심각도가 중간 또는 낮음인 규칙 알림만 수집합니다.
Rule.ruleName != rule_a,rule_b: 커넥터는 규칙 이름이
rule_a또는rule_b인 알림을 제외한 모든 알림을 수집합니다.Rule.ruleName = default_rule: 커넥터는
default_rule이름이 있는 규칙 알림만 수집합니다.
지원되는 필터
Chronicle 알림 커넥터는 다음 키에 대한 필터링을 지원합니다.
| 필터 키 | 응답 키 | 연산자 | 가능한 값 |
|---|---|---|---|
Rule.severity |
detection, ruleLabels 또는 severity |
=, !=, >, <,
>=, <= |
값은 대소문자를 구분하지 않습니다. |
Rule.ruleName |
detection 또는 ruleName |
=, != |
사용자가 정의합니다. |
Rule.ruleID |
detection 또는 ruleId |
=, != |
사용자가 정의합니다. |
Rule.ruleType |
detection 또는 ruleClass |
=, != |
값은 대소문자를 구분하지 않습니다. |
Rule.ruleLabels.{key} |
detection 또는 ruleLabels |
=, != |
사용자가 정의합니다. |
ruleLabels 처리
규칙 내에서 특정 라벨을 필터링하려면 Rule.ruleLabels.{key} 형식을 사용합니다.
예를 들어 키가 type이고 값이 suspicious_behaviour인 라벨을 필터링하려면 동적 목록 입력은 다음과 같아야 합니다.
Rule.ruleLabels.type=suspicious_behaviour
커넥터 입력
Chronicle Alerts Connector에는 다음 매개변수가 필요합니다.
기본값은 Medium입니다.
| 매개변수 | 설명 |
|---|---|
Product Field Name |
필수 입력란입니다. 제품 이름이 저장된 필드의 이름입니다. 제품 이름은 주로 매핑에 영향을 미칩니다. 커넥터의 매핑 프로세스를 간소화하고 개선하기 위해 기본값은 코드에서 참조되는 대체 값으로 확인됩니다. 이 매개변수에 잘못된 입력이 있으면 기본적으로 대체 값으로 확인됩니다. 기본값은 |
Event Field Name |
필수 입력란입니다. 이벤트 이름 (하위 유형)을 결정하는 필드의 이름입니다. |
Environment Field Name |
(선택사항) 환경 이름이 저장된 필드의 이름입니다. 환경 필드가 누락된 경우 커넥터는 기본값을 사용합니다. 기본값은 |
Environment Regex Pattern |
(선택사항)
기본값 정규 표현식 패턴이 null이거나 비어 있거나 환경 값이 null인 경우 최종 환경 결과는 기본 환경입니다. |
Script Timeout (Seconds) |
필수 입력란입니다. 현재 스크립트를 실행하는 Python 프로세스의 제한 시간 한도(초)입니다. 기본값은 |
API Root |
필수 입력란입니다. Google SecOps 인스턴스의 API 기준 URL:
|
User's Service Account |
(선택사항) 인증에 사용되는 서비스 계정 JSON 키입니다. 지원되는 경우 기본 제공 사용자 인증 정보를 사용하려면 두 사용자 인증 정보 필드를 모두 비워 둡니다(인증 방법 및 사용자 인증 정보 우선순위 참조). |
Workload Identity Email |
(선택사항) 워크로드 아이덴티티 인증에 사용되는 서비스 계정 이메일입니다 (서비스 계정이 필요한 경우 권장). 두 사용자 인증 정보 필드가 모두 채워진 경우 우선 적용됩니다. 지원되는 경우 기본 제공 사용자 인증 정보를 사용하려면 두 사용자 인증 정보 필드를 모두 비워 둡니다(인증 방법 및 사용자 인증 정보 우선순위 참조). |
Fallback Severity |
필수 입력란입니다. Google SecOps의 알림에 심각도 값이 포함되지 않은 경우 사용할 기본 심각도입니다. 가능한 값은 다음과 같습니다.
|
Max Hours Backwards |
(선택사항) 초기 커넥터 실행 전에 이슈를 검색할 시간입니다. 이 매개변수는 한 번만 적용됩니다. 최댓값은 기본값은 |
Max Alerts To Fetch |
(선택사항) 커넥터 반복마다 처리할 알림 수입니다. 기본값은 |
Disable Event Splitting |
(선택사항) 선택하면 커넥터가 원래 이벤트를 여러 부분으로 분할하지 않으므로 소스와 Google SecOps 간에 이벤트 수가 일치합니다. 기본적으로 사용 설정되지 않습니다. |
Verify SSL |
필수 입력란입니다. 선택하면 통합에서 Google SecOps 서버에 연결할 때 SSL 인증서를 검증합니다. 기본적으로 사용 설정됩니다. |
Proxy Server Address |
(선택사항) 사용할 프록시 서버의 주소입니다. |
Proxy Username |
(선택사항) 인증할 프록시 사용자 이름입니다. |
Proxy Password |
(선택사항) 인증할 프록시 비밀번호입니다. |
Disable Overflow |
(선택사항) 선택하면 커넥터가 Google SecOps 오버플로 메커니즘을 무시합니다. 기본적으로 사용 설정되지 않습니다. |
Validate Dynamic List Entries |
(선택사항) 사용 설정하면 커넥터는 수집 오류를 방지하기 위해 처리하기 전에 동적 목록의 항목이 플랫폼에 있는지 확인합니다. 기본적으로 사용 설정되지 않습니다. |
커넥터 규칙
Google Chronicle - Chronicle Alerts Connector는 프록시를 지원합니다.
커넥터 이벤트
다음 섹션에서는 커넥터에서 검색한 이벤트의 구조를 설명합니다. 이 커넥터는 특히 Google SecOps 내의 감지 규칙에 의해 생성된 알림을 가져옵니다.
규칙 기반 알림
이 이벤트 유형은 감지 규칙이 수신 로그 데이터와 일치할 때 생성됩니다. JSON 출력에는 규칙 메타데이터, 고유 감지 ID, 알림을 트리거한 관련 UDM 이벤트 데이터가 포함됩니다.
{
"alert_type": "RULE",
"event_type": "NETWORK_DHCP",
"type": "RULE_DETECTION",
"detection": [
{
"ruleName": "d3_test",
"urlBackToProduct": "https://INSTANCE/ruleDetections?ruleId=ru_74dd17e2-5aad-4053-acd7-958bead014f2&selectedList=RuleDetectionsViewTimeline&selectedParentDetectionId=de_b5dadaf4-b398-325f-9f09-833b71b3ffbb&selectedTimestamp=2022-02-08T05:02:36Z&versionTimestamp=2020-11-19T18:19:11.951951Z",
"ruleId": "ru_74dd17e2-5aad-4053-acd7-958bead014f2",
"ruleVersion": "ru_74dd17e2-5aad-4053-acd7-958bead014f2@v_1605809951_951951000",
"alertState": "NOT_ALERTING",
"ruleType": "SINGLE_EVENT",
"ruleLabels": [
{
"key": "author",
"value": "analyst123"
},
{
"key": "description",
"value": "8:00 AM local time"
},
{
"key": "severity",
"value": "Medium"
}
]
}
],
"createdTime": "2022-02-08T06:07:33.944951Z",
"id": "de_b5dadaf4-b398-325f-9f09-833b71b3ffbb",
"timeWindow": {
"startTime": "2022-02-08T05:02:36Z",
"endTime": "2022-02-08T05:02:36Z"
},
"collectionElements": [
{
"references": [
{
"event": {
"metadata": {
"eventTimestamp": "2022-02-08T05:02:36Z",
"eventType": "NETWORK_DHCP",
"productName": "Infoblox DHCP",
"ingestedTimestamp": "2022-02-08T05:03:03.892234Z"
},
"principal": {
"ip": [
"198.51.100.255",
"198.51.100.1"
],
"mac": [
"01:23:45:ab:cd:ef"
],
"email_address": [
"example@example.com"
]
},
"target": {
"hostname": "dhcp_server",
"ip": [
"198.51.100.0",
"198.51.100.1"
]
},
"network": {
"applicationProtocol": "DHCP",
"dhcp": {
"opcode": "BOOTREQUEST",
"ciaddr": "198.51.100.255",
"giaddr": "198.51.100.0",
"chaddr": "01:23:45:ab:cd:ef",
"type": "REQUEST",
"clientHostname": "example-user-pc",
"clientIdentifier": "AFm/LDfjAw=="
}
}
}
}
],
"label": "e"
}
],
"detectionTime": "2022-02-08T05:02:36Z"
}
알림 구조
다음 표에서는 Google Chronicle - Chronicle Alerts Connector가 Google SecOps에서 알림 속성을 채우는 방법을 설명합니다.
내부에서 생성된 속성
이러한 속성은 소스 알림에서 추출되는 것이 아니라 플랫폼 프레임워크에서 생성됩니다.
| 알림 속성 이름 | 소스 |
|---|---|
SourceSystemName |
프레임워크에서 내부적으로 생성됩니다. |
TicketId |
알림 감지 ID (id)에서 가져옵니다. |
DisplayId |
자동으로 생성됩니다. |
모든 알림 유형의 속성
이러한 속성은 소스 알림에서 파생됩니다.
| 알림 속성 이름 | 소스 |
|---|---|
Priority |
API 응답 또는 Fallback Severity 매개변수에서 가져옵니다. |
DeviceVendor |
하드 코딩된 값은 Google Chronicle입니다. |
DeviceProduct |
하드 코딩된 값은 RULE입니다. |
Description |
detection/ruleLabels/description에서 가져옵니다(있는 경우). |
Reason |
지원되지 않음 |
SourceGroupingIdentifier |
없음 |
Chronicle Alert - Attachments |
지원되지 않음 |
지원 중단됨: Google Chronicle - Alerts Connector
이 커넥터는 Google SecOps에서 애셋 알림을 가져와 케이스에 수집합니다.
이 커넥터에는 Google SecOps SIEM Search API가 필요합니다.
커넥터 입력
알림 커넥터에는 다음 매개변수가 필요합니다.
| 매개변수 | 설명 |
|---|---|
Product Field Name |
필수 입력란입니다.
제품 이름이 저장된 필드의 이름입니다. 제품 이름은 주로 매핑에 영향을 미칩니다. 커넥터의 매핑 프로세스를 간소화하고 개선하기 위해 기본값은 코드에서 참조되는 대체 값으로 확인됩니다. 이 매개변수에 잘못된 입력이 있으면 기본적으로 대체 값으로 확인됩니다. 기본값은 |
Environment Field Name |
(선택사항) 환경 이름이 저장된 필드의 이름입니다. 환경 필드가 누락된 경우 커넥터는 기본값을 사용합니다. 기본값은 |
Environment Regex Pattern |
(선택사항)
기본값 정규 표현식 패턴이 null이거나 비어 있거나 환경 값이 null인 경우 최종 환경 결과는 기본 환경입니다. |
Script Timeout (Seconds) |
필수 입력란입니다. 현재 스크립트를 실행하는 Python 프로세스의 제한 시간 한도(초)입니다. 기본값은 |
Service Account Credentials |
필수 입력란입니다. 서비스 계정 JSON 파일의 콘텐츠입니다. |
Fetch Max Hours Backwards |
(선택사항) 초기 커넥터 실행 전에 이슈를 가져올 시간입니다. 이 매개변수는 한 번만 적용됩니다. 최댓값은 기본값은 |
지원 중단됨: Google Chronicle - IoC 커넥터
대신 Chronicle 알림 커넥터를 사용하세요.
이 커넥터는 Google SecOps에서 IOC 도메인 일치 항목을 가져와 케이스로 수집합니다.
이 커넥터는 Google SecOps Search API를 사용합니다.
커넥터 입력
Google Chronicle - IoC 커넥터에는 다음 매개변수가 필요합니다.
| 매개변수 | 설명 |
|---|---|
Product Field Name |
필수 입력란입니다.
제품 이름이 저장된 필드의 이름입니다. 제품 이름은 주로 매핑에 영향을 미칩니다. 커넥터의 매핑 프로세스를 간소화하고 개선하기 위해 기본값은 코드에서 참조되는 대체 값으로 확인됩니다. 이 매개변수에 잘못된 입력이 있으면 기본적으로 대체 값으로 확인됩니다. 기본값은 |
Environment Field Name |
(선택사항) 환경 이름이 저장된 필드의 이름입니다. 환경 필드가 누락된 경우 커넥터는 기본값을 사용합니다. 기본값은 |
Environment Regex Pattern |
(선택사항)
기본값 정규 표현식 패턴이 null이거나 비어 있거나 환경 값이 null인 경우 최종 환경 결과는 기본 환경입니다. |
Script Timeout (Seconds) |
필수 입력란입니다. 현재 스크립트를 실행하는 Python 프로세스의 제한 시간 한도(초)입니다. 기본값은 |
Service Account Credentials |
필수 입력란입니다. 서비스 계정 JSON 파일의 콘텐츠입니다. |
Fetch Max Hours Backwards |
(선택사항) 초기 커넥터 실행 전에 알림을 가져올 시간입니다. 이 매개변수는 한 번만 적용됩니다. 최댓값은 기본값은 |
Max Alerts To Fetch |
(선택사항) 커넥터 반복마다 처리할 최대 알림 수입니다. 기본값은 |
작업
작업에 대한 자세한 내용은 새 작업 구성 및 고급 예약을 참조하세요.
작업 구성 기본 요건
작업 구성을 진행하기 전에 Chronicle 알림 커넥터를 구성합니다.
Google Chronicle 작업을 구성하려면 다음 단계를 따르세요.
Google SecOps에서 응답 > 작업 스케줄러로 이동합니다.
add새 작업 만들기를 클릭합니다.
작업 추가 대화상자가 나타나면 해당 Google Chronicle 작업을 선택하고 저장을 클릭합니다.
선택사항: 필요한 경우 작업 이름과 설명을 수정합니다.
작업 세부정보 섹션에서 다음을 수행합니다.
- 통합 필드에서 GoogleChronicle이 선택되었는지 확인합니다.
지정된 간격으로 작업을 자동으로 실행하려면 스케줄러 간격을 설정합니다. 작업 구성을 완료하려면 스케줄러를 구성해야 합니다.
Google Chronicle 작업은 한 번에 대량의 데이터를 동기화할 수 있으므로 스케줄러 간격을 최소 2분으로 설정하는 것이 좋습니다.
Google Chronicle - 데이터 동기화 작업
이 작업은 Chronicle 알림 커넥터 및 Chronicle 알림 생성기 작업에서 만든 알림과 함께 작동하지만 지원 중단된 커넥터(알림 커넥터 및 IOC 커넥터)의 알림과는 작동하지 않습니다.
Google Chronicle 동기화 데이터 작업은 Google SecOps에서 업데이트된 케이스와 알림을 동기화하여 케이스 관리 중에 변경된 사항이 플랫폼 전체에 즉시 반영되도록 합니다.
케이스 및 알림 데이터 동기화
Google Chronicle 동기화 데이터 작업은 케이스의 다음 필드를 추적하고 동기화합니다.
| 추적된 필드 | 동기화된 필드 |
|---|---|
Priority |
Priority |
Status |
Status |
Title |
Title |
| 해당 없음 | Stage |
| 해당 없음 | Google SecOps Case ID |
Google SecOps 케이스 ID는 Google SecOps의 고유한 케이스 식별자입니다.
Google Chronicle 동기화 데이터 작업은 알림에 대해 다음 필드를 추적하고 동기화합니다.
| 추적된 필드 | 동기화된 필드 |
|---|---|
Priority |
Priority |
Status |
Status |
Case ID |
해당 없음 |
| 해당 없음 | Google SecOps Alert ID |
| 해당 없음 | Google SecOps Case ID |
| 해당 없음 | Verdict |
| 해당 없음 | Closure Comment |
| 해당 없음 | Closure Reason |
| 해당 없음 | Closure Root Cause |
| 해당 없음 | Usefulness |
Google SecOps 알림 ID는 Google SecOps의 고유한 알림 식별자입니다.
한 번의 반복에서 작업은 최대 1,000개의 케이스와 1,000개의 알림을 동기화합니다. 동기화는 작업 구성에 지정된 Google SecOps 환경 내에서 발생합니다. 동기화 메커니즘은 지정된 환경의 케이스가 다른 환경과 동기화될 수 없도록 합니다.
Google Chronicle 동기화 데이터 작업 구성
이 작업은 Google SecOps에서 수집된 알림이 포함된 케이스만 동기화합니다.
이 작업을 구성하기 전에 기본 요건 단계를 완료해야 합니다.
Google Chronicle 동기화 데이터 작업을 구성하려면 다음 단계를 따르세요.
파라미터 섹션에서 다음 파라미터를 구성합니다.
매개변수 설명 Environment필수 입력란입니다.
케이스와 알림을 동기화하기 위해 Google SecOps에서 만든 환경의 이름입니다.
API Root필수 입력란입니다.
Google SecOps 인스턴스의 API 기준 URL:
- Chronicle API: 프로젝트 ID, 리전, 인스턴스 ID를 포함합니다(예:
https://us-chronicle.googleapis.com/v1alpha/projects/PROJECT_ID/locations/us/instances/INSTANCE_ID). Chronicle API 루트 찾기를 참조하세요. - Backstory API (기존): 리전별 Backstory 엔드포인트입니다. 기본값은
https://backstory.googleapis.com입니다.
User's Service Account(선택사항)
인증에 사용되는 서비스 계정 JSON 키입니다.
Workload Identity Email가 비어 있는 경우에만 사용됩니다.지원되는 경우 기본 제공 사용자 인증 정보를 사용하려면 두 사용자 인증 정보 필드를 모두 비워 둡니다(인증 방법 및 사용자 인증 정보 우선순위 참조).
Workload Identity Email(선택사항)
워크로드 아이덴티티 인증에 사용되는 서비스 계정 이메일입니다 (서비스 계정이 필요한 경우 권장). 두 사용자 인증 정보 필드가 모두 채워진 경우 우선 적용됩니다.
지원되는 경우 기본 제공 사용자 인증 정보를 사용하려면 두 사용자 인증 정보 필드를 모두 비워 둡니다(인증 방법 및 사용자 인증 정보 우선순위 참조).
Max Hours Backwards(선택사항)
알림을 가져올 시간입니다. 양수만 사용하세요.
기본값은
24입니다.Verify SSL필수 입력란입니다.
선택하면 통합에서 Google SecOps 서버에 연결할 때 SSL 인증서를 검증합니다.
기본적으로 사용 설정됩니다.
Google Chronicle 동기화 데이터 작업은 기본적으로 사용 설정되어 있습니다. 올바르게 구성된 작업을 저장하면 즉시 Google SecOps와 데이터 동기화가 시작됩니다. 작업을 사용 중지하려면 작업 이름 옆에 있는 전환 버튼을 전환합니다.
- Chronicle API: 프로젝트 ID, 리전, 인스턴스 ID를 포함합니다(예:
구성을 완료하려면 저장을 클릭합니다.
저장 버튼이 비활성 상태이면 모든 필수 매개변수를 설정했는지 확인합니다.
선택사항: 저장 후 즉시 작업을 실행하려면 지금 실행을 클릭합니다.
지금 실행 옵션을 사용하면 단일 작업 실행을 트리거하여 현재 알림 및 케이스 데이터를 즉시 동기화할 수 있습니다.
로그 메시지
다음 표에는 Google Chronicle 데이터 동기화 작업에 가능한 로그 메시지가 나와 있습니다.
| 로그 항목 | 유형 | 설명 |
|---|---|---|
Unable to parse credentials as JSON. Please validate creds.
|
오류 | User's Service Account 매개변수에 제공된 서비스 계정이 손상되었습니다. |
"Max Hours Backwards" parameter must be a positive number. |
오류 | Max Hours backwards 매개변수가 0 또는 음수로 설정됩니다. |
Current platform version doesn't support SDK methods designed for
Google SecOps. Please use version 6.1.33 or higher. |
오류 | 현재 Google SecOps 플랫폼 인스턴스 버전은 Chronicle 동기화 데이터 작업 스크립트 실행을 지원하지 않습니다. 즉, 인스턴스의 빌드 버전이 6.1.33 이전입니다. |
Unable to connect to Google SecOps, please validate
your credentials: CREDENTIALS |
오류 | Google SecOps 인스턴스에 대해 서비스 계정 또는 API 루트 값을 검증할 수 없습니다. 연결 테스트가 실패하면 이 오류가 보고됩니다. |
--- Start Processing Updated Cases --- |
정보 | 케이스 처리 루프가 실행되기 시작했습니다. |
Last success time. Date time:DATE_AND_TIME.
Unix:UNIX_EPOCH_TIME
|
정보 | 케이스 또는 알림의 마지막 성공적인 실행 타임스탬프이며 날짜 및 시간 (DATE_AND_TIME)과 유닉스 시간 타임스탬프 (UNIX_EPOCH_TIME)로 표시됩니다. |
Key: "DATABASE_KEY" doesn't exist in the
database. Returning default
value instead: DEFAULT_VALUE |
정보 | 대기 중인 케이스 또는 알림 데이터베이스 키가 데이터베이스에 없습니다. 이 로그 항목은 항상 스크립트의 첫 번째 실행에 표시됩니다. |
Failed to parse data as JSON. Returning default value instead:
"DEFAULT_VALUE. ERROR:
ERROR |
오류 | 데이터베이스에서 가져온 값이 유효한 JSON 형식이 아닙니다. |
Exception was raised from the database. ERROR:
ERROR. |
오류 | 데이터베이스에 연결 문제가 있습니다. |
|
정보 | 대기 중인 케이스 또는 알림 ID가 백로그에서 검색되었습니다. CASE_IDS는 가져온 케이스 ID 수입니다. |
|
오류 | 데이터베이스에서 가져온 대기 중인 케이스 또는 알림 ID 수가 한도 (1,000)를 초과합니다. 한도를 초과하는 ID는 무시됩니다. 이 오류는 데이터베이스 손상 가능성을 나타낼 수 있습니다. |
|
정보 | 새로 업데이트된 케이스 또는 알림 ID를 플랫폼에서 가져왔습니다. |
|
정보 | Google SecOps 인스턴스의 케이스 및 알림 업데이트가 시작되었습니다. |
|
오류 | 지정된 케이스 또는 알림을 Google SecOps와 동기화할 수 없습니다. |
|
정보 | 지정된 대기 중인 케이스 또는 알림이 동기화 재시도 한도 (5)에 도달했으며 백로그에 다시 삽입되지 않습니다. |
|
정보 | Google SecOps와 동기화할 수 없는 케이스 또는 알림 ID 목록입니다. |
Updated External Case IDs for the following cases:
CASE_IDS |
정보 | 작업이 Google SecOps 플랫폼에서 일치하는 Google SecOps 외부 케이스 ID를 업데이트한 케이스 목록입니다. |
Failed to update external ids. |
오류 | 연결 또는 플랫폼 오류로 인해 외부 케이스 ID를 업데이트할 수 없습니다. |
|
오류 | 완료되기 전에 오류로 인해 케이스 또는 알림 업데이트가 중지되었습니다. 자세한 내용은 이 로그 뒤에 있는 스택 트레이스를 참고하세요. |
|
정보 | 케이스 및 알림 업데이트 단계가 완료되었습니다. |
|
오류 | 백로그에 다시 기록할 재시도 횟수가 5회 이하인 실패한 케이스 또는 알림 ID 목록입니다. |
|
정보 | 케이스 및 알림 처리 단계가 완료되었습니다. |
Saving timestamps. |
정보 | 마지막으로 성공한 케이스 및 알림 업데이트 타임스탬프를 데이터베이스에 저장합니다. |
Saving pending ids. |
정보 | 대기 중인 케이스 및 알림 ID를 데이터베이스에 저장합니다. |
Got exception on main handler. Error:
ERROR_REASON |
오류 | 일반적인 종료 오류가 발생했습니다. 스택 트레이스는 특정 오류가 있는 이 로그 뒤에 출력됩니다. |
Google Chronicle Alerts Creator 작업
Google Chronicle 알림 생성기 작업에는 Google SecOps 플랫폼 버전 6.2.30 이상이 필요합니다.
이 작업은 서드 파티 커넥터에서 수집된 알림 (오버플로 알림 포함)을 Google SecOps에 동기화합니다. Google SecOps 감지에서 이미 발생한 알림은 중복되지 않습니다.
Google Chronicle 작업 간의 관계
전체 Google SecOps 배포는 다음 세 가지 구성요소를 동시에 실행합니다.
- Chronicle 알림 커넥터: Google SecOps의 감지 알림을 케이스로 수집합니다.
- Google Chronicle Alerts Creator 작업: 서드 파티 커넥터에서 수집된 알림을 Google SecOps에 동기화하고 각 알림에 고유한 Google SecOps 알림 식별자를 할당합니다.
- Google Chronicle 동기화 데이터 작업: Google SecOps 전반에서 케이스 및 알림 업데이트(예: 우선순위 또는 상태 변경)를 동기화합니다.
Google Chronicle 알림 생성기 작업 구성
작업을 구성하기 전에 기본 요건 단계를 완료했는지 확인합니다.
Google Chronicle Alerts Creator 작업을 구성하려면 다음 단계를 따르세요.
다음 표에서 작업 매개변수를 구성합니다.
매개변수 설명 Environment필수 입력란입니다.
케이스와 알림을 동기화하려는 Google SecOps에서 만든 환경의 이름입니다.
API Root필수 입력란입니다.
Google SecOps 인스턴스의 API 기준 URL:
- Chronicle API: 프로젝트 ID, 리전, 인스턴스 ID를 포함합니다(예:
https://us-chronicle.googleapis.com/v1alpha/projects/PROJECT_ID/locations/us/instances/INSTANCE_ID). Chronicle API 루트 찾기를 참조하세요. - Backstory API (기존): 리전별 Backstory 엔드포인트입니다. 기본값은
https://backstory.googleapis.com입니다.
User's Service Account(선택사항)
인증에 사용되는 서비스 계정 JSON 키입니다.
Workload Identity Email가 비어 있는 경우에만 사용됩니다.지원되는 경우 기본 제공 사용자 인증 정보를 사용하려면 두 사용자 인증 정보 필드를 모두 비워 둡니다(인증 방법 및 사용자 인증 정보 우선순위 참조).
Workload Identity Email(선택사항)
워크로드 아이덴티티 인증에 사용되는 서비스 계정 이메일입니다 (서비스 계정이 필요한 경우 권장). 두 사용자 인증 정보 필드가 모두 채워진 경우 우선 적용됩니다.
지원되는 경우 기본 제공 사용자 인증 정보를 사용하려면 두 사용자 인증 정보 필드를 모두 비워 둡니다(인증 방법 및 사용자 인증 정보 우선순위 참조).
Verify SSL필수 입력란입니다.
선택하면 통합에서 Google SecOps 서버에 연결할 때 SSL 인증서를 검증합니다.
기본적으로 사용 설정됩니다.
- Chronicle API: 프로젝트 ID, 리전, 인스턴스 ID를 포함합니다(예:
구성을 완료하려면 저장을 클릭합니다.
저장 버튼이 비활성 상태이면 모든 필수 매개변수를 설정했는지 확인합니다.
선택사항: 저장 후 즉시 작업을 실행하려면 지금 실행을 클릭합니다.
지금 실행 옵션을 사용하면 단일 작업 실행을 트리거하여 현재 알림 및 케이스 데이터를 즉시 동기화할 수 있습니다.
로그 메시지 및 오류 처리
| 로그 | 수준 | 설명 |
|---|---|---|
|
오류 | 사용자의 서비스 계정 매개변수에 제공된 서비스 계정이 손상되었습니다. |
|
오류 | 현재 Google SecOps 플랫폼 인스턴스 버전은 Google Chronicle 알림 생성기 작업 스크립트 실행을 지원하지 않습니다. 이 오류는 인스턴스 빌드 버전이 6.2.30 이전임을 의미합니다. |
|
오류 | Google SecOps 인스턴스에 대해 서비스 계정 또는 API 루트 값을 검증할 수 없습니다. 연결 테스트가 실패하면 이 오류가 보고됩니다. |
|
정보 | 작업이 시작되었음을 나타내는 로그 메시지 |
|
정보 | 기본 작업 실행이 시작되었습니다. |
|
정보 | 현재 가져오기 시도의 반복 횟수입니다. |
|
정보 | 작업에서 최대 BATCH_SIZE개의 새 알림을 가져옵니다. |
|
정보 | 현재 배치에서 가져온 새 알림 수입니다. |
|
정보 | 동기화되지 않은 새 알림이 없으므로 작업이 중지됩니다. |
|
정보 | 현재 배치에서 가져온 알림의 식별자입니다. |
|
정보 | 작업이 가져온 알림을 Google SecOps로 전송하고 있습니다. |
|
오류 | 지정된 알림을 Google SecOps에 동기화할 수 없습니다. |
|
정보 | 작업에서 동기화된 알림 상태를 업데이트하는 중입니다. |
|
경고 | 플랫폼에서 지정된 알림의 동기화 상태를 업데이트할 수 없습니다. |
|
정보 | 현재 작업 실행 중에 동기화된 총 알림 수입니다. |
|
정보 | 작업 실행이 완료되었습니다. |
|
오류 | 일반 오류로 인해 작업이 중지되었습니다. 자세한 내용은 오류 메시지를 참고하세요. |
사용 사례
Google Chronicle 통합을 사용하면 다음 사용 사례를 실행할 수 있습니다.
- Chronicle Windows 위협 조사 및 대응
- Security Command Center 및 Chronicle Cloud DIR
사용 사례 설치
Google SecOps Content Hub에서 사용 사례 탭으로 이동합니다.
검색창에 사용 사례 이름을 입력합니다.
사용 사례를 클릭합니다.
설치 마법사의 구성 단계와 안내를 따릅니다.
완료되면 필요한 모든 구성요소가 Google SecOps 머신에 설치됩니다. 설치를 완료하려면 사용 사례에 해당하는 플레이북에서 초기화 블록을 구성합니다.
Chronicle Windows 위협 조사 및 대응
Google SecOps의 강력한 기능을 사용하여 환경의 Windows 위협에 실시간으로 대응하세요. 보안팀은 Google SecOps용 위협 인텔리전스를 사용하여 Google SecOps와 함께 고충실도 위협 인텔리전스 서비스를 활용할 수 있습니다. 이제 환경의 실제 위협을 짧고 효과적인 기간 내에 자동으로 분류하고 해결할 수 있습니다.
Google SecOps에서 응답 > 플레이북으로 이동합니다.
Google Chronicle - Windows 위협 조사 및 대응 플레이북을 선택합니다. 플레이북이 플레이북 디자이너 뷰에서 열립니다.
Set Initialization Block_1을 더블클릭합니다. 블록 구성 대화상자가 열립니다.
플레이북을 구성하려면 다음 파라미터를 사용합니다.
입력 매개변수 가능한 값 설명 edr_product- CrowdStrike
- Carbon Black
- 없음
플레이북에서 사용할 EDR 제품입니다. itsm_product- Service Now
- Jira
- ZenDesk
- 없음
플레이북에서 사용할 ITSM 제품입니다. Jira는 티켓 열기 블록에 추가 구성이 필요합니다. crowdstrike_use_spotlighttrue또는falseTrue인 경우 플레이북은 Spotlight 라이선스 (취약점 정보)가 필요한 Crowdstrike 작업을 실행합니다.use_mandianttrue또는falseTrue인 경우 플레이북은 Mandiant 블록을 실행합니다.slack_user사용자 이름 또는 이메일 주소 Slack 사용자의 사용자 이름 또는 이메일 주소입니다. 제공되지 않으면 플레이북에서 Slack 블록을 건너뜁니다. 저장을 클릭합니다. 블록 구성 대화상자가 닫힙니다.
플레이북 디자이너 창에서 저장을 클릭합니다.
사용 사례에서 플레이북을 테스트하려면 패키지에 포함된 테스트 사례를 수집합니다. 테스트에 사용되는 데이터를 환경에서 사용할 수 없기 때문에 일부 테스트 사례 기능이 실패할 수 있습니다.
Security Command Center 및 Chronicle Cloud DIR
Security Command Center를 Google SecOps와 통합하여 분석가가 Security Command Center에서 감지한 사고와 위협을 조사할 수 있도록 합니다.
사용 사례 구성
이 사용 사례에서는 다음 통합을 구성해야 합니다.
- Siemplify
- 도구
- Mitre ATT&CK
- Google Cloud IAM
- Google Chronicle
- 함수
- Google Cloud Compute
- Email V2
- VirusTotal v3
Google Security Command Center 및 Mandiant 통합은 선택사항입니다.
사용 사례를 구성하기 전에 사용 사례를 설치했는지 확인합니다.
- Google SecOps에서 플레이북 탭으로 이동합니다.
- SCC 및 Chronicle Cloud DIR 플레이북을 선택합니다.
- 초기화 블록을 더블클릭하여 구성합니다.
- 다음 매개변수를 사용하여 플레이북을 구성합니다.
| 매개변수 이름 | 가능한 값 | 설명 |
|---|---|---|
Mandiant_Enrichment |
true 또는 false |
이 설정을 위해 Mandiant 통합을 구성해야 합니다. 의미 있는 정보를 거의 얻지 못하는 경우 보강을 삭제할 수 있습니다. 보강 블록을 삭제하면 플레이북의 실행 속도가 향상됩니다. |
SCC_Enrichment |
true 또는 false |
이 설정을 위해 Security Command Center 통합을 구성해야 합니다. 의미 있는 정보를 거의 얻지 못하는 경우 보강을 삭제할 수 있습니다. 보강 블록을 삭제하면 플레이북의 실행 속도가 향상됩니다. |
IAM_Enrichment |
true 또는 false |
True인 경우 플레이북은 추가 보강을 위해 IAM 기능을 사용합니다. 의미 있는 정보를 거의 얻지 못하는 경우 보강을 삭제할 수 있습니다. 보강 블록을 삭제하면 플레이북의 실행 속도가 향상됩니다. |
Compute_Enrichment |
true 또는 false |
True인 경우 플레이북은 추가 보강을 위해 Compute Engine 기능을 사용합니다. 의미 있는 정보를 거의 얻지 못하는 경우 보강을 삭제할 수 있습니다. 보강 블록을 삭제하면 플레이북의 실행 속도가 향상됩니다. |
도움이 더 필요하신가요? 커뮤니티 회원 및 Google SecOps 전문가에게 문의하여 답변을 받으세요.