Mengumpulkan log Tanium Stream
Dokumen ini menjelaskan cara menyerap log Tanium Stream ke Google Security Operations menggunakan fungsi ekspor AWS S3 native Tanium Connect. Tanium Stream menyediakan telemetri endpoint real-time, data perburuan ancaman, dan analisis perilaku dalam format JSON, yang dapat langsung diekspor ke S3 menggunakan Tanium Connect tanpa memerlukan fungsi Lambda kustom. Parser mengubah log JSON mentah dari Tanium Stream menjadi model data terpadu (UDM). Parser ini pertama-tama menormalisasi kolom umum, lalu menerapkan logika tertentu berdasarkan "logType" atau "eventType" untuk memetakan informasi yang relevan ke kolom UDM yang sesuai, menangani berbagai jenis peristiwa seperti koneksi jaringan, login pengguna, peluncuran proses, dan modifikasi file.
Sebelum memulai
Pastikan Anda memiliki prasyarat berikut:
- Instance Google SecOps
- Tanium Core Platform 7.0 atau yang lebih baru
- Modul Tanium Stream diinstal dan dikonfigurasi
- Modul Tanium Connect diinstal dengan lisensi yang valid
- Tanium Threat Response 3.4.346 atau yang lebih baru (jika menggunakan integrasi TR)
- Akses istimewa ke Tanium Console dengan hak administratif
- Akses istimewa ke AWS (S3, IAM)
Mengonfigurasi akun layanan Tanium Stream
- Login ke Tanium Console.
- Buka Modules > Stream.
- Klik Setelan di kanan atas.
- Di bagian Service Account, konfigurasikan hal berikut:
- Service Account User: Pilih pengguna dengan izin Stream yang sesuai.
- Verifikasi bahwa akun memiliki hak istimewa peran Connect User.
- Konfirmasi akses ke endpoint dan sumber data Stream.
- Klik Save untuk menerapkan konfigurasi akun layanan.
Mengumpulkan prasyarat Tanium Stream
- Login ke Tanium Console sebagai administrator.
- Buka Administration > Permissions > Users.
- Buat atau identifikasi pengguna akun layanan dengan peran berikut:
- Peran Stream Administrator atau Stream Read Only User.
- Hak istimewa peran Connect User.
- Akses ke grup komputer yang dipantau (direkomendasikan: grup All Computers).
- Izin Membaca Pertanyaan Tersimpan untuk set konten Stream.
Mengonfigurasi bucket AWS S3 dan IAM untuk Google SecOps
- Buat bucket Amazon S3 dengan mengikuti panduan pengguna ini: Membuat bucket
- Simpan Name dan Region bucket untuk referensi di masa mendatang (misalnya,
tanium-stream-logs). - Buat pengguna dengan mengikuti panduan pengguna ini: Membuat pengguna IAM.
- Pilih User yang dibuat.
- Pilih tab kredensial keamanan.
- Klik Create Access Key di bagian Access Keys.
- Pilih Layanan pihak ketiga sebagai Kasus penggunaan.
- Klik Berikutnya.
- Opsional: tambahkan tag deskripsi.
- Klik Create access key.
- Klik Download CSV file untuk menyimpan Access Key dan Secret Access Key untuk digunakan nanti.
- Klik Done.
- Pilih tab Izin.
- Klik Tambahkan izin di bagian Kebijakan Izin.
- Pilih Add permissions.
- Pilih Attach policies directly
- Telusuri dan pilih kebijakan AmazonS3FullAccess.
- Klik Berikutnya.
- Klik Add permissions.
Mengonfigurasi tujuan AWS S3 Tanium Connect
- Login ke Tanium Console.
- Buka Modules > Connect.
- Klik Buat Koneksi.
- Berikan detail konfigurasi berikut:
- Name: Masukkan nama deskriptif (misalnya,
Stream Telemetry to S3 for SecOps). - Description: Deskripsi opsional (misalnya,
Export endpoint telemetry and threat hunting data to AWS S3 for Google SecOps ingestion). - Aktifkan: Pilih untuk mengaktifkan koneksi agar berjalan sesuai jadwal.
- Name: Masukkan nama deskriptif (misalnya,
- Klik Berikutnya.
Mengonfigurasi sumber koneksi
- Di bagian Source, berikan detail konfigurasi berikut:
- Source Type: Pilih Saved Question.
- Saved Question: Pilih salah satu pertanyaan tersimpan terkait Stream berikut:
- Stream - Endpoint Events untuk telemetri endpoint real-time.
- Stream - Network Events untuk pemantauan aktivitas jaringan.
- Stream - Process Events untuk pelacakan eksekusi proses.
- Stream - File Events untuk aktivitas sistem file.
- Stream - Data Perburuan Ancaman untuk analisis perilaku.
- Computer Group: Pilih All Computers atau grup komputer tertentu yang akan dipantau.
- Refresh Interval: Tetapkan interval yang sesuai untuk pengumpulan data (misalnya, 5 minutes untuk telemetri real-time).
- Klik Berikutnya.
Mengonfigurasi tujuan AWS S3
- Di bagian Destination, berikan detail konfigurasi berikut:
- Destination Type: Pilih AWS S3.
- Destination Name: Masukkan nama unik (misalnya,
Google SecOps Stream S3 Destination). - AWS Access Key: Masukkan kunci akses AWS dari file CSV yang didownload pada langkah konfigurasi AWS S3.
- AWS Secret Access Key: Masukkan kunci akses rahasia AWS dari file CSV yang didownload pada langkah konfigurasi AWS S3.
- Bucket Name: Masukkan nama bucket S3 Anda (misalnya,
tanium-stream-logs). - Region: Pilih region AWS tempat bucket S3 Anda berada.
- Key Prefix: Masukkan awalan untuk objek S3 (misalnya,
tanium/stream/).
- Klik Berikutnya.
Mengonfigurasi filter
- Di bagian Filters, konfigurasikan opsi pemfilteran data:
- Hanya kirim item baru: Pilih opsi ini untuk hanya mengirim data telemetri baru sejak ekspor terakhir.
- Filter kolom: Tambahkan filter berdasarkan atribut peristiwa tertentu jika diperlukan (misalnya, filter menurut jenis peristiwa, nama proses, atau indikator ancaman).
- Klik Berikutnya.
Memformat data untuk AWS S3
- Di bagian Format, konfigurasikan format data:
- Format: Pilih JSON.
- Opsi:
- Sertakan header: Batalkan pilihan untuk menghindari header dalam output JSON.
- Sertakan sel kosong: Pilih berdasarkan preferensi Anda.
- Opsi Lanjutan:
- File naming: Gunakan penamaan default berbasis stempel waktu.
- Compression: Pilih Gzip untuk mengurangi biaya penyimpanan dan waktu transfer.
- Klik Berikutnya.
Menjadwalkan koneksi
- Di bagian Schedule, konfigurasikan jadwal ekspor:
- Aktifkan jadwal: Pilih untuk mengaktifkan ekspor terjadwal otomatis.
- Schedule type: Pilih Recurring.
- Frequency: Pilih Every 5 minutes untuk data telemetri hampir real-time.
- Waktu mulai: Tetapkan waktu mulai yang sesuai untuk ekspor pertama.
- Klik Berikutnya.
Simpan dan verifikasi koneksi
- Tinjau konfigurasi koneksi di layar ringkasan.
- Klik Save untuk membuat koneksi.
- Klik Test Connection untuk memverifikasi konfigurasi.
- Jika pengujian berhasil, klik Run Now untuk melakukan ekspor awal.
- Pantau status koneksi di halaman Connect Overview.
Mengonfigurasi feed di Google SecOps untuk menyerap log Tanium Stream
- Buka Setelan > Pengelolaan Data > Feed. Jika Anda menggunakan platform khusus SIEM, buka Settings > Feeds.
- Klik + Tambahkan Feed Baru.
- Di kolom Nama feed, masukkan nama untuk feed (misalnya,
Tanium Stream logs). - Pilih Amazon S3 V2 sebagai Jenis sumber.
- Pilih Tanium Stream sebagai Log type.
- Klik Berikutnya.
- Tentukan nilai untuk parameter input berikut:
- S3 URI:
s3://tanium-stream-logs/tanium/stream/ - Opsi penghapusan sumber: Pilih opsi penghapusan sesuai preferensi Anda.
- Usia File Maksimum: Sertakan file yang diubah dalam jumlah hari terakhir. Defaultnya adalah 180 hari.
- Access Key ID: Kunci akses pengguna dengan akses ke bucket S3.
- Secret Access Key: Kunci rahasia pengguna dengan akses ke bucket S3.
- Namespace aset: Namespace aset.
- Label penyerapan: Label yang diterapkan ke peristiwa dari feed ini.
- S3 URI:
- Klik Berikutnya.
- Tinjau konfigurasi feed berita baru Anda di layar Finalize, lalu klik Submit.
Tabel Pemetaan UDM
| Kolom log | pemetaan UDM | Logika |
|---|---|---|
| additional.event__AlgorithmName | additional.fields.key: eventAlgorithmName additional.fields.value.string_value: %{additional.eventAlgorithmName} |
Nilai yang diambil langsung dari kolom log mentah additional.event__AlgorithmName. |
| additional.event__AuthenticationPackageName | target.resource.name: %{additional.event__AuthenticationPackageName} | Nilai yang diambil langsung dari kolom log mentah additional.event__AuthenticationPackageName. |
| additional.event__CallerProcessId | principal.process.pid: %{additional.event__CallerProcessId} | Nilai yang diambil langsung dari kolom log mentah additional.event__CallerProcessId. |
| additional.event__CallerProcessName | principal.process.file.fullpath: %{additional.event_CallerProcessName} | Nilai yang diambil langsung dari kolom log mentah additional.event__CallerProcessName. |
| additional.event__ClientProcessId | principal.process.pid: %{additional.event__ClientProcessId} | Nilai yang diambil langsung dari kolom log mentah additional.event__ClientProcessId. |
| additional.event__ClientProcessStartKey | additional.fields.key: eventClientProcessStartKey additional.fields.value.string_value: %{additional.eventClientProcessStartKey} |
Nilai yang diambil langsung dari kolom log mentah additional.event__ClientProcessStartKey. |
| additional.event__CommandLine | target.process.commandline: %{additional.event_CommandLine} | Nilai yang diambil langsung dari kolom log mentah additional.event__CommandLine. |
| additional.event__ElevatedToken | additional.fields.key: event__ElevatedToken additional.fields.value.string_value: Yes/No |
Nilai diambil langsung dari kolom log mentah additional.event__ElevatedToken.Jika nilainya "%%1842", nilai tersebut akan diganti dengan "Ya". Jika nilainya "%%1843", nilai tersebut akan diganti dengan "Tidak". |
| additional.event__FQDN | principal.hostname: %{additional.event__FQDN} | Nilai yang diambil langsung dari kolom log mentah additional.event__FQDN. |
| additional.event__FailureReason | additional.fields.key: eventFailureReason additional.fields.value.string_value: %{additional.eventFailureReason} |
Nilai yang diambil langsung dari kolom log mentah additional.event__FailureReason. |
| additional.event__ImpersonationLevel | additional.fields.key: eventImpersonationLevel additional.fields.value.string_value: %{additional.eventImpersonationLevel} |
Nilai yang diambil langsung dari kolom log mentah additional.event__ImpersonationLevel. |
| additional.event__IpAddress | target.ip: %{additional.event__IpAddress} | Nilai yang diambil langsung dari kolom log mentah additional.event__IpAddress. |
| additional.event__IpPort | target.port: %{additional.event__IpPort} | Nilai yang diambil langsung dari kolom log mentah additional.event__IpPort dan dikonversi menjadi bilangan bulat. |
| additional.event__KeyLength | additional.fields.key: eventKeyLength additional.fields.value.string_value: %{additional.eventKeyLength} |
Nilai yang diambil langsung dari kolom log mentah additional.event__KeyLength. |
| additional.event__KeyName | additional.fields.key: eventKeyName additional.fields.value.string_value: %{additional.eventKeyName} |
Nilai yang diambil langsung dari kolom log mentah additional.event__KeyName. |
| additional.event__KeyType | additional.fields.key: eventKeyType additional.fields.value.string_value: %{additional.eventKeyType} |
Nilai yang diambil langsung dari kolom log mentah additional.event__KeyType. |
| additional.event__LmPackageName | additional.fields.key: eventLmPackageName additional.fields.value.string_value: %{additional.eventLmPackageName} |
Nilai yang diambil langsung dari kolom log mentah additional.event__LmPackageName. |
| additional.event__LogonGuid | target.resource.product_objectid: %{additional.event_LogonGuid} | Nilai diambil langsung dari kolom log mentah additional.event__LogonGuid dengan tanda kurung kurawal dihapus. |
| additional.event__LogonProcessName | target.process.file.fullpath: %{additional.event_LogonProcessName} | Nilai yang diambil langsung dari kolom log mentah additional.event__LogonProcessName. |
| additional.event__LogonType | extensions.auth.authdetails: Logon Type: %{additional.event_LogonType} | Nilai yang diambil langsung dari kolom log mentah additional.event__LogonType. |
| additional.event__MandatoryLabel | additional.fields.key: eventMandatoryLabel additional.fields.value.string_value: %{additional.eventMandatoryLabel} |
Nilai yang diambil langsung dari kolom log mentah additional.event__MandatoryLabel. |
| additional.event__NewProcessId | target.process.pid: %{additional.event__NewProcessId} | Nilai yang diambil langsung dari kolom log mentah additional.event__NewProcessId. |
| additional.event__NewProcessName | target.process.file.fullpath: %{additional.event_NewProcessName} | Nilai yang diambil langsung dari kolom log mentah additional.event__NewProcessName. |
| additional.event__ObjectServer | security_result.categorydetails: %{additional.event_ObjectServer} | Nilai yang diambil langsung dari kolom log mentah additional.event__ObjectServer. |
| additional.event__Operation | additional.fields.key: eventOperation additional.fields.value.string_value: %{additional.eventOperation} |
Nilai yang diambil langsung dari kolom log mentah additional.event__Operation. |
| additional.event__ParentProcessId | principal.process.parentprocess.pid: %{additional.event_ParentProcessId} | Nilai yang diambil langsung dari kolom log mentah additional.event__ParentProcessId. |
| additional.event__ParentProcessName | principal.process.parent_process.file.fullpath: %{additional.event_ParentProcessName} | Nilai yang diambil langsung dari kolom log mentah additional.event__ParentProcessName. |
| additional.event__ProcessId | principal.process.pid: %{additional.event__ProcessId} | Nilai yang diambil langsung dari kolom log mentah additional.event__ProcessId. |
| additional.event__ProcessName | principal.process.file.fullpath: %{additional.event_ProcessName} | Nilai yang diambil langsung dari kolom log mentah additional.event__ProcessName. |
| additional.event__PrivilegeList | principal.user.attribute.permissions.name: %{additional.event__PrivilegeList} | Nilai yang diambil langsung dari kolom log mentah additional.event__PrivilegeList. |
| additional.event__ProviderName | additional.fields.key: eventProviderName additional.fields.value.string_value: %{additional.eventProviderName} |
Nilai yang diambil langsung dari kolom log mentah additional.event__ProviderName. |
| additional.event__RestrictedAdminMode | additional.fields.key: eventRestrictedAdminMode additional.fields.value.string_value: %{additional.eventRestrictedAdminMode} |
Nilai yang diambil langsung dari kolom log mentah additional.event__RestrictedAdminMode. |
| additional.event__ReturnCode | additional.fields.key: eventReturnCode additional.fields.value.string_value: %{additional.eventReturnCode} |
Nilai yang diambil langsung dari kolom log mentah additional.event__ReturnCode. |
| additional.event__RpcCallClientLocality | additional.fields.key: eventRpcCallClientLocality additional.fields.value.string_value: %{additional.eventRpcCallClientLocality} |
Nilai yang diambil langsung dari kolom log mentah additional.event__RpcCallClientLocality. |
| additional.event__Service | securityresult.description: %{additional.event_Service} | Nilai yang diambil langsung dari kolom log mentah additional.event__Service. |
| additional.event__Status | additional.fields.key: eventStatus additional.fields.value.string_value: %{additional.eventStatus} |
Nilai yang diambil langsung dari kolom log mentah additional.event__Status. |
| additional.event__SubStatus | additional.fields.key: eventSubStatus additional.fields.value.string_value: %{additional.eventSubStatus} |
Nilai yang diambil langsung dari kolom log mentah additional.event__SubStatus. |
| additional.event__SubjectDomainName | principal.administrativedomain: %{additional.event_SubjectDomainName} | Nilai yang diambil langsung dari kolom log mentah additional.event__SubjectDomainName. |
| additional.event__SubjectLogonId | additional.fields.key: eventSubjectLogonId additional.fields.value.string_value: %{additional.eventSubjectLogonId} |
Nilai yang diambil langsung dari kolom log mentah additional.event__SubjectLogonId. |
| additional.event__SubjectUserName | principal.user.user_displayname: %{additional.event_SubjectUserName} | Nilai yang diambil langsung dari kolom log mentah additional.event__SubjectUserName. |
| additional.event__SubjectUserSid | principal.user.windowssid: %{additional.event_SubjectUserSid} | Nilai yang diambil langsung dari kolom log mentah additional.event__SubjectUserSid. |
| additional.event__TaskContentNew | additional.fields.key: eventTaskContentNew additional.fields.value.string_value: %{additional.eventTaskContentNew} |
Nilai yang diambil langsung dari kolom log mentah additional.event__TaskContentNew. |
| additional.event__TaskName | additional.fields.key: eventTaskName additional.fields.value.string_value: %{additional.eventTaskName} |
Nilai yang diambil langsung dari kolom log mentah additional.event__TaskName. |
| additional.event__TargetDomainName | target.administrativedomain: %{additional.event_TargetDomainName} | Nilai yang diambil langsung dari kolom log mentah additional.event__TargetDomainName. |
| additional.event__TargetLinkedLogonId | additional.fields.key: eventTargetLinkedLogonId additional.fields.value.string_value: %{additional.eventTargetLinkedLogonId} |
Nilai yang diambil langsung dari kolom log mentah additional.event__TargetLinkedLogonId. |
| additional.event__TargetLogonId | additional.fields.key: eventTargetLogonId additional.fields.value.string_value: %{additional.eventTargetLogonId} |
Nilai yang diambil langsung dari kolom log mentah additional.event__TargetLogonId. |
| additional.event__TargetOutboundDomainName | additional.fields.key: eventTargetOutboundDomainName additional.fields.value.string_value: %{additional.eventTargetOutboundDomainName} |
Nilai yang diambil langsung dari kolom log mentah additional.event__TargetOutboundDomainName. |
| additional.event__TargetOutboundUserName | additional.fields.key: eventTargetOutboundUserName additional.fields.value.string_value: %{additional.eventTargetOutboundUserName} |
Nilai yang diambil langsung dari kolom log mentah additional.event__TargetOutboundUserName. |
| additional.event__TargetSid | target.user.windowssid: %{additional.event_TargetSid} | Nilai yang diambil langsung dari kolom log mentah additional.event__TargetSid. |
| additional.event__TargetUserName | target.user.userid: %{additional.event__TargetUserName} | Nilai yang diambil langsung dari kolom log mentah additional.event__TargetUserName. |
| additional.event__TargetUserSid | target.user.windowssid: %{additional.event_TargetUserSid} | Nilai yang diambil langsung dari kolom log mentah additional.event__TargetUserSid. |
| additional.event__TokenElevationType | additional.fields.key: eventTokenElevationType additional.fields.value.string_value: %{additional.eventTokenElevationType} |
Nilai yang diambil langsung dari kolom log mentah additional.event__TokenElevationType. |
| additional.event__TransmittedServices | additional.fields.key: eventTransmittedServices additional.fields.value.string_value: %{additional.eventTransmittedServices} |
Nilai yang diambil langsung dari kolom log mentah additional.event__TransmittedServices. |
| additional.event__VirtualAccount | additional.fields.key: eventVirtualAccount additional.fields.value.string_value: %{additional.eventVirtualAccount} |
Nilai yang diambil langsung dari kolom log mentah additional.event__VirtualAccount. |
| additional.event__WorkstationName | target.hostname: %{additional.event__WorkstationName} | Nilai yang diambil langsung dari kolom log mentah additional.event__WorkstationName. |
| additional.event_id | security_result.rule_name: EventID: %{additional.event_id} | Nilai yang diambil langsung dari kolom log mentah additional.event_id dan dikonversi menjadi string. |
| additional.query | network.dns.questions.name: %{additional.query} | Nilai yang diambil langsung dari kolom log mentah additional.query. |
| additional.response | network.dns.answers.name: %{additional.response} | Nilai yang diambil langsung dari kolom log mentah additional.response. |
| metadata.description | metadata.description: %{metadata.description} | Nilai yang diambil langsung dari kolom log mentah metadata.description. |
| metadata.eventTimestamp | metadata.event_timestamp.seconds: Extracted from %{metadata.eventTimestamp} metadata.event_timestamp.nanos: Extracted from %{metadata.eventTimestamp} |
Detik dan nanodetik diekstrak dari kolom log mentah metadata.eventTimestamp menggunakan penguraian tanggal. |
| metadata.eventType | metadata.product_event_type: %{metadata.eventType} metadata.event_type: %{metadata.eventType} |
Nilai yang diambil langsung dari kolom log mentah metadata.eventType. |
| metadata.logType | metadata.product_event_type: %{metadata.logType} metadata.event_type: %{metadata.logType} |
Nilai yang diambil langsung dari kolom log mentah metadata.logType. |
| network.applicationProtocol | network.application_protocol: %{network.applicationProtocol} | Nilai yang diambil langsung dari kolom log mentah network.applicationProtocol. |
| network.direction | network.direction: %{network.direction} | Nilai yang diambil langsung dari kolom log mentah network.direction. |
| network.ipProtocol | network.ip_protocol: %{network.ipProtocol} | Nilai yang diambil langsung dari kolom log mentah network.ipProtocol. |
| principal.assetId | principal.asset_id: TANIUM:%{principal.assetId} | Nilai diambil langsung dari kolom log mentah principal.assetId dan diawali dengan "TANIUM:". |
| principal.hostname | principal.hostname: %{principal.hostname} | Nilai yang diambil langsung dari kolom log mentah principal.hostname. |
| principal.process.companySpecificParentProcessId | principal.process.product_specific_process_id: TANIUM:%{principal.assetId}:%{principal.process.companySpecificParentProcessId} | Nilai yang diambil langsung dari kolom log mentah principal.process.companySpecificParentProcessId dan diformat sebagai "TANIUM:%{principal.assetId}:%{principal.process.companySpecificParentProcessId}". |
| principal.process.companySpecificProcessId | principal.process.product_specific_process_id: TANIUM:%{principal.assetId}:%{principal.process.companySpecificProcessId} | Nilai diambil langsung dari kolom log mentah principal.process.companySpecificProcessId dan diformat sebagai "TANIUM:%{principal.assetId}:%{principal.process.companySpecificProcessId}". |
| principal.process.commandLine | target.process.command_line: %{principal.process.commandLine} | Nilai yang diambil langsung dari kolom log mentah principal.process.commandLine dengan tanda petik ganda dihapus dan tanda hubung diganti dengan ampersand. |
| principal.process.file.fullPath | target.process.file.full_path: %{principal.process.file.fullPath} | Nilai yang diambil langsung dari kolom log mentah principal.process.file.fullPath. |
| principal.process.file.md5 | target.process.file.md5: %{principal.process.file.md5} | Nilai yang diambil langsung dari kolom log mentah principal.process.file.md5 dan dikonversi menjadi huruf kecil. |
| principal.process.parentPid | principal.process.pid: %{principal.process.parentPid} | Nilai diambil langsung dari kolom log mentah principal.process.parentPid hanya untuk peristiwa PROCESS_LAUNCH. |
| principal.process.pid | target.process.pid: %{principal.process.pid} | Nilai diambil langsung dari kolom log mentah principal.process.pid hanya untuk peristiwa PROCESS_LAUNCH. |
| principal.process.productSpecificProcessId | principal.process.product_specific_process_id: TANIUM:%{principal.assetId}:%{principal.process.productSpecificProcessId} | Nilai yang diambil langsung dari kolom log mentah principal.process.productSpecificProcessId dan diformat sebagai "TANIUM:%{principal.assetId}:%{principal.process.productSpecificProcessId}". |
| principal.user.groupid | principal.user.group_identifiers: %{principal.user.groupid} | Nilai yang diambil langsung dari kolom log mentah principal.user.groupid. |
| principal.user.userid | principal.user.userid: %{principal.user.userid} | Nilai yang diambil langsung dari kolom log mentah principal.user.userid. |
| src.ip | principal.ip: %{src.ip} | Nilai yang diambil langsung dari kolom log mentah src.ip. |
| src.port | principal.port: %{src.port} | Nilai yang diambil langsung dari kolom log mentah src.port dan dikonversi menjadi bilangan bulat. |
| target.file.fullPath | target.file.full_path: %{target.file.fullPath} | Nilai yang diambil langsung dari kolom log mentah target.file.fullPath. |
| target.file.md5 | target.file.md5: %{target.file.md5} | Nilai yang diambil langsung dari kolom log mentah target.file.md5. |
| target.port | target.port: %{target.port} | Nilai yang diambil langsung dari kolom log mentah target.port dan dikonversi menjadi bilangan bulat. |
| target.registry.registryKey | target.registry.registry_key: %{target.registry.registryKey} | Nilai yang diambil langsung dari kolom log mentah target.registry.registryKey. |
| target.registry.registryValue | target.registry.registry_value_data: %{target.registry.registryValue} | Nilai yang diambil langsung dari kolom log mentah target.registry.registryValue. |
| target.user.userDisplayName | target.user.user_display_name: %{target.user.userDisplayName} | Nilai yang diambil langsung dari kolom log mentah target.user.userDisplayName. |
| target.user.windowsSid | target.user.windows_sid: %{target.user.windowsSid} | Nilai yang diambil langsung dari kolom log mentah target.user.windowsSid. |
| user-agent | network.http.user_agent: %{user-agent} | Nilai yang diambil langsung dari kolom log mentah user-agent dengan tanda petik ganda dihapus. |
| T/A | extensions.auth.auth_mechanism: LOCAL/NETWORK/BATCH/SERVICE/UNLOCK/NETWORK_CLEAR_TEXT/NEW_CREDENTIALS/REMOTE_INTERACTIVE/CACHED_INTERACTIVE/MECHANISM_UNSPECIFIED | Ditentukan oleh kode parser berdasarkan nilai additional.event__LogonType. |
| T/A | extensions.auth.type: MACHINE | Ditambahkan oleh kode parser untuk peristiwa USER_LOGIN dan USER_LOGOUT. |
| T/A | metadata.event_type: PROCESS_LAUNCH/NETWORK_CONNECTION/FILE_OPEN/FILE_DELETION/REGISTRY_MODIFICATION/USER_LOGIN/STATUS_UPDATE/USER_LOGOUT/PROCESS_MODULE_LOAD/PROCESS_TERMINATION/USER_CHANGE_PERMISSIONS/SCHEDULED_TASK_MODIFICATION/SCHEDULED_TASK_DISABLE/SCHEDULED_TASK_ENABLE/SCHEDULED_TASK_DELETION/SCHEDULED_TASK_CREATION/PROCESS_UNCATEGORIZED | Ditentukan oleh kode parser berdasarkan nilai metadata.logType dan additional.event_id. |
| T/A | metadata.log_type: TANIUM_TH | Nilai hardcode yang ditambahkan oleh kode parser. |
| T/A | metadata.product_name: Stream | Nilai hardcode yang ditambahkan oleh kode parser. |
| T/A | metadata.vendor_name: Tanium | Nilai hardcode yang ditambahkan oleh kode parser. |
| T/A | principal.hostname: %{principal_hostname} | Nilai diambil dari principal.hostname atau additional.event__FQDN. |
| T/A | principal.ip: %{srcIp} | Diekstrak dari pesan log mentah menggunakan grok jika src.ip ada. |
| T/A | securityresult.about.resource.name: %{additional.event_AuthenticationPackageName} | Nilai yang diambil langsung dari kolom log mentah additional.event__AuthenticationPackageName untuk nilai additional.event_id tertentu. |
| T/A | security_result.category: AUTH_VIOLATION | Ditambahkan oleh kode parser untuk nilai additional.event_id tertentu. |
| T/A | security_result.rule_name: EventID: %{additional.event_id} | Nilai yang diambil langsung dari kolom log mentah additional.event_id dan dikonversi menjadi string. |
| T/A | target.hostname: %{query_host} | Diekstrak dari kolom log mentah additional.query jika berisi nama host. |
| T/A | target.ip: %{dstIp} | Diekstrak dari pesan log mentah menggunakan grok jika src.ip ada. |
| T/A | target.ip: %{query_ip} | Diekstrak dari kolom log mentah additional.query jika berisi alamat IP. |
| T/A | target.process.command_line: %{principal_process_commandLine} | Nilai diambil dari principal.process.commandLine jika tidak kosong. |
| T/A | target.process.file.full_path: %{principal_process_file_fullPath} | Nilai diambil dari principal.process.file.fullPath jika tidak kosong. |
| T/A | target.process.file.md5: %{principal_process_file_md5} | Nilai diambil dari principal.process.file.md5 jika tidak kosong. |
| T/A | target.process.product_specific_process_id: TANIUM:%{principal.assetId}:%{principal.process.productSpecificProcessId} | Nilai diambil dari principal.process.productSpecificProcessId dan diformat sebagai "TANIUM:%{principal.assetId}:%{principal.process.productSpecificProcessId}". |
| T/A | target.resource.resource_type: TASK | Ditambahkan oleh kode parser untuk nilai additional.event_id tertentu. |
| T/A | timestamp.seconds: Extracted from %{metadata.eventTimestamp} timestamp.nanos: Extracted from %{metadata.eventTimestamp} |
Detik dan nanodetik diekstrak dari kolom log mentah metadata.eventTimestamp menggunakan penguraian tanggal. |
Log Perubahan
Melihat Log Perubahan untuk parser ini
Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.