Halaman ini menjelaskan cara membuat dan mengedit kueri temuan Security Command Center menggunakan panel Editor kueri di halaman Temuan.
Gunakan kueri untuk mengambil temuan tertentu dan memfilter temuan yang ditampilkan dalam hasil kueri temuan.
Mengedit kueri temuan
Di panel Query editor, Anda dapat menambahkan filter ke kueri untuk memilih temuan berdasarkan nilai properti atau atributnya. Anda dapat memfilter hal-hal seperti keberadaan nilai, tidak adanya nilai, atau pencocokan string sebagian.
Untuk mengetahui informasi tentang cara mengedit kueri temuan, klik tab untuk tingkat layanan Anda.
Standar atau Premium
- Di konsol Google Cloud , buka halaman Temuan di Security Command Center.
- Pilih project atau organisasi Google Cloud Anda. Halaman Temuan dimuat dengan kueri default yang ditampilkan di kolom Pratinjau kueri.
- Di sebelah kanan bagian Pratinjau kueri, klik edit Edit Kueri untuk membuka panel Editor kueri.
- Pilih Tambahkan filter untuk membuka, menelusuri, dan menambahkan filter atribut yang telah ditentukan sebelumnya ke kueri.
- Pilih atribut temuan atau ketik namanya di kotak Telusuri atribut temuan. Daftar sub-atribut yang tersedia akan ditampilkan.
- Pilih sub-atribut. Kolom pilihan ditampilkan tempat Anda dapat membuat pernyataan kueri menggunakan sub-atribut yang Anda pilih, operator kueri, dan satu atau beberapa nilai untuk sub-atribut.
- Pilih operator dan satu atau beberapa nilai untuk sub-atribut dari panel. Untuk mengetahui informasi selengkapnya tentang operator kueri dan fungsi yang digunakannya, lihat Operator kueri di menu Tambahkan filter.
- Klik Terapkan.
Dialog akan ditutup dan kueri Anda diperbarui.
- Ulangi hingga kueri temuan berisi semua atribut yang Anda inginkan.
Dialog Pilih filter memungkinkan Anda memilih atribut dan nilai temuan yang didukung.
Saat Anda bekerja di editor kueri pada halaman Temuan, bagian Filter cepat dinonaktifkan untuk menghindari konflik antara keduanya.
Enterprise
- Di konsol Google Cloud , buka halaman Temuan di Security Command Center.
- Di panel Query editor, klik Tambahkan filter. Dialog Tambahkan Filter akan muncul. Dialog ini memungkinkan Anda memilih atribut dan nilai temuan yang didukung.
- Di kolom Kategori atribut, pilih atau masukkan atribut temuan.
- Di kolom Nama atribut, pilih atau masukkan sub-atribut.
- Di kolom Operator, pilih opsi evaluasi untuk nilai sub-atribut yang dipilih. Untuk mengetahui informasi selengkapnya tentang opsi evaluasi dan operator yang dapat Anda gunakan, lihat Operator kueri di menu Tambahkan filter.
- Pilih Apply.
Dialog akan ditutup dan kueri Anda diperbarui.
- Ulangi proses ini hingga kueri temuan berisi semua atribut yang ingin Anda filter.
Untuk menghapus filter, klik Reset.
Atau, Anda dapat membuat kueri temuan secara manual dengan cara yang sama seperti membuat filter temuan menggunakan Security Command Center API. Saat Anda mengetik kueri, menu pelengkapan otomatis akan muncul, tempat Anda dapat memilih nama filter, fungsi, dan nilai. Untuk membuka menu pelengkapan otomatis secara manual, tekan Control+Spasi.
Saat Anda mengedit kueri, editor akan menandai error dalam kueri, sehingga Anda dapat memperbaiki error sebelum mengirimkan kueri.
Operator kueri
Pernyataan kueri untuk temuan Security Command Center mendukung operator yang didukung oleh sebagian besar API. Google Cloud
Daftar berikut menunjukkan penggunaan berbagai operator:
state="ACTIVE" AND NOT mute="MUTED"
create_time>"2023-08-15T19:05:32.428Z"
resource.parent_name:"prod"
severity="CRITICAL" OR severity="HIGH"
Daftar berikut menunjukkan semua operator dan fungsi yang didukung dalam pernyataan kueri untuk temuan:
- Untuk string:
=
untuk kesetaraan penuh:
untuk pencocokan string parsial
- Untuk angka:
<
,>
,<=
,>=
untuk pertidaksamaan=
,!=
untuk kesetaraan
- Untuk boolean:
=
untuk kesetaraan
- Untuk hubungan logis:
AND
OR
NOT
atau-
- Untuk mengelompokkan ekspresi:
(
,)
(tanda kurung)
- Untuk array:
contains()
, fungsi untuk mengkueri temuan dengan kolom array yang berisi setidaknya satu elemen yang cocok dengan filter yang ditentukancontainsOnly()
, sebuah fungsi untuk membuat kueri temuan dengan kolom array yang hanya berisi elemen yang cocok dengan filter yang ditentukan
- Untuk alamat IP:
inIpRange()
, fungsi untuk mengkueri alamat IP dalam rentang CIDR yang ditentukan
Operator kueri di menu Tambahkan filter
Untuk mengetahui informasi tentang operator kueri yang digunakan di menu Tambahkan filter, klik tab untuk tingkat layanan Anda.
Standar atau Premium
Di menu Tambahkan filter operator dan fungsi kueri diwakili oleh kata atau frasa, seperti berikut:
Editor kueri,- Sama dengan: mencocokkan temuan dengan nilai atribut yang sama persis ini.
- Tidak sama dengan: cocok dengan temuan yang tidak memiliki nilai atribut persis ini.
- Setelah: mencocokkan temuan dengan waktu pembuatan atau pembaruan setelah waktu tertentu.
- Sebelum: mencocokkan temuan dengan waktu pembuatan atau update sebelum waktu yang ditentukan.
- Memiliki: mencocokkan temuan dengan nilai atribut yang berisi teks yang Anda masukkan di kolom Kata Kunci.
- Tidak memiliki: mencocokkan temuan dengan nilai atribut yang tidak berisi teks yang Anda masukkan di kolom Kata kunci.
- Untuk menemukan atribut yang berisi array:
- Berisi: mencocokkan temuan yang memiliki nilai array yang berisi teks yang Anda masukkan di kolom Kata Kunci.
- Berisi semua: mencocokkan temuan yang memiliki nilai array yang berisi semua teks yang Anda masukkan di kolom Kata kunci.
- Tidak berisi: mencocokkan temuan yang tidak memiliki nilai array yang berisi teks yang Anda masukkan di kolom Kata Kunci.
- Hanya berisi: mencocokkan temuan yang memiliki atribut array yang hanya berisi nilai yang Anda masukkan di kolom Kata Kunci, dan tidak ada nilai lain.
- Untuk alamat IP:
- Semua dalam rentang IP: cocok dengan temuan yang memiliki alamat IP dalam rentang CIDR yang ditentukan.
- Tidak memiliki apa pun dalam rentang IP: cocok dengan temuan yang memiliki alamat IP yang tidak berada dalam rentang CIDR yang ditentukan.
Enterprise
Di menu operator dan fungsi kueri diwakili oleh hal berikut:
Tambahkan filter pada Editor kueri,- Sama dengan: mencocokkan temuan dengan nilai atribut yang sama persis ini.
- Tidak sama dengan: mencocokkan temuan yang tidak memiliki nilai atribut ini.
- Setelah: mencocokkan temuan dengan waktu pembuatan atau update setelah waktu yang Anda tentukan.
- Sebelum: mencocokkan temuan dengan waktu pembuatan atau update sebelum waktu yang Anda tentukan.
- Memiliki: mencocokkan temuan dengan nilai atribut yang berisi teks yang Anda masukkan di kolom Kata Kunci.
- Tidak memiliki: mencocokkan temuan dengan nilai atribut yang tidak berisi teks yang Anda masukkan di kolom Kata kunci.
- Lebih besar dari: mencocokkan temuan dengan nilai atribut yang lebih tinggi daripada nilai yang Anda tentukan.
- Kurang dari: cocok dengan temuan yang memiliki nilai atribut lebih rendah daripada nilai yang Anda tentukan.
- Semua dalam rentang IP: cocok dengan temuan yang memiliki alamat IP dalam rentang CIDR yang ditentukan.
- Tidak memiliki apa pun dalam rentang IP: cocok dengan temuan yang memiliki alamat IP yang tidak berada dalam rentang CIDR yang ditentukan.
Fungsi kueri
Fungsi kueri memberikan evaluasi nilai atribut yang lebih kompleks daripada operator kueri umum.
Fungsi contains
Gunakan fungsi contains
untuk mengevaluasi atribut atau subkolom atribut
yang dapat muncul beberapa kali dalam temuan yang sama.
Secara internal, atribut atau sub-kolom atribut ini disimpan dalam elemen struktur data array, sehingga disebut sebagai atribut jenis array.
Misalnya, temuan tertentu dapat mereferensikan beberapa koneksi
jaringan, sehingga atribut connections
adalah atribut jenis array.
Demikian pula, temuan ancaman tertentu dapat mereferensikan beberapa
alamat IP sebagai indikator kompromi, sehingga sub-bidang ip_addresses
dari atribut indicator
adalah atribut jenis array.
Fungsi contains
menggunakan sintaksis berikut:
contains(ARRAY_ATTRIBUTE_NAME, SUBFILTER)
Ganti kode berikut:
ARRAY_ATTRIBUTE_NAME
: nama atribut jenis array yang disimpan dalam array. Jika atribut jenis array adalah sub-bidang dari atribut lain, tentukan nama atribut dan nama sub-bidang yang dipisahkan dengan titik.Dalam contoh berikut, atribut jenis array,
ip_addresses
, adalah sub-bidangindicator
, sehingga keduanya ditentukan dalam posisiARRAY_ATTRIBUTE_NAME
:contains(indicator.ip_addresses, elem="192.0.2.80")
SUBFILTER
: ekspresi yang menentukan cara mengevaluasi setiap instance atribut jenis array. Operator kueri dan pernyataan evaluasi Security Command Center Standard didukung.Jika nilai yang akan diperiksa berada di sub-bidang atribut jenis array, tentukan nama sub-bidang di sebelah kiri ekspresi. Fungsi
contains
berikut mengevaluasi setiap elemen arrayconnections
, yang merupakan atribut jenis array yang berisi sub-kolom. Nilai yang dikueri berada di sub-kolomdestination_ip
, yang bukan merupakan kolom jenis array. Nilai yang akan dikueri ditentukan dengan nama sub-bidang,destination_ip
, bukan parameterelem
.contains(connections, destination_ip="192.0.2.80")
Jika sub-bidang adalah atribut jenis array, tentukan atribut jenis array di sebelah kiri ekspresi dengan induknya dan gunakan parameter
elem
di sebelah kanan ekspresi untuk menentukan nilai yang akan dicari. Misalnya, fungsicontains
berikut mengevaluasi setiap elemen arrayip_addresses
, yang merupakan sub-bidang atributindicator
. Atributindicator
bukan kolom jenis array.contains(indicator.ip_addresses, elem="192.0.2.80")
Fungsi contains
di menu Tambahkan filter
Di menu Tambahkan filter, bergantung pada atribut temuan yang
Anda evaluasi, fungsi contains
dicantumkan secara eksplisit
atau disertakan secara otomatis saat Anda memilih opsi filter lain
yang memerlukannya.
Misalnya, untuk sub-bidang IP addresses dari atribut Indicator, Anda dapat memilih opsi filter berikut:
- Berisi salah satu
- Berisi semua
- Tidak berisi satu pun
Sebaliknya, jika Anda memfilter sub-bidang IP Tujuan dari
atribut Koneksi dan memilih Semua dalam rentang IP, fungsi
contains
akan ditambahkan ke pernyataan kueri secara otomatis,
seperti yang ditunjukkan dalam contoh berikut:
contains(connections, inIpRange(destination_ip, "2001:db8::/32"))
Untuk mengetahui informasi selengkapnya tentang fungsi contains
, lihat
Memfilter kolom jenis array.
Fungsi containsOnly
Fungsi containsOnly
memungkinkan Anda mengkueri temuan untuk atribut atau subbidang jenis array yang hanya berisi nilai yang ditentukan dalam subfilter, dan tidak ada yang lain.
Fungsi containsOnly
menggunakan sintaksis berikut:
containsOnly(ARRAY_ATTRIBUTE_NAME,SUBFILTER)
Ganti kode berikut:
ARRAY_ATTRIBUTE_NAME
: nama atribut jenis array. Jika atribut jenis array adalah sub-kolom dari atribut lain, tentukan nama atribut dan nama sub-kolom yang dipisahkan dengan titik. Saat Anda menjalankan kueri menggunakan konsol Google Cloud , fungsi ini hanya mendukung atribut arrayiam_bindings.member
daniam_bindings.role
.SUBFILTER
: ekspresi yang menentukan cara mengevaluasi setiap elemen atribut jenis array. Operator kueri dan pernyataan evaluasi Security Command Center Standar didukung.
Di menu Tambahkan filter, opsi filter berikut menggunakan fungsi containsOnly
:
Binding IAM > Anggota: hanya memilih temuan yang menyertakan pengguna, akun layanan, atau grup yang ditentukan.
Binding IAM > Peran: hanya memilih temuan yang menyertakan peran yang ditentukan.
Contoh berikut menunjukkan kueri temuan di konsol Google Cloud yang menampilkan temuan aktif dan tidak dibisukan untuk pengguna dalam grup example-group
:
state="ACTIVE" AND NOT mute="MUTED" AND containsOnly(iam_bindings,member="group:example-group@example.com")
Fungsi inIpRange
Fungsi inIpRange
memeriksa apakah alamat IP dalam atribut temuan yang dipilih berada dalam rentang alamat IP yang Anda tentukan menggunakan notasi CIDR (rentang CIDR). Berikut menunjukkan
sintaksis fungsi inIpRange
:
inIpRange(ATTRIBUTE_WITH_IP, "CIDR_RANGE")
Di menu Tambahkan filter, opsi filter berikut menggunakan fungsi inIpRange
:
- Semua dalam rentang IP: hanya memilih temuan yang berisi alamat IP dalam rentang yang ditentukan.
- Tidak memiliki apa pun dalam rentang IP: hanya memilih temuan yang tidak berisi alamat IP dalam rentang yang ditentukan.
Contoh berikut menunjukkan kueri temuan di konsol Google Cloud yang menampilkan temuan aktif dan tidak dibisukan yang sub-bidang caller_ip
dari objek access
-nya berisi alamat IPv6 dalam rentang CIDR 2001:db8::/32
:
state="ACTIVE" AND NOT mute="MUTED" AND inIpRange(access.caller_ip, "2001:db8::/32")
Contoh berikut menunjukkan kueri temuan yang menampilkan temuan aktif dan tidak dibisukan yang kolom caller_ip
objek access
-nya tidak berisi alamat IP dalam rentang CIDR IPv4 192.0.2.0/24
:
state="ACTIVE" AND NOT mute="MUTED" AND NOT inIpRange(access.caller_ip, "192.0.2.0/24")
Jika alamat IP berada dalam atribut yang dapat muncul
beberapa kali dalam temuan, gunakan fungsi contains
dengan
fungsi inIpRange
untuk memeriksa setiap instance atribut
untuk alamat IP. Contoh:
contains(connections, inIpRange(source_ip, "192.0.2.0/24"))
Untuk mengetahui informasi selengkapnya tentang fungsi contains()
, lihat Fungsi contains
.
Menemukan atribut untuk kueri
Security Command Center memilih temuan yang akan ditampilkan dengan mengevaluasi atribut setiap temuan yang disimpan berdasarkan filter atribut yang Anda tentukan dalam kueri.
Anda dapat membuat kueri sebagian besar atribut temuan. Beberapa atribut umum untuk semua temuan. Atribut lainnya mungkin khusus untuk masalah keamanan, kategori temuan, atau layanan deteksi tertentu.
Di menu Tambahkan filter pada panel Editor kueri, opsi yang dapat Anda terapkan ke filter atribut berbeda-beda, bergantung pada jenis atribut yang Anda pilih dan apakah atribut tersebut memiliki sub-bidang atau array nilai.
Di menu Tambahkan filter, klik salah satu atribut tingkat teratas berikut untuk menampilkan sub-atribut dan nilai yang dapat Anda gunakan dalam kueri temuan:
- Temuan
- Resource
- Akses (
access
) - Skor eksposur serangan
- Pencadangan Pemulihan dari Bencana
- Kepatuhan (
compliances[]
) - Koneksi (
connections[]
) - Kontak
- Container
- Database
- Pemindahan data yang tidak sah (
exfiltration
) - File
- Binding IAM (
iamBindings[]
) - Indikator
- Rootkit kernel
- Kubernetes
- MITRE ATT&CK (
mitreAttack
) - Proses (
processes[]
) - Postur keamanan
- Sensitive Data Protection
- Kerentanan