Logpoint

Dokumen ini memberikan panduan tentang cara mengintegrasikan Logpoint dengan Google SecOps.

Kasus Penggunaan

Melakukan tindakan aktif - menjalankan kueri untuk mendapatkan informasi selengkapnya tentang entity.

Mengonfigurasi integrasi Logpoint di Google Security Operations

Untuk mendapatkan petunjuk mendetail terkait cara mengonfigurasi integrasi di Google SecOps, lihat Mengonfigurasi integrasi.

Parameter integrasi

Gunakan parameter berikut untuk mengonfigurasi integrasi:

Nama Tampilan Parameter Jenis Nilai Default Wajib Diisi Deskripsi
Alamat IP String https://x.x.x.x Ya Alamat IP instance Logpoint.
Nama pengguna String T/A Ya Nama pengguna akun Logpoint.
Rahasia Sandi T/A Ya Kunci API Rahasia akun Logpoint
File Sertifikat CA String T/A Tidak File sertifikat CA berenkode base64.
Verifikasi SSL Kotak centang Dicentang Ya Jika diaktifkan, verifikasi bahwa sertifikat SSL untuk koneksi ke server Logpoint valid.

Tindakan

Ping

Deskripsi

Uji konektivitas ke Logpoint dengan parameter yang disediakan di halaman konfigurasi integrasi di halaman Google SecOps Content Hub.

Parameter

T/A

Dijalankan Pada

Tindakan ini tidak berjalan di entity, dan tidak memiliki parameter input wajib.

Hasil Tindakan

Hasil Skrip
Nama Hasil Skrip Opsi Nilai
is_success is_success=False
is_success is_success=True
Repositori Kasus
Jenis Hasil Nilai / Deskripsi Jenis
Pesan output*

Tindakan tidak boleh gagal atau menghentikan eksekusi playbook:
jika berhasil: "Successfully connected to the Logpoint server with the provided connection parameters!"

Tindakan akan gagal dan menghentikan eksekusi playbook:
jika tidak berhasil: "Failed to connect to the Logpoint server! Error is {0}".format(exception.stacktrace)

Umum

Menjalankan Kueri

Deskripsi

Menjalankan kueri penelusuran di Logpoint.

Parameter

Nama Tampilan Parameter Jenis Nilai Default Wajib Diisi Deskripsi
Kueri String T/A Ya Tentukan kueri yang perlu dijalankan di Logpoint.
Jangka Waktu DDL

24 Jam Terakhir

Nilai yang Mungkin:
Satu Jam Terakhir

12 Jam Terakhir

24 Jam Terakhir

30 Hari Terakhir

365 Hari Terakhir

Kustom

Ya Tentukan jangka waktu untuk kueri. Jika "Kustom" dipilih, Anda juga harus memberikan waktu mulai dan waktu berakhir.
Waktu Mulai String T/A Tidak

Tentukan waktu mulai untuk kueri. Format:

YYYY-MM-DDThh:mm:ssZ atau stempel waktu.

Waktu Berakhir String T/A Tidak

Tentukan waktu berakhir untuk kueri.Format:

YYYY-MM-DDThh:mm:ssZ atau stempel waktu. Jika tidak ada yang diberikan, tindakan akan menggunakan waktu saat ini sebagai waktu berakhir.

Repo CSV T/A Tidak Tentukan daftar nama repositori yang dipisahkan koma. Jika tidak ada yang diberikan, tindakan akan menelusuri di semua repositori.
Jumlah Hasil Maksimum yang Akan Ditampilkan Bilangan bulat 100 Tidak Tentukan jumlah hasil yang harus ditampilkan.

Dijalankan Pada

Tindakan ini tidak berjalan di entity.

Hasil Tindakan

Hasil Skrip
Nama Hasil Skrip Opsi Nilai
is_success is_success=False
is_success is_success=True
Hasil JSON
{
    "query_type": "simple",
    "rows": [
        {
            "msg": "2021-01-10 10:27:50 Benchmarker; reporting speed; service=norm_front; actual_mps=1; doable_mps=19096;",
            "log_ts": 1610274470,
            "actual_mps": "1",
            "doable_mps": "19096",
            "_type_str": "_tz device_name msg source_name col_type object norm_id service collected_at label device_ip
    _enrich_policy action _fromV550 repo_name logpoint_name",
    "device_name": "localhost",
            "_offset": 48317,
            "logpoint_name": "Logpoint",
            "action": "reporting speed",
            "repo_name": "_logpoint",
            "source_name": "/opt/immune/var/log/benchmarker/norm_front.log",
            "col_ts": 1610274470,
            "_tz": "UTC",
            "norm_id": "Logpoint",
            "_identifier": "0",
            "collected_at": "Logpoint",
            "device_ip": "127.0.0.1",
            "service": "norm_front",
            "_fromV550": "t",
            "_enrich_policy": "None",
            "_type_num": "actual_mps doable_mps col_ts sig_id log_ts _offset _identifier",
            "_type_ip": "device_ip",
            "sig_id": "10505",
            "col_type": "filesystem",
            "object": "Benchmarker",
            "_labels": [
                "Logpoint",
                "Benchmarker"
            ]
        }
    ],
    "version": 6,
    "extracted_terms": [],
    "time_range": [
        1609496280,
        1610274480
    ],
    "orig_search_id": "9acac4a0-e530-4a19-a446-e17d4d9f8aae",
    "success": true,
    "final": true,
    "totalPages": 1,
    "estim_count": 185003,
    "complete": true,
    "status": {
        "Logpoint": {
            "default": {
                "@class": "com.logpoint.libcommon.merger.api.SimpleStatus",
                "estim_count": 3,
                "final": true
            },
            "_logpoint": {
                "@class": "com.logpoint.libcommon.merger.api.SimpleStatus",
                "estim_count": 185000,
                "final": true
            },
            "LogSource1": {
                "@class": "com.logpoint.libcommon.merger.api.SimpleStatus",
                "estim_count": 0,
                "final": true
            },
            "_LogpointAlerts": {
                "@class": "com.logpoint.libcommon.merger.api.SimpleStatus",
                "estim_count": 0,
                "final": true
            }
        }
    }
}
Repositori Kasus
Jenis Hasil Nilai / Deskripsi Jenis
Pesan output*

Tindakan tidak boleh gagal atau menghentikan eksekusi playbook:
jika success == true untuk semua permintaan (is_success = true): "Successfully executed query and retrieved results from Logpoint".

Jika success == true untuk semua permintaan, tetapi tidak ada hasil (is_success=false): "No data was found for the provided query."

Jika success == false untuk setidaknya satu permintaan (is_success = false): "Action wasn't able to successfully execute query and retrieve results from Logpoint. Reason: {0}".format(message)

Pesan asinkron

"Menunggu kueri selesai diproses di Logpoint."

Tindakan akan gagal dan menghentikan eksekusi playbook:
jika terjadi error fatal, seperti kredensial salah, tidak ada koneksi ke server, atau error lainnya: "Error executing action "Execute Query". Reason: {0}''.format(error.Stacktrace)

Jika waktu tunggu habis:

Terjadi error saat menjalankan tindakan "Execute Query". Alasan: Tindakan mencapai waktu tunggu. Persempit jangka waktu atau kurangi jumlah hasil yang akan ditampilkan.

Jika setidaknya satu repo tidak ditemukan:

"Terjadi error saat menjalankan tindakan "Jalankan Kueri". Alasan: Repositori berikut tidak ditemukan di Logpoint: {0}. Pastikan semua repositori tersedia.".format(comma-separated list of repos that were not found)

Jika "Kustom" dipilih, tetapi "Waktu Mulai" tidak diberikan:

"Terjadi error saat menjalankan tindakan "Jalankan Kueri". Alasan: Anda harus memberikan "Waktu Mulai", jika "Kustom" dipilih untuk jangka waktu."

Umum
Tabel Repositori Kasus

Nama Tabel: "Hasil"

Semua kolom dari respons akan digunakan sebagai kolom tabel.

Umum

Menjalankan Kueri Entity

Deskripsi

Menjalankan kueri di Logpoint berdasarkan entity. Jenis entitas yang saat ini didukung: Pengguna, IP, Alamat Email, URL, Hash File, Nama Host. Catatan: Alamat Email adalah entity Pengguna yang cocok dengan format alamat email.

Cara menggunakan parameter tindakan

Tindakan ini memberikan kemampuan untuk mengambil informasi terkait entity dengan mudah. Misalnya, Anda dapat menyelesaikan kasus penggunaan, saat Anda ingin melihat jumlah log endpoint yang terpengaruh oleh hash yang disediakan tanpa pembuatan kueri yang rumit.

Untuk menyelesaikan masalah ini di Logpoint, Anda harus menyiapkan kueri berikut: ("device_ip"="10.0.0.1" or "device_ip"="10.0.0.2") and ("hash"="7694f4a66316e53c8cdd9d9954bd611d" or "hash"="8264ee52f589f4c0191aa94f87aa1aeb") | chart count() by device_ip

Untuk membuat kueri yang sama menggunakan tindakan "Execute Entity Query", Anda harus mengisi parameter tindakan dengan cara berikut:

Kueri | chart count() by device_ip
Kunci Entitas IP device_ip
Kunci Entity Hash File hash
Operator Lintas Entitas DAN

Semua kolom lainnya dapat dibiarkan kosong.

Jika kasus penggunaannya adalah untuk melihat jumlah endpoint yang terpengaruh oleh hash yang diberikan, konfigurasi "Execute Entity Query" akan terlihat seperti berikut.

Kueri | chart count() by device_ip
Kunci Entity Hash File hash

"Cross Entity Operator" dalam situasi ini tidak akan berdampak, karena hanya memengaruhi kueri, jika beberapa "Entity Keys" diberikan.

Parameter

Nama Tampilan Parameter Jenis Nilai Default Wajib Diisi Deskripsi
Kueri String Ya Tentukan kueri yang perlu dijalankan. Lihat dokumentasi tindakan untuk mengetahui detailnya.
Jangka Waktu DDL

24 Jam Terakhir

Nilai yang Mungkin:
Satu Jam Terakhir

12 Jam Terakhir

24 Jam Terakhir

30 Hari Terakhir

365 Hari Terakhir

Kustom

Ya Tentukan jangka waktu untuk kueri. Jika "Kustom" dipilih, Anda juga harus memberikan waktu mulai, waktu akhir secara default akan menggunakan waktu saat ini.
Waktu Mulai String Tidak

Tentukan waktu mulai untuk kueri. Format:

YYYY-MM-DDThh:mm:ssZ atau stempel waktu.

Waktu Berakhir String Tidak

Tentukan waktu berakhir untuk kueri.Format:

YYYY-MM-DDThh:mm:ssZ atau stempel waktu. Jika tidak ada yang diberikan, tindakan akan menggunakan waktu saat ini sebagai waktu berakhir.

Repo CSV Tidak Tentukan daftar nama repositori yang dipisahkan koma. Jika tidak ada yang diberikan, tindakan akan menelusuri di semua repositori.
Kunci Entitas IP String Tidak Tentukan kunci yang harus digunakan dengan entity IP. Lihat dokumentasi tindakan untuk mengetahui detailnya.
Kunci Entitas Nama Host String Tidak Tentukan kunci yang harus digunakan dengan entity Hostname, saat menyiapkan . Lihat dokumentasi tindakan untuk mengetahui detailnya.
Kunci Entity Hash File Tidak Tentukan kunci yang harus digunakan dengan entity Hash File. Lihat dokumentasi tindakan untuk mengetahui detailnya.
Kunci Entity Pengguna Tidak Tentukan kunci yang harus digunakan dengan entity Pengguna. Lihat dokumentasi tindakan untuk mengetahui detailnya.
Kunci Entitas URL Tidak Tentukan kunci yang harus digunakan dengan entity URL. Lihat dokumentasi tindakan untuk mengetahui detailnya.
Kunci Entitas Alamat Email Tidak Tentukan kunci yang harus digunakan dengan entity Alamat Email. Lihat dokumentasi tindakan untuk mengetahui detailnya.
Berhenti Jika Entity Tidak Cukup Kotak centang Dicentang Ya Jika diaktifkan, tindakan tidak akan mulai dieksekusi, kecuali jika semua jenis entity tersedia untuk ".. Kunci Entity" yang ditentukan. Contoh: jika "IP Entity Key" dan "File Hash Entity Key" ditentukan, tetapi dalam cakupan tidak ada hash file, maka jika parameter ini diaktifkan, tindakan tidak akan menjalankan kueri.
Operator Lintas Entitas DDL

ATAU

Nilai yang Mungkin Muncul:

ATAU

DAN

Ya Tentukan operator logika yang harus digunakan di antara berbagai jenis entity.
Jumlah Hasil Maksimum yang Akan Ditampilkan Bilangan bulat 100 Tidak Tentukan jumlah hasil yang harus ditampilkan.

Dijalankan Pada

Tindakan ini berjalan di entity berikut:

  • Alamat IP
  • Host
  • Pengguna
  • Hash
  • URL

Hasil Tindakan

Hasil Skrip
Nama Hasil Skrip Opsi Nilai
is_success is_success=False
is_success is_success=True
Hasil JSON
{
    "query_type": "simple",
    "rows": [
        {
            "msg": "2021-01-10 10:27:50 Benchmarker; reporting speed; service=norm_front; actual_mps=1; doable_mps=19096;",
            "log_ts": 1610274470,
            "actual_mps": "1",
            "doable_mps": "19096",
            "_type_str": "_tz device_name msg source_name col_type object norm_id service collected_at label device_ip
    _enrich_policy action _fromV550 repo_name logpoint_name",
    "device_name": "localhost",
            "_offset": 48317,
            "logpoint_name": "Logpoint",
            "action": "reporting speed",
            "repo_name": "_logpoint",
            "source_name": "/opt/immune/var/log/benchmarker/norm_front.log",
            "col_ts": 1610274470,
            "_tz": "UTC",
            "norm_id": "Logpoint",
            "_identifier": "0",
            "collected_at": "Logpoint",
            "device_ip": "127.0.0.1",
            "service": "norm_front",
            "_fromV550": "t",
            "_enrich_policy": "None",
            "_type_num": "actual_mps doable_mps col_ts sig_id log_ts _offset _identifier",
            "_type_ip": "device_ip",
            "sig_id": "10505",
            "col_type": "filesystem",
            "object": "Benchmarker",
            "_labels": [
                "Logpoint",
                "Benchmarker"
            ]
        }
    ],
    "version": 6,
    "extracted_terms": [],
    "time_range": [
        1609496280,
        1610274480
    ],
    "orig_search_id": "9acac4a0-e530-4a19-a446-e17d4d9f8aae",
    "success": true,
    "final": true,
    "totalPages": 1,
    "estim_count": 185003,
    "complete": true,
    "status": {
        "Logpoint": {
            "default": {
                "@class": "com.logpoint.libcommon.merger.api.SimpleStatus",
                "estim_count": 3,
                "final": true
            },
            "_logpoint": {
                "@class": "com.logpoint.libcommon.merger.api.SimpleStatus",
                "estim_count": 185000,
                "final": true
            },
            "LogSource1": {
                "@class": "com.logpoint.libcommon.merger.api.SimpleStatus",
                "estim_count": 0,
                "final": true
            },
            "_LogpointAlerts": {
                "@class": "com.logpoint.libcommon.merger.api.SimpleStatus",
                "estim_count": 0,
                "final": true
            }
        }
    }
}
Repositori Kasus
Jenis Hasil Nilai / Deskripsi Jenis
Pesan output*

Tindakan tidak boleh gagal atau menghentikan eksekusi playbook:
jika success == true untuk semua permintaan (is_success = true): "Successfully executed query and retrieved results from Logpoint".

Jika success == true untuk semua permintaan, tetapi tidak ada hasil (is_success=false): "No data was found for the provided query."

Jika success == false untuk setidaknya satu permintaan (is_success = false): "Action wasn't able to successfully execute query and retrieve results from Logpoint. Reason: {0}".format(message)

Pesan asinkron

"Menunggu kueri selesai diproses di Logpoint."

Jika "Stop If Not Enough Entities" diaktifkan dan jenis entity yang tersedia tidak cukup untuk "Entity Keys" yang diberikan (is_success=false): Action wasn't able to build the query, because not enough entity types were supplied for the specified ".. Entity Keys". Nonaktifkan parameter "Stop If Not Enough Entities" atau berikan setidaknya satu entity untuk setiap ".. Entity Key" yang ditentukan.

Tindakan akan gagal dan menghentikan eksekusi playbook:
jika terjadi error fatal, seperti kredensial salah, tidak ada koneksi ke server, atau error lainnya: "Error executing action "Execute Entity Query". Reason: {0}''.format(error.Stacktrace)

Jika waktu tunggu habis:

Terjadi error saat menjalankan tindakan "Execute Entity Query". Alasan: Tindakan mencapai waktu tunggu. Persempit jangka waktu atau kurangi jumlah hasil yang akan ditampilkan.

Jika setidaknya satu repo tidak ditemukan:
"Error executing action "Execute Entity Query". Alasan: Repositori berikut tidak ditemukan di Logpoint: {0}. Pastikan semua repositori tersedia.".format(comma-separated list of repos that were not found)

Jika tidak ada kunci "Entity" yang ditentukan:

Terjadi error saat menjalankan tindakan "Execute Entity Query". Alasan: Tentukan setidaknya satu parameter ".. Entity Key".

Jika "Kustom" dipilih, tetapi "Waktu Mulai" tidak diberikan:

"Error saat menjalankan tindakan "Execute Entity Query". Alasan: Anda harus memberikan "Waktu Mulai", jika "Kustom" dipilih untuk jangka waktu."

Umum

Tabel Repositori Kasus

Table Name: "Results"

Semua kolom dari respons akan digunakan sebagai kolom tabel.

Umum

Mencantumkan Repositori

Deskripsi

Mencantumkan repositori yang tersedia di Logpoint.

Parameter

Nama Tampilan Parameter Jenis Nilai Default Wajib Diisi Deskripsi
Jumlah Maksimum Repositori yang Akan Ditampilkan Bilangan bulat 100 Tidak Tentukan jumlah laporan yang harus ditampilkan.

Dijalankan Pada

Tindakan ini tidak berjalan di entity.

Hasil Tindakan

Hasil Skrip
Nama Hasil Skrip Opsi Nilai
is_success is_success=False
is_success is_success=True
Hasil JSON
{
    "success": true,
    "allowed_repos": [
        {
            "repo": "default",
            "address": "127.0.0.1:5504/default"
        },
        {
            "repo": "_logpoint",
            "address": "127.0.0.1:5504/_logpoint"
        },
        {
            "repo": "_LogpointAlerts",
            "address": "127.0.0.1:5504/_LogpointAlerts"
        },
        {
            "repo": "LogSource1",
            "address": "127.0.0.1:5504/LogSource1"
        }
    ],
    "logpoint": [
        {
            "name": "Logpoint",
            "ip": "127.0.0.1"
        }
    ]
}
Repositori Kasus
Jenis Hasil Nilai / Deskripsi Jenis
Pesan output*

Tindakan tidak boleh gagal atau menghentikan eksekusi playbook:
if success == true (is_success = true): "Successfully retrieve available repos query from Logpoint".

Tindakan akan gagal dan menghentikan eksekusi playbook:
jika terjadi error fatal, seperti kredensial salah, tidak ada koneksi ke server, atau error lainnya: "Error executing action "List Repos". Reason: {0}''.format(error.Stacktrace)

Umum
Tabel Repositori Kasus

Table Name: "Available Repos"

Name - allowed_repos/repo

Address - allowed_repos/address

Umum

Memperbarui Status Insiden

Deskripsi

Memperbarui status insiden di Logpoint.

Parameter

Nama Tampilan Parameter Jenis Nilai Default Wajib Diisi Deskripsi
ID Insiden String T/A Ya Tentukan ID insiden yang ingin Anda perbarui.
Tindakan DLL

Tutup

Nilai yang Mungkin Muncul:

Selesaikan

Tutup

Ya Tentukan tindakan untuk insiden tersebut.

Dijalankan Pada

Tindakan ini tidak berjalan di entity.

Hasil Tindakan

Hasil Skrip
Nama Hasil Skrip Opsi Nilai
is_success is_success=False
is_success is_success=True
Repositori Kasus
Jenis Hasil Nilai / Deskripsi Jenis
Pesan output*

Tindakan tidak boleh gagal atau menghentikan eksekusi playbook:
if success== true (is_success = true): "Successfully {0} incident with ID {1} in Logpoint.".format(resolved/closed, incident_id)

if success== false(is_success = true): "Action wasn't able to {0} incident with ID {1} in Logpoint.".format(resolve/close, incident_id)

Tindakan akan gagal dan menghentikan eksekusi playbook:

jika error fatal, seperti kredensial salah, tidak ada koneksi ke server, atau error lainnya: "Error executing action "Update Incident Status". Reason: {0}''.format(error.Stacktrace)

Umum

Konektor

Logpoint - Incidents Connector

Deskripsi

Mengambil insiden dari Logpoint.

Mengonfigurasi Logpoint - Incidents Connector di Google SecOps

Untuk mendapatkan petunjuk mendetail terkait cara mengonfigurasi konektor di Google SecOps, lihat Mengonfigurasi konektor.

Parameter konektor

Gunakan parameter berikut untuk mengonfigurasi konektor:

Nama Tampilan Parameter Jenis Nilai Default Wajib Diisi Deskripsi
Nama Kolom Produk String Nama Produk Ya Masukkan nama kolom sumber untuk mengambil nama Kolom Produk.
Nama Kolom Peristiwa String jenis Ya Masukkan nama kolom sumber untuk mengambil nama Kolom Peristiwa.
Nama Kolom Lingkungan String "" Tidak

Menjelaskan nama kolom tempat nama lingkungan disimpan.

Jika kolom lingkungan tidak ditemukan, lingkungan tersebut adalah lingkungan default.

Pola Regex Lingkungan String .* Tidak

Pola ekspresi reguler yang akan dijalankan pada nilai yang ditemukan di kolom "Nama Kolom Lingkungan".

Defaultnya adalah .* untuk menangkap semua dan menampilkan nilai yang tidak berubah.

Digunakan untuk mengizinkan pengguna memanipulasi kolom lingkungan melalui logika ekspresi reguler.

Jika pola ekspresi reguler null atau kosong, atau nilai lingkungan null, hasil lingkungan akhir adalah lingkungan default.

Waktu Tunggu Skrip (Detik) Bilangan bulat 180 Ya Batas waktu tunggu untuk proses python yang menjalankan skrip saat ini.
Alamat IP String https://x.x.x.x Ya Alamat IP instance Logpoint.
Nama pengguna String T/A Ya Nama pengguna akun Logpoint.
Rahasia Sandi T/A Ya Rahasia akun Logpoint.
Jam Maksimum Mundur Bilangan bulat 1 Tidak Jumlah jam dari tempat pengambilan insiden.
Risiko Pengambilan Terendah String T/A Tidak

Risiko terendah dari insiden yang akan diambil. Nilai yang memungkinkan:

Kritis, Tinggi, Sedang, Rendah.

Insiden Maksimum yang Akan Diambil Bilangan bulat 10 Tidak Jumlah insiden yang akan diproses per satu iterasi konektor.
Menggunakan daftar yang diizinkan sebagai daftar yang tidak diizinkan Kotak centang Tidak dicentang Ya Jika diaktifkan, daftar yang diizinkan akan digunakan sebagai daftar yang tidak diizinkan.
Verifikasi SSL Kotak centang Tidak dicentang Ya Jika diaktifkan, setelan ini akan memverifikasi bahwa sertifikat SSL untuk koneksi ke server Logpoint valid.
File Sertifikat CA String T/A Tidak File sertifikat CA berenkode base64.
Alamat Server Proxy String T/A Tidak Alamat server proxy yang akan digunakan.
Nama Pengguna Proxy String T/A Tidak Nama pengguna proxy untuk melakukan autentikasi.
Sandi Proxy Sandi T/A Tidak Sandi proxy untuk autentikasi.
Filter Pengguna CSV T/A Tidak Daftar nama pengguna yang dipisahkan koma yang digunakan untuk memfilter insiden. Hanya insiden yang dibuat oleh pengguna yang valid yang diserap. Jika tidak ada yang diberikan, filter ini tidak akan diterapkan dan konektor akan menyerap insiden dari semua pengguna.

Aturan Konektor

Dukungan Proxy

Konektor mendukung proxy.

Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.