Mengumpulkan log Microsoft IIS
Dokumen ini menjelaskan cara mengumpulkan log Microsoft Internet Information Services (IIS) ke Google Security Operations menggunakan Bindplane. Parser pertama-tama mencoba membersihkan dan menormalisasi data input dengan menghapus karakter yang tidak perlu dan menstandardisasi nama kolom. Kemudian, parser ini menggunakan serangkaian pola grok
untuk mengekstrak kolom yang relevan dari berbagai format log Microsoft IIS dan memetakannya ke model data terpadu (UDM).
Sebelum memulai
- Pastikan Anda memiliki instance Google SecOps.
- Pastikan Anda memiliki Windows 2016 atau yang lebih baru.
- Jika berjalan di belakang proxy, pastikan port firewall terbuka.
Mendapatkan file autentikasi penyerapan Google SecOps
- Login ke konsol Google SecOps.
- Buka Setelan SIEM > Agen Pengumpulan.
- Download File Autentikasi Penyerapan. Simpan file dengan aman di sistem tempat BindPlane akan diinstal.
Mendapatkan ID pelanggan Google SecOps
- Login ke konsol Google SecOps.
- Buka Setelan SIEM > Profil.
- Salin dan simpan ID Pelanggan dari bagian Detail Organisasi.
Menginstal agen BindPlane di Windows
- Buka Command Prompt atau PowerShell sebagai administrator.
Jalankan perintah berikut:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
Referensi penginstalan tambahan
- Untuk opsi penginstalan tambahan, lihat panduan penginstalan ini.
Mengonfigurasi agen BindPlane untuk menyerap Syslog dan mengirimkannya ke Google SecOps
- Sebelum mengonfigurasi file YAML, hentikan
observIQ Distro for Open Telemetry Collector
Service di Panel Layanan. Akses file konfigurasi:
- Cari file
config.yaml
. Biasanya, file ini berada di direktori/etc/bindplane-agent/
di Linux atau di direktori penginstalan di Windows. - Buka file menggunakan editor teks (misalnya,
nano
,vi
, atau Notepad).
- Cari file
Edit file
config.yaml
sebagai berikut:receivers: iis: collection_interval: 60s processors: # Resourcedetection is used to add a unique (host.name) to the metric resource(s), allowing users to filter between multiple agent systems. resourcedetection: detectors: ["system"] system: hostname_sources: ["os"] normalizesums: batch: exporters: chronicle/powershell: endpoint: malachiteingestion-pa.googleapis.com # Adjust the path to the credentials file you downloaded in Step 1 creds: '/path/to/ingestion-authentication-file.json' log_type: 'IIS' override_log_type: false raw_log_field: body customer_id: '<customer_id>' service: pipelines: logs/winpowershell: receivers: - iis processors: - resourcedetection - normalizesums - batch exporters: [chronicle/iis]
Ganti
<customer_id>
dengan ID pelanggan yang sebenarnya.Perbarui
/path/to/ingestion-authentication-file.json
ke jalur tempat file autentikasi disimpan di bagian Dapatkan file autentikasi penyerapan Google SecOps.Setelah menyimpan file
config.yaml
, mulai LayananobservIQ Distro for Open Telemetry Collector
.
Mulai ulang agen Bindplane untuk menerapkan perubahan
Untuk memulai ulang agen Bindplane di Windows, Anda dapat menggunakan konsol Services atau memasukkan perintah berikut:
net stop BindPlaneAgent && net start BindPlaneAgent
Tabel Pemetaan UDM
Kolom log | Pemetaan UDM | Logika |
---|---|---|
@timestamp | metadata.event_timestamp | Stempel waktu peristiwa seperti yang dicatat dalam log mentah. |
@version | metadata.product_version | Versi server IIS. |
AgentDevice | additional.fields.AgentDevice.value.string_value | Perangkat yang menghasilkan log. |
AgentLogFile | additional.fields.AgentLogFile.value.string_value | Nama file log. |
ASP.NET_SessionId | network.session_id | ID sesi pengguna. |
c-ip | principal.ip | Alamat IP klien. |
Saluran | security_result.about.resource.attribute.labels.Channel.value | Saluran tempat peristiwa dicatat dalam log. |
ChannelID | security_result.about.resource.attribute.labels.ChannelID.value | ID channel tempat peristiwa dicatat dalam log. |
Komputer | target.hostname | Nama host mesin target. |
cs-bytes | network.received_bytes | Jumlah byte yang diterima dari klien. |
cs-host | principal.hostname, principal.asset.hostname | Nama host klien. |
cs-method | network.http.method | Metode HTTP yang digunakan oleh klien. |
cs-uri-query | target.url | String kueri URL yang diminta oleh klien. |
cs-uri-stem | target.url | Jalur URL yang diminta oleh klien. |
cs-username | principal.user.user_display_name | Nama pengguna klien. |
cs-version | network.tls.version_protocol | Versi HTTP yang digunakan oleh klien. |
cs(Cookie) | Digunakan untuk mengekstrak informasi cookie. | |
cs(Referer) | network.http.referral_url | URL yang mengarahkan klien ke halaman saat ini. |
cs(User-Agent) | network.http.user_agent | Agen pengguna klien. |
csbyte | network.received_bytes | Jumlah byte yang diterima dari klien. |
cshost | principal.hostname, principal.asset.hostname | Nama host klien. |
csip | principal.ip, principal.asset.ip | Alamat IP klien. |
csmethod | network.http.method | Metode HTTP yang digunakan oleh klien. |
csreferer | network.http.referral_url | URL yang mengarahkan klien ke halaman saat ini. |
csuseragent | network.http.user_agent | Agen pengguna klien. |
csusername | principal.user.user_display_name | Nama pengguna klien. |
csversion | network.tls.version_protocol | Versi HTTP yang digunakan oleh klien. |
tanggal | Digunakan untuk membuat stempel waktu peristiwa jika stempel waktu log mentah tidak valid. | |
deskripsi | security_result.description | Deskripsi acara. |
devicename | target.hostname | Nama host mesin target. |
dst_ip | target.ip, target.asset.ip | Alamat IP mesin target. |
dst_port | target.port | Nomor port mesin target. |
durasi | Durasi permintaan dalam milidetik. | |
EventEnqueuedUtcTime | additional.fields.EventEnqueuedUtcTime.value.string_value | Waktu saat peristiwa dimasukkan dalam antrean di UTC. |
EventID | metadata.product_log_id | ID acara. |
EventProcessedUtcTime | additional.fields.EventProcessedUtcTime.value.string_value | Waktu saat peristiwa diproses dalam UTC. |
EventTime | metadata.event_timestamp | Stempel waktu acara. |
EventType | metadata.product_event_type | Jenis peristiwa. |
file_path | target.file.full_path | Jalur lengkap file yang terlibat dalam acara. |
FilterId | security_result.about.resource.attribute.labels.FilterId.value | ID filter. |
FilterKey | security_result.about.resource.attribute.labels.FilterKey.value | Kunci filter. |
FilterName | security_result.about.resource.attribute.labels.FilterName.value | Nama filter. |
FilterType | security_result.about.resource.attribute.labels.FilterType.value | Jenis filter. |
host | target.hostname | Nama host mesin target. |
host.architecture | principal.asset.hardware.cpu_platform | Arsitektur mesin host. |
host.geo.name | additional.fields.geo_name.value.string_value | Lokasi geografis mesin host. |
host.hostname | target.hostname, target.asset.hostname | Nama host mesin host. |
host.id | observer.asset_id | ID mesin host. |
host.ip | principal.ip, principal.asset.ip | Alamat IP mesin host. |
host.mac | principal.mac | Alamat MAC mesin host. |
host.os.build | additional.fields.os_build.value.string_value | Nomor build sistem operasi di mesin host. |
host.os.kernel | principal.platform_patch_level | Versi kernel sistem operasi di mesin host. |
host.os.name | additional.fields.os_name.value.string_value | Nama sistem operasi di mesin host. |
host.os.platform | principal.platform | Platform sistem operasi di mesin host. |
host.os.version | principal.platform_version | Versi sistem operasi di mesin host. |
http_method | network.http.method | Metode HTTP yang digunakan oleh klien. |
http_response | network.http.response_code | Kode respons HTTP. |
http_status_code | network.http.response_code | Kode status HTTP respons. |
http_substatus | additional.fields.sc_substatus.value.string_value | Kode substatus HTTP respons. |
instance | additional.fields.instance.value.string_value | ID instance tugas. |
intermediary_devicename | intermediary.hostname, intermediary.asset.hostname | Nama host perangkat perantara. |
json_message | Pesan log mentah dalam format JSON. | |
kv_fields | Digunakan untuk mengekstrak pasangan nilai kunci dari pesan log mentah. | |
LayerKey | security_result.about.resource.attribute.labels.LayerKey.value | Kunci lapisan. |
LayerName | security_result.about.resource.attribute.labels.LayerName.value | Nama lapisan. |
LayerId | security_result.about.resource.attribute.labels.LayerId.value | ID lapisan. |
log.file.path | target.file.full_path | Jalur lengkap file log. |
log.offset | metadata.product_log_id | Offset peristiwa dalam file log. |
logstash.collect.host | observer.hostname | Nama host perangkat yang mengumpulkan log. |
logstash.process.host | intermediary.hostname | Nama host perangkat yang memproses log. |
logstash_json_message | Pesan log mentah dalam format JSON. | |
pesan | security_result.description | Pesan log mentah. |
pelayanan | additional.fields.ministry.value.string_value | Kementerian yang terkait dengan acara. |
nama | Nama entity. | |
NewValue | additional.fields.NewValue.value.string_value | Nilai baru setelan konfigurasi. |
OldValue | additional.fields.OldValue.value.string_value | Nilai lama setelan konfigurasi. |
port | principal.port | Nomor port klien. |
priority_code | Kode prioritas pesan syslog. | |
ProcessID | principal.process.pid | ID proses dari proses yang menghasilkan peristiwa. |
ProviderGuid | security_result.about.resource.attribute.labels.ProviderGuid.value | GUID penyedia. |
ProviderKey | security_result.about.resource.attribute.labels.ProviderKey.value | Kunci penyedia. |
ProviderName | security_result.about.resource.attribute.labels.ProviderName.value | Nama penyedia. |
referrer_url | network.http.referral_url | URL yang mengarahkan klien ke halaman saat ini. |
request_url | target.url | URL yang diminta oleh klien. |
s-computername | target.hostname | Nama host mesin target. |
s-ip | target.ip, target.asset.ip | Alamat IP mesin target. |
s-port | target.port | Nomor port mesin target. |
s-sitename | additional.fields.sitename.value.string_value | Nama situs. |
sc-bytes | network.sent_bytes | Jumlah byte yang dikirim ke klien. |
sc-status | network.http.response_code | Kode status HTTP respons. |
sc-substatus | additional.fields.sc_substatus.value.string_value | Kode substatus HTTP respons. |
sc-win32-status | Kode status Windows dari respons. | |
scbyte | network.sent_bytes | Jumlah byte yang dikirim ke klien. |
scstatus | network.http.response_code | Kode status HTTP respons. |
tingkat keseriusan, | security_result.severity | Tingkat keparahan peristiwa. |
service.type | additional.fields.service_type.value.string_value | Jenis layanan. |
sIP | principal.ip, principal.asset.ip | Alamat IP klien. |
sPort | principal.port | Nomor port klien. |
sSiteName | additional.fields.sitename.value.string_value | Nama situs. |
src_ip | principal.ip, principal.asset.ip, observer.ip | Alamat IP klien. |
src_port | principal.port | Nomor port klien. |
sysdate | Tanggal dan waktu pesan syslog. | |
syslog_facility | security_result.severity_details | Fasilitas pesan syslog. |
syslog_pri | Prioritas pesan syslog. | |
syslog_severity | security_result.severity_details | Tingkat keparahan pesan syslog. |
syslog_severity_code | Kode tingkat keparahan pesan syslog. | |
tags | security_result.rule_name | Tag yang terkait dengan peristiwa. |
task | additional.fields.task.value.string_value | Nama tugas. |
waktu | Digunakan untuk membuat stempel waktu peristiwa jika stempel waktu log mentah tidak valid. | |
waktu yang diperlukan | Durasi permintaan dalam milidetik. | |
uri_query | target.url | String kueri URL yang diminta oleh klien. |
user_agent | network.http.user_agent | Agen pengguna klien. |
NamaPengguna | target.user.userid | Nama pengguna pengguna. |
UserSid | target.user.windows_sid | SID Windows pengguna. |
Bobot | security_result.about.resource.attribute.labels.Weight.value | Bobot filter. |
win32_status | Kode status Windows dari respons. | |
xforwardedfor | Header X-Forwarded-For, yang berisi daftar alamat IP yang dipisahkan koma. | |
metadata.log_type | IIS |
|
network.direction | INBOUND |
|
metadata.vendor_name | Microsoft |
|
metadata.product_name | Internet Information Server |
|
metadata.event_type | NETWORK_HTTP , USER_UNCATEGORIZED , GENERIC_EVENT , STATUS_UPDATE , USER_LOGOUT , USER_LOGIN |
|
extensions.auth.type | MACHINE |
Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.