Thinkst Canary 로그 수집
다음에서 지원:
Google SecOps
SIEM
이 파서는 줄바꿈을 정리하고 메시지를 JSON으로 파싱하려고 시도하여 Thinkst Canary 소프트웨어의 원시 로그 메시지를 정규화합니다. 그런 다음 특정 필드 ('Description'은 키-값 형식, 'summary'는 JSON)의 존재 여부에 따라 로그 형식을 확인하고 별도의 구성 파일에서 적절한 파싱 로직을 포함하여 데이터를 통합 데이터 모델에 매핑합니다.
시작하기 전에
다음 기본 요건이 충족되었는지 확인합니다.
- Google SecOps 인스턴스
- Thinkst Canary에 대한 액세스 권한
Thinkst Canary에서 REST API 구성
- Thinkst Canary 관리 콘솔에 로그인합니다.
- 톱니바퀴 아이콘 > 전체 설정을 클릭합니다.
- API를 클릭합니다.
- API 사용 설정을 클릭합니다.
- +를 클릭하여 API를 추가합니다.
- API에 설명이 포함된 이름을 지정합니다.
- 도메인 해시와 인증 토큰을 복사합니다.
피드 설정
피드를 구성하려면 다음 단계를 따르세요.
- SIEM 설정 > 피드로 이동합니다.
- 새 피드 추가를 클릭합니다.
- 다음 페이지에서 단일 피드 구성을 클릭합니다.
- 피드 이름 필드에 피드 이름을 입력합니다(예: Thinkst Canary Logs).
- 소스 유형으로 서드 파티 API를 선택합니다.
- 로그 유형으로 Thinkst Canary를 선택합니다.
- 다음을 클릭합니다.
- 다음 입력 파라미터의 값을 지정합니다.
- 인증 HTTP 헤더: 이전에
auth_token:<TOKEN>형식으로 생성된 토큰 (예: auth_token:AAAABBBBCCCC111122223333) - API 호스트 이름: Thinks Canary REST API 엔드포인트의 FQDN (정규화된 도메인 이름)(예:
myinstance.canary.tools)입니다. - 애셋 네임스페이스: 애셋 네임스페이스입니다.
- 수집 라벨: 이 피드의 이벤트에 적용된 라벨입니다.
- 인증 HTTP 헤더: 이전에
- 다음을 클릭합니다.
- 확정 화면에서 피드 구성을 검토한 다음 제출을 클릭합니다.
UDM 매핑
| 로그 필드 | UDM 매핑 | 논리 |
|---|---|---|
| AUDITACTION | read_only_udm.metadata.product_event_type | 형식이 json인 경우 값은 설명 필드에서 가져오고, 그렇지 않으면 eventid 필드에 따라 결정됩니다. |
| CanaryIP | read_only_udm.target.ip | |
| CanaryName | read_only_udm.target.hostname | |
| CanaryPort | read_only_udm.target.port | |
| COOKIE | read_only_udm.security_result.about.resource.attribute.labels.value | |
| 생성됨 | read_only_udm.metadata.event_timestamp.seconds | |
| created_std | read_only_udm.metadata.event_timestamp.seconds | |
| 데이터 | ||
| description | read_only_udm.metadata.product_event_type | 형식이 json인 경우 값은 설명 필드에서 가져오고, 그렇지 않으면 eventid 필드에 따라 결정됩니다. |
| 설명 | read_only_udm.metadata.product_event_type | 형식이 json인 경우 값은 설명 필드에서 가져오고, 그렇지 않으면 eventid 필드에 따라 결정됩니다. |
| DOMAIN | read_only_udm.target.administrative_domain | |
| dst_host | read_only_udm.target.ip | |
| dst_port | read_only_udm.target.port | |
| eventid | read_only_udm.metadata.product_event_type | 형식이 json인 경우 값은 설명 필드에서 가져오고, 그렇지 않으면 eventid 필드에 따라 결정됩니다. |
| events_count | read_only_udm.security_result.detection_fields.value | |
| FILENAME | read_only_udm.target.file.full_path | |
| FIN | read_only_udm.security_result.detection_fields.value | |
| flock_id | read_only_udm.principal.resource.attribute.labels.value | |
| flock_name | read_only_udm.principal.resource.attribute.labels.value | |
| FunctionData | ||
| FunctionName | ||
| 헤더 | read_only_udm.security_result.about.resource.attribute.labels | |
| HOST | read_only_udm.target.hostname | |
| HOSTNAME | read_only_udm.target.hostname | |
| id | read_only_udm.metadata.product_log_id | |
| ID | read_only_udm.security_result.detection_fields.value | |
| IN | read_only_udm.security_result.detection_fields.value | |
| ip_address | ||
| 키 | ||
| LEN | read_only_udm.security_result.detection_fields.value | |
| LOCALNAME | read_only_udm.target.hostname | |
| LOCALVERSION | read_only_udm.target.platform_version | |
| logtype | read_only_udm.security_result.detection_fields.value | |
| LOGINTYPE | ||
| MAC | read_only_udm.principal.mac | |
| matched_annotations | ||
| 메서드 | read_only_udm.network.http.method | |
| 모드 | ||
| ms_macro_ip | read_only_udm.principal.ip | |
| ms_macro_username | read_only_udm.principal.user.user_display_name | |
| name | read_only_udm.target.hostname | |
| node_id | read_only_udm.principal.resource.attribute.labels.value | |
| OFFSET | ||
| OPCODE | ||
| OUT | read_only_udm.security_result.detection_fields.value | |
| 비밀번호 | ||
| PATH | read_only_udm.target.url | |
| ports | read_only_udm.target.labels.value | |
| PREC | read_only_udm.security_result.detection_fields.value | |
| PreviousIP | read_only_udm.principal.ip | |
| PROTO | read_only_udm.network.ip_protocol | |
| PSH | read_only_udm.security_result.detection_fields.value | |
| REALM | read_only_udm.target.administrative_domain | |
| REMOTENAME | read_only_udm.principal.hostname | |
| REMOTEVERSION | read_only_udm.principal.platform_version | |
| REPO | read_only_udm.target.resource.attribute.labels.value | |
| 응답 | read_only_udm.network.http.response_code | |
| ReverseDNS | ||
| 설정 | read_only_udm.target.labels | |
| SHARENAME | ||
| SIZE | ||
| SKIN | ||
| SMBARCH | ||
| SMBREPEATEVENTMSG | ||
| SMBVER | ||
| SNAME | ||
| SourceIP | read_only_udm.principal.ip | |
| src_host | read_only_udm.principal.ip | |
| src_host_reverse | read_only_udm.principal.hostname | |
| src_port | read_only_udm.principal.port | |
| STATUS | ||
| 요약 | read_only_udm.metadata.product_event_type | 형식이 json인 경우 값은 설명 필드에서 가져오고, 그렇지 않으면 eventid 필드에 따라 결정됩니다. |
| SYN | read_only_udm.security_result.detection_fields.value | |
| TCPBannerID | ||
| TERMSIZE | ||
| TERMTYPE | ||
| 타임스탬프 | read_only_udm.metadata.event_timestamp.seconds | |
| timestamp_std | read_only_udm.metadata.event_timestamp.seconds | |
| 타임스탬프 | read_only_udm.metadata.event_timestamp.seconds | |
| TKTVNO | read_only_udm.security_result.detection_fields.value | |
| TOS | read_only_udm.security_result.detection_fields.value | |
| TTL | read_only_udm.security_result.detection_fields.value | |
| 유형 | ||
| 사용자 | read_only_udm.principal.user.user_display_name | |
| USERAGENT | read_only_udm.network.http.user_agent | |
| USERNAME | read_only_udm.target.user.user_display_name | |
| URG | read_only_udm.security_result.detection_fields.value | |
| URGP | read_only_udm.security_result.detection_fields.value | |
| WINDOW | read_only_udm.security_result.detection_fields.value | |
| windows_desktopini_access_domain | read_only_udm.principal.group.group_display_name | |
| windows_desktopini_access_username | read_only_udm.principal.user.user_display_name | |
| read_only_udm.metadata.log_type | THINKST_CANARY - 하드코딩된 값 | |
| read_only_udm.metadata.vendor_name | Thinkst - 하드 코딩된 값 | |
| read_only_udm.metadata.product_name | 카나리아 - 하드 코딩된 값 | |
| read_only_udm.security_result.severity | 중요 - 하드 코딩된 값 | |
| read_only_udm.network.application_protocol | 포트 및 product_event_type에 따라 결정됩니다. | |
| read_only_udm.extensions.auth.mechanism | 이벤트에 사용된 인증 방법에 따라 결정됩니다. |
도움이 더 필요하신가요? 커뮤니티 회원 및 Google SecOps 전문가로부터 답변을 받으세요.