Mengumpulkan log IOC ThreatStream Anomali
Dokumen ini menjelaskan cara menyerap log IOC Anomali ThreatStream ke Google Security Operations menggunakan API. Parser mengubah data IOC dari format JSON atau CEF menjadi model data terpadu (UDM). Kode ini pertama-tama mencoba mengurai input sebagai JSON, dan jika tidak berhasil, akan memeriksa awalan "CEF:" untuk memprosesnya sebagai pesan CEF, mengekstrak atribut IOC, dan memetakannya ke kolom UDM.
Sebelum memulai
Pastikan Anda memenuhi prasyarat berikut:
- Instance Google SecOps
- Akses istimewa ke tenant perusahaan Anomali ThreatStream
Membuat pengguna API khusus
- Login ke ThreatStream. Beralihlah ke UI Klasik jika Anda menggunakan Anomali Enterprise.
- Buka Administrasi > Pengguna.
- Klik + Tambahkan Pengguna (atau pilih akun layanan yang ada).
- Lengkapi detail berikut:
- Email: Alamat email akun layanan (misalnya,
anomali_ioc_secops@example.com
). - Sumber Autentikasi: Pilih Standar.
- Jenis Pengguna: Pilih Pengguna API.
- Peran: Pilih Hanya Baca (cukup untuk mencantumkan indikator).
- Email: Alamat email akun layanan (misalnya,
- Klik Simpan.
- Email aktivasi dikirim ke akun baru; selesaikan aktivasi.
Membuat kunci API
- Login ke ThreatStream sebagai pengguna API.
- Buka avatar profil > Kunci API Saya.
- Klik Buat Kunci Baru.
- Masukkan Deskripsi (misalnya,
Google SecOps export
). - Klik Simpan.
- Salin dan simpan nilai kunci yang ditampilkan di bagian Key di lokasi yang aman. Nilai kunci tidak ditampilkan lagi.
Direkomendasikan: Izinkan IP pengumpul
- Buka Administrasi > Setelan Organisasi.
- Pilih tab IP Allowlist.
- Klik + Tambahkan.
- Masukkan alamat tenant Google SecOps Anda, lalu klik Simpan.
Menyiapkan feed
- Buka Setelan SIEM > Feed.
- Klik Tambahkan baru.
- Di kolom Nama feed, masukkan nama untuk feed (misalnya,
Anomali TS IOC
). - Pilih Third Party API sebagai Source type.
- Pilih jenis log Anomali.
- Klik Berikutnya.
- Tentukan nilai untuk parameter input berikut:
- Nama pengguna: Masukkan pengguna API yang baru dibuat.
- Secret: Masukkan Kunci API yang dibuat dan disalin sebelumnya.
- Namespace aset: Namespace aset.
- Label penyerapan: Label yang diterapkan ke peristiwa dari feed ini.
- Klik Berikutnya.
- Tinjau konfigurasi feed di layar Selesaikan, lalu klik Kirim.
Tabel Pemetaan UDM
Kolom log | Pemetaan UDM | Logika |
---|---|---|
obj.asn |
entity.administrative_domain | Kolom asn dalam log mentah dipetakan ke kolom administrative_domain dalam objek entity UDM. |
obj.confidence |
ioc.confidence_score | Kolom keyakinan dalam log mentah dipetakan ke kolom confidence_score dalam objek ioc UDM. |
obj.country |
entity.location.country_or_region | Kolom negara di log mentah dipetakan ke kolom country_or_region di objek entitas UDM. |
obj.created_ts |
entity.metadata.creation_timestamp | Kolom created_ts di log mentah dipetakan ke kolom creation_timestamp di objek entitas UDM. |
obj.created_ts |
ioc.active_timerange.start | Kolom created_ts di log mentah dipetakan ke kolom start di objek ioc UDM. |
obj.created_ts |
entity.metadata.threat.first_discovered_time | Kolom created_ts di log mentah dipetakan ke kolom first_discovered_time di objek ancaman UDM. |
obj.expiration_ts |
entity.metadata.interval.end_time | Kolom expiration_ts dalam log mentah dipetakan ke kolom end_time dalam objek entitas UDM. |
obj.expiration_ts |
ioc.active_timerange.end | Kolom expiration_ts dalam log mentah dipetakan ke kolom end dalam objek ioc UDM. |
obj.id |
entity.metadata.product_entity_id | Kolom id di log mentah dipetakan ke kolom product_entity_id di objek entitas UDM. |
obj.ip |
entity.entity.ip | Kolom ip dalam log mentah digabungkan ke kolom ip dalam objek entity UDM. |
obj.ip |
ioc.ip_and_ports.ip_address | Kolom ip di log mentah dipetakan ke kolom ip_address di objek ioc UDM. |
obj.itype |
ioc.categorization | Kolom itype dalam log mentah dipetakan ke kolom kategorisasi dalam objek ioc UDM. |
obj.itype |
entity.metadata.threat.category_details | Kolom itype dalam log mentah digabungkan ke kolom category_details dalam objek ancaman UDM. |
obj.latitude |
entity.entity.location.region_latitude | Kolom lintang dalam log mentah dipetakan ke kolom region_latitude dalam objek entity UDM. |
obj.longitude |
entity.entity.location.region_longitude | Kolom bujur dalam log mentah dipetakan ke kolom region_longitude dalam objek entity UDM. |
obj.meta.detail2 |
ioc.description | Kolom detail2 dalam log mentah dipetakan ke kolom description dalam objek ioc UDM. |
obj.meta.detail2 |
entity.metadata.threat.description | Kolom detail2 dalam log mentah dipetakan ke kolom description dalam objek ancaman UDM. |
obj.meta.severity |
ioc.raw_severity | Kolom severity dalam log mentah dipetakan ke kolom raw_severity dalam objek ioc UDM. |
obj.meta.severity |
entity.metadata.threat.severity | Kolom tingkat keparahan dalam log mentah dipetakan ke kolom tingkat keparahan dalam objek ancaman UDM. Jika tingkat keparahannya "sangat tinggi", maka akan dipetakan ke "KRITIS". |
obj.meta.severity |
entity.metadata.threat.severity_details | Kolom tingkat keparahan dalam log mentah dipetakan ke kolom severity_details dalam objek ancaman UDM. |
obj.modified_ts |
entity.metadata.threat.last_updated_time | Kolom modified_ts dalam log mentah dipetakan ke kolom last_updated_time dalam objek ancaman UDM. |
obj.org |
entity.entity.administrative_domain | Kolom org di log mentah dipetakan ke kolom administrative_domain di objek entity UDM. |
obj.resource_uri |
entity.metadata.threat.url_back_to_product | Kolom resource_uri dalam log mentah dipetakan ke kolom url_back_to_product dalam objek ancaman UDM. |
obj.retina_confidence |
entity.metadata.threat.confidence_score | Kolom retina_confidence dalam log mentah dipetakan ke kolom confidence_score dalam objek ancaman UDM. |
obj.source |
ioc.feed_name | Kolom sumber dalam log mentah dipetakan ke kolom feed_name dalam objek ioc UDM. |
obj.source |
entity.metadata.threat.threat_name | Kolom sumber dalam log mentah dipetakan ke kolom threat_name dalam objek ancaman UDM. |
obj.status |
entity.metadata.threat.threat_status | Kolom status dalam log mentah dipetakan ke kolom threat_status dalam objek ancaman UDM. |
obj.subtype |
entity.entity.file.sha1 | Kolom subtype dalam log mentah dipetakan ke kolom sha1 dalam objek entitas UDM jika subtype-nya adalah "SHA1". |
obj.subtype |
entity.entity.file.sha256 | Kolom subtype dalam log mentah dipetakan ke kolom sha256 dalam objek entity UDM jika subtype-nya adalah "SHA256". |
obj.tags |
entity.metadata.source_labels | Kolom tag dalam log mentah dipetakan ke kolom source_labels dalam objek entity UDM. |
obj.tags.id |
entity.metadata.source_labels | Kolom id dalam array tag log mentah dipetakan ke kolom source_labels dalam objek entity UDM. |
obj.tags.name |
entity.metadata.source_labels | Kolom nama dalam array tag log mentah dipetakan ke kolom source_labels dalam objek entitas UDM. |
obj.threatscore |
entity.metadata.threat.risk_score | Kolom threatscore dalam log mentah dipetakan ke kolom risk_score dalam objek ancaman UDM. |
obj.threat_type |
entity.metadata.threat.detection_fields | Kolom threat_type dalam log mentah dipetakan ke kolom detection_fields dalam objek ancaman UDM. |
obj.type |
entity.entity.file.md5 | Kolom jenis dalam log mentah dipetakan ke kolom md5 dalam objek entity UDM jika jenisnya adalah "md5". |
obj.type |
entity.entity.hostname | Kolom jenis dalam log mentah dipetakan ke kolom nama host dalam objek entity UDM jika jenisnya adalah "domain". |
obj.type |
entity.entity.ip | Kolom jenis dalam log mentah digabungkan ke kolom ip dalam objek entity UDM jika jenisnya adalah "ip" atau "ipv6". |
obj.type |
entity.entity.url | Kolom jenis dalam log mentah dipetakan ke kolom URL dalam objek entity UDM jika jenisnya adalah "URL" atau "string". |
obj.type |
entity.entity.user.email_addresses | Kolom jenis dalam log mentah digabungkan ke kolom email_addresses dalam objek entity UDM jika jenisnya adalah "email". |
obj.type |
entity.metadata.entity_type | Kolom type dalam log mentah dipetakan ke kolom entity_type dalam objek entity UDM. Jika jenisnya adalah "ip" atau "ipv6", maka akan dipetakan ke "IP_ADDRESS". Jika jenisnya adalah "domain", maka akan dipetakan ke "DOMAIN_NAME". Jika jenisnya adalah "md5" atau kolom itype berisi "md5", maka akan dipetakan ke "FILE". Jika jenisnya adalah "url" atau "string", maka akan dipetakan ke "URL". Jika jenisnya adalah "email", maka dipetakan ke "USER". Jika tidak, nilai ini dipetakan ke "UNKNOWN_ENTITYTYPE". |
obj.uuid |
entity.additional.fields | Kolom uuid dalam log mentah dipetakan ke kolom fields dalam objek entity UDM. |
obj.value |
entity.entity.ip | Kolom nilai dalam log mentah digabungkan ke kolom ip dalam objek entity UDM jika kolom jenis adalah "ip" dan kolom ip kosong. |
obj.value |
entity.entity.ip | Kolom nilai dalam log mentah digabungkan ke kolom ip dalam objek entity UDM jika kolom ip_field_not_exists bernilai benar dan kolom nilai adalah alamat IP. |
obj.value |
entity.entity.url | Kolom nilai dalam log mentah dipetakan ke kolom URL dalam objek entity UDM jika kolom jenisnya adalah "url" atau "string". |
obj.value |
ioc.domain_and_ports.domain | Kolom nilai dalam log mentah dipetakan ke kolom domain dalam objek ioc UDM jika kolom jenis bukan "ip". |
obj.value |
ioc.ip_and_ports.ip_address | Kolom nilai dalam log mentah dipetakan ke kolom ip_address dalam objek ioc UDM jika kolom jenis adalah "ip" dan kolom ip kosong. |
cn1 |
ioc.confidence_score | Kolom cn1 dalam log mentah dipetakan ke kolom confidence_score dalam objek ioc UDM. |
cn2 |
entity.metadata.threat.rule_id | Kolom cn2 dalam log mentah dipetakan ke kolom rule_id dalam objek ancaman UDM. |
cs1 |
ioc.raw_severity | Kolom cs1 dalam log mentah dipetakan ke kolom raw_severity dalam objek ioc UDM. |
cs2 |
entity.metadata.threat.threat_name | Kolom cs2 dalam log mentah dipetakan ke kolom threat_name dalam objek ancaman UDM. |
cs3 |
entity.metadata.threat.threat_status | Kolom cs3 dalam log mentah dipetakan ke kolom threat_status dalam objek ancaman UDM. Jika kolom cs3 adalah "active", kolom tersebut dipetakan ke "ACTIVE". Jika kolom cs3 "dihapus", kolom tersebut dipetakan ke "CLEARED". Jika kolom cs3 adalah "falsePositive" atau "falsepos", kolom tersebut dipetakan ke "FALSE_POSITIVE". Jika kolom cs3 adalah "threat_status_unspecified", kolom tersebut dipetakan ke "THREAT_STATUS_UNSPECIFIED". |
cs4 |
entity.entity.administrative_domain | Kolom cs4 dalam log mentah dipetakan ke kolom administrative_domain dalam objek entitas UDM. |
cs5 |
ioc.description | Kolom cs5 dalam log mentah dipetakan ke kolom description dalam objek ioc UDM. |
cs5 |
entity.metadata.threat.detection_fields | Kolom cs5 dalam log mentah dipetakan ke kolom detection_fields dalam objek ancaman UDM. |
cs5 |
entity.metadata.threat.description | Kolom cs5 dalam log mentah dipetakan ke kolom deskripsi dalam objek ancaman UDM. |
cs6 |
entity.metadata.threat.category_details | Kolom cs6 dalam log mentah digabungkan ke kolom category_details dalam objek ancaman UDM. |
device_product |
entity.metadata.product_name | Kolom device_product di log mentah dipetakan ke kolom product_name di objek entity UDM. |
device_vendor |
entity.metadata.vendor_name | Kolom device_vendor dalam log mentah dipetakan ke kolom vendor_name dalam objek entity UDM. |
device_version |
entity.metadata.product_version | Kolom device_version di log mentah dipetakan ke kolom product_version di objek entity UDM. |
msg |
entity.metadata.threat.summary | Kolom msg dalam log mentah dipetakan ke kolom ringkasan dalam objek ancaman UDM. |
shost |
entity.entity.hostname | Kolom shost dalam log mentah dipetakan ke kolom nama host dalam objek entitas UDM. |
shost |
entity.entity.url | Kolom shost dalam log mentah dipetakan ke kolom url dalam objek entity UDM. |
shost |
ioc.domain_and_ports.domain | Kolom shost dalam log mentah dipetakan ke kolom domain dalam objek ioc UDM. |
src |
entity.entity.ip | Kolom src dalam log mentah digabungkan ke kolom ip dalam objek entity UDM. |
src |
ioc.ip_and_ports.ip_address | Kolom src di log mentah dipetakan ke kolom ip_address di objek ioc UDM. |
entity.metadata.threat.confidence | HIGH_CONFIDENCE | Kolom keyakinan dalam objek ancaman UDM ditetapkan ke "HIGH_CONFIDENCE" jika kolom confidence_score lebih besar dari atau sama dengan 75. |
entity.metadata.threat.confidence | LOW_CONFIDENCE | Kolom keyakinan dalam objek ancaman UDM disetel ke "LOW_CONFIDENCE" jika kolom confidence_score kurang dari atau sama dengan 50. |
entity.metadata.threat.confidence | MEDIUM_CONFIDENCE | Kolom keyakinan dalam objek ancaman UDM disetel ke "MEDIUM_CONFIDENCE" jika kolom confidence_score lebih besar dari 50 dan kurang dari atau sama dengan 74. |
entity.metadata.threat.confidence | UNKNOWN_CONFIDENCE | Kolom keyakinan dalam objek ancaman UDM disetel ke "UNKNOWN_CONFIDENCE" jika kolom confidence_score bukan bilangan bulat yang valid. |
entity.metadata.vendor_name | ANOMALI_IOC | Kolom vendor_name di objek entitas UDM ditetapkan ke "ANOMALI_IOC". |
Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.