Referensi skema normalisasi Sesi Web Model Informasi Keamanan Tingkat Lanjut (ASIM)

Skema normalisasi Sesi Web digunakan untuk menggambarkan aktivitas jaringan IP. Misalnya, aktivitas jaringan IP dilaporkan oleh server web, web proksi, dan gateway keamanan web.

Untuk informasi selengkapnya tentang normalisasi di Microsoft Sentinel, lihat Normalisasi dan Model Informasi Keamanan Tingkat Lanjut (ASIM).

Gambaran umum Skema

Skema normalisasi Sesi Web mewakili sesi jaringan HTTP mana pun, dan secara khusus akan sesuai untuk memberikan dukungan pada jenis sumber umum, termasuk:

  • Server web
  • Proksi web
  • Gateway keamanan web

Skema Sesi Web ASIM mewakili aktivitas protokol HTTP dan HTTPS. Karena skema ini mewakili aktivitas protokol, skema ini diatur oleh RFC dan daftar parameter yang ditetapkan secara resmi, yang dirujuk dalam artikel ini bila sesuai.

Skema Sesi Web tidak mewakili peristiwa audit dari perangkat sumber. Misalnya, peristiwa yang mengubah kebijakan Gateway Keamanan Web tidak dapat diwakili oleh skema Sesi Web.

Karena sesi HTTP adalah sesi lapisan aplikasi yang menggunakan TCP/IP sebagai sesi lapisan jaringan yang mendasarinya, skema Sesi Web adalah satu set super dari skema Sesi Jaringan ASIM.

Bidang terpenting dalam skema Sesi Web adalah:

Peristiwa Sesi Web juga dapat mencakup informasi User dan Process untuk pengguna dan proses memulai permintaan.

Parser

Untuk informasi selengkapnya tentang parser ASIM, lihat gambaran umum parser ASIM.

Menyatukan pengurai

Untuk menggunakan pengurai yang menyatukan semua pengurai di luar kotak ASIM, dan memastikan bahwa analisis Anda berjalan di semua sumber yang dikonfigurasi, gunakan _Im_WebSession pengurai.

Pengurai di luar kotak, khusus-sumber

Untuk daftar parser Sesi Web yang disediakan Microsoft Azure Sentinel di luar kotak, lihat daftar parser ASIM

Tambahkan parser normalisasi Anda sendiri

Saat menerapkan pengurai kustom untuk model informasi Sesi Web, beri nama fungsi KQL Anda menggunakan sintaks berikut:

  • vimWebSession<vendor><Product> untuk pengurai berparameter
  • ASimWebSession<vendor><Product> untuk pengurai reguler

Memfilter parameter parser

Parser im dan vim* mendukung pemfilteran parameter. Meskipun bersifat opsional, parser ini dapat meningkatkan performa kueri Anda.

Parameter pemfilteran berikut ini tersedia:

Name Type Deskripsi
starttime tanggalwaktu Filter hanya sesi Web yang dimulai pada atau setelah waktu ini. Parameter ini memfilter pada TimeGenerated bidang , yang merupakan penunjuk standar untuk waktu peristiwa, terlepas dari pemetaan khusus pengurai bidang EventStartTime dan EventEndTime.
endtime tanggalwaktu Filter hanya sesi Web yang mulai dijalankan pada atau setelah waktu ini. Parameter ini memfilter pada TimeGenerated bidang , yang merupakan penunjuk standar untuk waktu peristiwa, terlepas dari pemetaan khusus pengurai bidang EventStartTime dan EventEndTime.
srcipaddr_has_any_prefix dynamic Filter hanya sesi Web yang awalan bidang alamat IP sumbernya berada di salah satu nilai yang tercantum. Daftar nilai dapat mencakup alamat IP dan prefiks alamat IP. Prefiks harus diakhiri dengan ., misalnya: 10.0.. Panjang daftar dibatasi hingga 10.000 item.
ipaddr_has_any_prefix dynamic Filter hanya sesi jaringan yang prefiks bidang alamat IP tujuan atau bidang alamat IP sumber berada di salah satu nilai yang tercantum. Prefiks harus diakhiri dengan ., misalnya: 10.0.. Panjang daftar dibatasi hingga 10.000 item.

Bidang ASimMatchingIpAddr diatur dengan salah satu nilai SrcIpAddr, DstIpAddr, atau Both untuk mencerminkan bidang atau bidang yang cocok.
url_has_any dynamic Filter hanya sesi Web yang bidang URLnya memiliki salah satu nilai yang tercantum. Pengurai dapat mengabaikan skema URL yang diteruskan sebagai parameter, jika sumber tidak melaporkannya. Jika ditentukan, dan sesinya bukan sesi web, tidak ada hasil yang akan dikembalikan. Panjang daftar dibatasi hingga 10.000 item.
httpuseragent_has_any dynamic Filter hanya sesi web yang bidang agen penggunanya memiliki salah satu nilai yang tercantum. Jika ditentukan, dan sesinya bukan sesi web, tidak ada hasil yang akan dikembalikan. Panjang daftar dibatasi hingga 10.000 item.
eventresultdetails_in dynamic Filter hanya sesi web yang kode status HTTPnya disimpan di bidang EventResultDetails, adalah salah satu nilai yang tercantum.
hasil peristiwa string Filter hanya sesi jaringan dengan nilai EventResult tertentu.

Beberapa parameter dapat menerima kedua daftar nilai jenis dynamic atau nilai string tunggal. Untuk meneruskan daftar harfiah ke parameter yang memerlukan nilai dinamis, secara eksplisit gunakan harfiah dinamis. Sebagai contoh: dynamic(['192.168.','10.'])

Misalnya, untuk memfilter hanya sesi Web untuk daftar nama domain tertentu, gunakan:

let torProxies=dynamic(["tor2web.org", "tor2web.com", "torlink.co"]);
_Im_WebSession (url_has_any = torProxies)

Detail skema

Model informasi Sesi Web diselaraskan dengan skema entitas Jaringan OSSEM dan skema entitas HTTP OSSEM.

Agar sesuai dengan praktik terbaik industri, skema Sesi Web menggunakan deskriptor Src dan Dst untuk mengidentifikasi perangkat sumber dan tujuan sesi jaringan, tanpa menyertakan token Dvc dalam nama bidang.

Jadi, misalnya, hostname perangkat sumber dan alamat IP masing-masing diberi nama SrcHostname dan SrcIpAddr, dan bukan SrcDvcHostname dan SrcDvcIpAddr. Awalan Dvc hanya digunakan untuk perangkat pelaporan atau perantara, sebagaimana berlaku.

Bidang yang menjelaskan pengguna dan aplikasi yang terkait dengan perangkat sumber dan tujuan juga menggunakan deskriptor Src dan Dst.

Skema ASIM lainnya biasanya menggunakan Target, bukan Dst.

Bidang ASIM umum

Penting

Bidang yang umum untuk semua skema dijelaskan secara rinci dalam artikel Bidang Umum ASIM.

Bidang umum dengan pedoman khusus

Daftar berikut menyebutkan bidang yang memiliki pedoman khusus untuk acara Sesi Web:

Ladang Class Type Deskripsi
Jenis Peristiwa Mandatory Disebutkan Menggambarkan operasi yang dilaporkan oleh rekaman. Nilai yang diizinkan adalah:
- HTTPsession: Menunjukkan sesi jaringan yang digunakan untuk HTTP atau HTTPS, biasanya dilaporkan oleh perangkat perantara, seperti proksi atau gateway keamanan Web.
- WebServerSession: Menunjukkan permintaan HTTP yang dilaporkan oleh server web. Peristiwa seperti itu biasanya memiliki lebih sedikit informasi terkait jaringan. URL yang dilaporkan tidak boleh menyertakan skema dan nama server, tetapi hanya jalur dan parameter bagian dari URL.
- ApiRequest: Menunjukkan permintaan HTTP yang dilaporkan terkait dengan panggilan API, biasanya dilaporkan oleh server aplikasi. Peristiwa seperti itu biasanya memiliki lebih sedikit informasi terkait jaringan. Ketika dilaporkan oleh server aplikasi, URL yang dilaporkan tidak boleh menyertakan skema dan nama server, tetapi hanya jalur dan parameter bagian dari URL.
EventResult Mandatory Disebutkan Menjelaskan hasil peristiwa, yang dinormalisasi ke salah satu nilai berikut:
- Success
- Partial
- Failure
- NA (tidak berlaku)

Untuk sesi HTTP, Success didefinisikan sebagai kode status yang lebih rendah dari 400, dan Failure didefinisikan sebagai kode status yang lebih tinggi dari 400. Untuk memperoleh daftar kode status HTTP, lihat W3 Org.

Sumber hanya dapat memberikan nilai untuk bidang EventResultDetails, yang harus dianalisis untuk mendapatkan nilai EventResult.
EventResultDetails Recommended Disebutkan Kode status HTTP seperti yang ditentukan oleh The World Wide Web Consortium

Catatan: Nilai dapat diberikan dalam rekaman sumber menggunakan istilah yang berbeda, yang harus dinormalisasi ke nilai ini. Nilai asli harus disimpan di bidang EventOriginalResultDetails.
EventSchema Mandatory Disebutkan Nama skema yang didokumentasikan di sini adalah WebSession.
EventSchemaVersion Mandatory SchemaVersion (String) Versi dari skema ini. Versi skema yang didokumentasikan di sini adalah 0.2.7
Bidang Dvc Untuk peristiwa Sesi Web, bidang perangkat mengacu pada sistem yang melaporkan peristiwa Sesi Web. Ini biasanya merupakan perangkat perantara untuk HTTPSession peristiwa, dan web tujuan atau server aplikasi untuk WebServerSession dan ApiRequest peristiwa.

Semua bidang umum

Bidang yang muncul pada tabel di bawah ini adalah umum untuk semua skema ASIM. Setiap pedoman yang ditentukan di atas mengambil alih pedoman umum untuk bidang ini. Misalnya, sebuah bidang mungkin opsional secara umum, tetapi wajib untuk skema tertentu. Untuk detail lebih lanjut tentang setiap bidang, lihat artikel Bidang Umum ASIM.

Kelas Fields
Mandatory - Jumlah Peristiwa
- Waktu MulaiPeristiwa
- Waktu Akhir Peristiwa
- Jenis Peristiwa
- Hasil Peristiwa
- Produk Acara
- Vendor Peristiwa
- Skema Peristiwa
- EventSchemaVersion
- Dvc
Recommended - EventResultDetails
- Tingkat Keparahan Peristiwa
- Acara Uid
- DvcIpAddr
- Nama Host Dvc
- Domain Dvc
- DvcDomainType
- DvcFQDN
- DvcId
- DvcIdType
- DvcAction
Optional - Pesan Peristiwa
- Subtipe Peristiwa
- PeristiwaAsliUid
- EventOriginalType
- PeristiwaAsliSubtipe
- EventOriginalResultDetails
- Tingkat Keparahan PeristiwaAsli
- EventProductVersion
- EventReportUrl
- Pemilik Acara
- Zona Dvc
- DvcMacAddr
- DvcOs
- DvcOsVersion
- DvcOriginalAction
- Antarmuka Dvc
- Bidang Tambahan
- DvcDescription
- DvcScopeId
- Ruang lingkup Dvc

Bidang sesi jaringan

Sesi HTTP adalah sesi lapisan aplikasi yang memanfaatkan TCP/IP sebagai sesi lapisan jaringan yang mendasarinya. Skema Sesi Web adalah set super skema Sesi Jaringan ASIM dan semua Bidang Skema Jaringan juga disertakan dalam skema Sesi Web.

Bidang skema Sesi Jaringan ASIM berikut memiliki pedoman khusus saat digunakan untuk peristiwa Sesi Web:

  • Pengguna alias harus merujuk ke SrcUsername dan bukan ke DstUsername.
  • Bidang EventOriginalResultDetails dapat menahan hasil apa pun yang dilaporkan oleh sumber selain kode status HTTP yang disimpan di EventResultDetails.
  • Untuk Sesi Web, bidang tujuan utamanya adalah Bidang Url. DstDomain lebih bersifat opsional daripada direkomendasikan. Secara khusus, jika tidak tersedia, tidak perlu mengekstraknya dari URL di pengurai.
  • Bidang NetworkRuleName dan NetworkRuleNumber diganti namanya RuleName dan RuleNumber masing-masing.

Peristiwa Sesi Web biasanya akan dilaporkan oleh perangkat perantara yang mengakhiri koneksi HTTP dari klien dan memulai koneksi baru serta bertindak sebagai proksi, dengan server. Untuk mewakili perangkat perantara, gunakan bidang perangkat perantara skemaSesi Jaringan ASIM

Bidang sesi HTTP

Berikut ini adalah bidang tambahan yang khusus untuk sesi web:

Ladang Class Type Deskripsi
URL Mandatory URL (String) URL permintaan HTTP, termasuk parameter. Untuk HTTPSession peristiwa, URL dapat menyertakan skema dan harus menyertakan nama server. Untuk WebServerSession dan untuk ApiRequest URL biasanya tidak akan menyertakan skema dan server, yang masing-masing dapat ditemukan di NetworkApplicationProtocol bidang dan DstFQDN .

Contoh: https://contoso.com/fo/?k=v&amp;q=u#f
UrlCategory Optional string Pengelompokan URL yang ditentukan atau bagian domain dari URL. Kategori ini biasanya disediakan oleh gateway keamanan web dan didasarkan pada konten situs yang ditunjuk oleh URL.

Contoh: mesin cari, dewasa, berita, iklan, dan domain terparkir.
UrlOriginal Optional URL (String) Nilai asli URL, ketika URL diubah oleh perangkat pelaporan dan kedua nilai tersebut disediakan.
HttpVersion Optional string Versi Permintaan HTTP.

Contoh: 2.0
HttpRequestMethod Recommended Disebutkan Metode HTTP. Nilainya seperti yang didefinisikan dalam RFC 7231 dan RFC 5789, dan termasuk GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, dan PATCH.

Contoh: GET
HttpStatusCode Alias Kode Status HTTP. Alias untuk EventResultDetails.
Tipe Konten Http Optional string Header jenis konten Respons HTTP.

Catatan: Bidang HttpContentType dapat menyertakan format konten serta parameter tambahan, seperti pengodean yang digunakan untuk mendapatkan format sebenarnya.

Contoh: text/html; charset=ISO-8859-4
HttpContentFormat Optional string Bagian format konten HttpContentType

Contoh: text/html
HttpReferrer Optional string Header Pengarah HTTP.

Catatan:ASIM, sinkron dengan OSSEM, menggunakan ejaan yang benar untuk referen, dan bukan ejaan header HTTP asli.

Contoh: https://developer.mozilla.org/docs
Agen Pengguna Http Optional string Header agen pengguna HTTP.

Contoh:
Mozilla/5.0(Windows NT 10.0; WOW64)
AppleWebKit/537.36 (KHTML, seperti Gecko)
Chrome/83.0.4103.97 Safari/537.36
UserAgent Alias Alias untuk HttpUserAgent
HttpRequestXff Optional Alamat IP Header HTTP X-Forwarded-For.

Contoh: 120.12.41.1
HttpRequestTime Optional Integer Jumlah waktu, dalam milidetik, yang diperlukan untuk mengirim permintaan ke server, jika berlaku.

Contoh: 700
HttpResponseTime Optional Integer Jumlah waktu, dalam milidetik, yang diperlukan untuk menerima respons di server, jika berlaku.

Contoh: 800
HttpHost Optional string Server virtual web yang ditargetkan oleh permintaan HTTP. Nilai ini biasanya didasarkan pada header Host HTTP.
FileName Optional string Untuk unggahan HTTP, nama file yang diunggah.
FileMD5 Optional MD5 Untuk unggahan HTTP, hash MD5 dari file yang diunggah.

Contoh: 75a599802f1fa166cdadb360960b1dd0
FileSHA1 Optional SHA1 Untuk unggahan HTTP, hash SHA1 dari file yang diunggah.

Contoh:
d55c5a4df19b46db8c54
c801c4665d3338acdab0
FileSHA256 Optional SHA256 Untuk unggahan HTTP, hash SHA256 dari file yang diunggah.

Contoh:
e81bb824c4a09a811af17deae22f22dd
2e1ec8cbb00b22629d2899f7c68da274
FileSHA512 Optional SHA512 Untuk unggahan HTTP, hash SHA512 dari file yang diunggah.
Hash Alias Alias ke bidang Hash yang tersedia.
HashType Bersyarat Disebutkan Jenis hash di bidang Hash. Nilai yang mungkin antara lain MD5, SHA1, SHA256, dan SHA512.
Ukuran File Optional Long Untuk pengunggahan HTTP, ukuran file yang diunggah dalam byte.
FileContentType Optional string Untuk upload HTTP, jenis konten file yang diunggah.
Cookie Http Optional string Konten header cookie HTTP yang dikirim dari klien ke server, yang berisi pasangan nama-nilai data sesi.

Contoh: session_id=abc123; user_pref=dark_mode
httpIsProxied Optional Boolean Menunjukkan apakah permintaan HTTP dikirim melalui server proxy.

Contoh: true
HttpRequestBodyBytes Optional Long Ukuran isi permintaan HTTP dalam byte, tidak termasuk header.

Contoh: 1024
Kontrol HttpRequestCache Optional string Konten header permintaan HTTP Cache-Control, menentukan arahan penembolokan dari klien.

Contoh: no-cache
HttpRequestHeaderCount Optional Integer Jumlah header HTTP yang disertakan dalam permintaan.

Contoh: 12
HttpResponseBodyBytes Optional Long Ukuran isi respons HTTP dalam byte, tidak termasuk header.

Contoh: 8192
Kontrol CacheRespons Http Optional string Konten header respons HTTP Cache-Control, menentukan arahan pencolokan dari server.

Contoh: max-age=3600, public
HttpResponseKedaluwarsa Optional string Konten header respons HTTP Expires, yang menunjukkan kapan konten respons kedaluwarsa.

Contoh: Thu, 01 Dec 2024 16:00:00 GMT
HttpResponseHeaderCount Optional Integer Jumlah header HTTP yang disertakan dalam respons.

Contoh: 15

Bidang lainnya

Jika peristiwa dilaporkan oleh salah satu titik akhir sesi web, peristiwa tersebut dapat mencakup informasi tentang proses yang memulai atau mengakhiri sesi. Dalam kasus seperti itu, Skema Peristiwa Proses ASIM untuk menormalkan informasi ini.

Pembaruan skema

Skema Sesi Web bergantung pada skema Sesi Jaringan. Oleh karena itu, pembaruan skema Sesi Jaringan juga berlaku untuk skema Sesi Web.

Berikut ini adalah perubahan dalam skema versi 0.2.5:

  • Menambahkan bidang HttpHost.

Berikut ini adalah perubahan dalam skema versi 0.2.6:

  • Jenis FileSize diubah dari Bilangan Bulat ke Panjang.

Berikut ini adalah perubahan pada versi 0.2.7 dari skema:

  • Menambahkan bidang HttpCookie, , HttpIsProxied, HttpRequestBodyBytesHttpRequestCacheControl, , HttpRequestHeaderCount, HttpResponseBodyBytes, HttpResponseCacheControl, HttpResponseExpires, dan HttpResponseHeaderCount.