Referensi skema normalisasi DNS Advanced Security Information Model (ASIM) (Pratinjau umum)

Model informasi DNS digunakan untuk menjelaskan peristiwa yang dilaporkan oleh server DNS atau sistem keamanan DNS, dan digunakan oleh Microsoft Azure Sentinel untuk mengaktifkan analitik agnostik-sumber.

Untuk informasi selengkapnya, lihat Normalisasi dan Model Informasi Keamanan Tingkat Lanjut (ASIM).

Penting

Skema normalisasi DNS saat ini dalam PRATINJAU. Fitur ini disediakan tanpa perjanjian tingkat layanan, dan tidak disarankan untuk beban kerja produksi.

Ketentuan Tambahan Pratinjau Azure mencakup persyaratan hukum tambahan yang berlaku untuk fitur Azure yang masih dalam versi beta, pratinjau, atau belum dirilis ke ketersediaan umum.

Gambaran umum Skema

Skema DNS ASIM mewakili aktivitas protokol DNS. Server DNS dan perangkat yang mengirim permintaan DNS ke aktivitas DNS log server DNS. Aktivitas protokol DNS mencakup kueri DNS, pembaruan server DNS, dan transfer data massal DNS. 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 DNS tidak mewakili peristiwa audit server DNS.

Aktivitas paling penting yang dilaporkan oleh server DNS adalah kueri DNS, di mana bidang EventType diatur ke Query.

Bidang yang paling penting dalam peristiwa DNS adalah:

  • DnsQuery, yang melaporkan nama domain yang diterbitkan oleh kueri.

  • SrcIpAddr (alias ipAddr), yang mewakili alamat IP di mana permintaan dihasilkan. Server DNS biasanya menyediakan bidang SrcIpAddr, tetapi klien DNS terkadang tidak menyediakan bidang ini dan hanya menyediakan bidang SrcHostname.

  • EventResultDetails, yang melaporkan apakah permintaan itu berhasil dan jika tidak, mengapa.

  • Bila tersedia, DnsResponseName, yang menyimpan jawaban yang disediakan oleh server untuk kueri. ASIM tidak memerlukan penguraian respons, dan formatnya bervariasi antar sumber.

    Untuk menggunakan bidang ini dalam konten agnostik-sumber, cari konten menggunakan operator has atau contains.

Peristiwa DNS yang dikumpulkan pada perangkat klien juga dapat mencakup informasi Pengguna dan Proses.

Panduan untuk mengumpulkan acara DNS

DNS adalah protokol unik karena dapat melintasi sejumlah besar komputer. Selain itu, karena DNS menggunakan UDP, permintaan dan tanggapan dipisahkan dan tidak terkait langsung satu sama lain.

Gambar berikut menunjukkan alur permintaan DNS yang disederhanakan, termasuk empat segmen. Permintaan dunia nyata bisa lebih kompleks, dengan lebih banyak segmen yang terlibat.

Simplified DNS request flow.

Karena segmen permintaan dan respons tidak terhubung langsung satu sama lain dalam aliran permintaan DNS, pengelogan penuh dapat mengakibatkan duplikasi yang signifikan.

Segmen yang paling berharga untuk log adalah respons terhadap klien. Segmen yang paling berharga untuk dicatat adalah respons terhadap klien, yang menyediakan kueri nama domain, hasil pencarian, dan alamat IP klien. Sementara banyak sistem DNS hanya mencatat segmen ini, ada nilai dalam pengelogan bagian lain. Misalnya, serangan keracunan cache DNS sering mengambil keuntungan dari tanggapan palsu dari server hulu.

Jika sumber data Anda mendukung pengelogan DNS penuh dan Anda telah memilih untuk mencatat beberapa segmen, Anda harus menyesuaikan kueri untuk mencegah duplikasi data di Microsoft Azure Sentinel.

Misalnya, Anda dapat mengubah kueri Anda dengan normalisasi berikut:

_Im_Dns | where SrcIpAddr != "127.0.0.1" and EventSubType == "response"

Parser

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

Pengurai di luar kotak

Untuk menggunakan pengurai yang menyatukan semua pengurai di luar kotak ASIM, dan memastikan bahwa analisis Anda berjalan di semua sumber yang dikonfigurasi, gunakan pengurai pemersatu _Im_Dns sebagai nama tabel dalam kueri Anda.

Untuk daftar pengurai DNS yang disediakan Microsoft Azure Sentinel di luar kotak, lihat daftar pengurai ASIM.

Tambahkan parser normalisasi Anda sendiri

Saat menerapkan pengurai kustom untuk model informasi Dns, beri nama fungsi KQL Anda menggunakan format vimDns<vendor><Product>. Lihat artikel Mengelola pengurai ASIM untuk mempelajari cara menambahkan pengurai kustom Anda ke pengurai pemersatu DNS.

Memfilter parameter parser

Pengurai DNS mendukung parameter pemfilteran. Meskipun parameter ini bersifat opsional, parameter ini dapat meningkatkan performa kueri Anda.

Parameter pemfilteran berikut ini tersedia:

Nama Tipe Deskripsi
starttime datetime Filter hanya kueri DNS yang berjalan pada atau setelah waktu ini.
endtime datetime Filter hanya kueri DNS yang selesai dijalankan pada atau sebelum waktu ini.
srcipaddr string Filter hanya kueri DNS dari alamat IP sumber ini.
domain_has_any dynamic/string Filter hanya kueri DNS di mana domain (atau query) memiliki salah satu nama domain yang tercantum, termasuk sebagai bagian dari domain peristiwa. Panjang daftar dibatasi hingga 10.000 item.
responsecodename string Filter hanya kueri DNS yang nama kode responsnya sesuai dengan nilai yang disediakan.
Misalnya: NXDOMAIN
response_has_ipv4 string Filter hanya kueri DNS di mana bidang respons dimulai dengan alamat IP yang disediakan atau prefiks alamat IP. Gunakan parameter ini saat Anda ingin memfilter pada satu alamat IP atau prefiks.

Hasil tidak dikembalikan untuk sumber yang tidak memberikan respons.
response_has_any_prefix dinamis Filter hanya kueri DNS di mana bidang respons dimulai dengan salah satu alamat IP yang disediakan atau prefiks alamat IP. Prefiks harus diakhiri dengan ., misalnya: 10.0..

Gunakan parameter ini saat Anda ingin memfilter pada daftar alamat IP atau prefiks.

Hasil tidak dikembalikan untuk sumber yang tidak memberikan respons. Panjang daftar dibatasi hingga 10.000 item.
eventtype string Filter hanya jenis kueri DNS yang ditentukan. Jika tidak ada nilai yang ditentukan, hanya permintaan pencarian yang dikembalikan.

Misalnya, untuk hanya memfilter kueri DNS dari hari terakhir yang gagal menyelesaikan nama domain, gunakan:

_Im_Dns (responsecodename = 'NXDOMAIN', starttime = ago(1d), endtime=now())

Untuk hanya memfilter kueri DNS untuk daftar nama domain tertentu, gunakan:

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

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. Misalnya: dynamic(['192.168.','10.'])

Konten yang dinormalisasi

Untuk daftar lengkap aturan analitik yang menggunakan peristiwa DNS yang dinormalisasi, lihat bagian konten keamanan kueri DNS.

Detail skema

Model informasi DNS diselaraskan dengan skema entitas DNS OSSEM.

Untuk informasi selengkapnya, lihat referensi parameter DNS Internet Assigned Numbers Authority (IANA).

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 DNS:

Bidang Kelas Jenis Keterangan
EventType Wajib Disebutkan Menunjukkan operasi yang dilaporkan oleh catatan.

Untuk catatan DNS, nilai ini akan menjadi kode operasi DNS.

Contoh: Query
EventSubType Opsional Disebutkan Salah satu request atau response.

Untuk sebagian besar sumber, hanya tanggapan yang dicatat, dan oleh karena itu nilainya sering kali tanggapan.
EventResultDetails Wajib Disebutkan Untuk peristiwa DNS, bidang ini menyediakan kode respons DNS.

Catatan:
- IANA tidak menentukan kasus untuk nilai, jadi analitik harus menormalkan kasus.
- Jika sumber hanya menyediakan kode respons numerik dan bukan nama kode respons, pengurai harus menyertakan tabel pencarian untuk memperkaya dengan nilai ini.
- Jika rekaman ini mewakili permintaan dan bukan respons, atur ke NA.

Contoh: NXDOMAIN
EventSchemaVersion Wajib String Versi skema yang didokumentasikan di sini adalah 0.1.7.
EventSchema Wajib String Nama skema yang didokumentasikan di sini adalah Dns.
Bidang Dvc - - Untuk peristiwa DNS, bidang perangkat mengacu pada sistem yang melaporkan peristiwa DNS.

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 selengkapnya tentang setiap bidang, lihat artikel Bidang Umum ASIM.

Kelas Bidang
Wajib - EventCount
- EventStartTime
- EventEndTime
- EventType
- EventResult
- EventProduct
- EventVendor
- EventSchema
- EventSchemaVersion
- Dvc
Disarankan - EventResultDetails
- EventSeverity
- EventUid
- DvcIpAddr
- DvcHostname
- DvcDomain
- DvcDomainType
- DvcFQDN
- DvcId
- DvcIdType
- DvcAction
Opsional - EventMessage
- EventSubType
- EventOriginalUid
- EventOriginalType
- EventOriginalSubType
- EventOriginalResultDetails
- EventOriginalSeverity
- EventProductVersion
- EventReportUrl
- EventOwner
- DvcZone
- DvcMacAddr
- DvcOs
- DvcOsVersion
- DvcOriginalAction
- DvcInterface
- AdditionalFields
- DvcDescription
- DvcScopeId
- DvcScope

Bidang sistem sumber

Bidang Kelas Tipe Deskripsi
Src Alias String Pengenal unik perangkat sumber.

Bidang ini bisa menjadi alias bagi bidang SrcDvcId, SrcHostname, atau SrclpAddr.

Contoh: 192.168.12.1
SrcIpAddr Disarankan Alamat IP Alamat IP klien yang mengirim permintaan DNS. Untuk permintaan DNS rekursif, nilai ini biasanya akan menjadi perangkat pelaporan, dan dalam banyak kasus diatur ke 127.0.0.1.

Contoh: 192.168.12.1
SrcPortNumber Opsional Bilangan bulat Port sumber kueri DNS.

Contoh: 54312
IpAddr Alias Alias ke SrcIpAddr
SrcGeoCountry Opsional Negara Negara yang terkait dengan alamat IP sumber.

Contoh: USA
SrcGeoRegion Opsional Wilayah Wilayah yang terkait dengan alamat IP sumber.

Contoh: Vermont
SrcGeoCity Opsional Kota Kota yang terkait dengan alamat IP sumber.

Contoh: Burlington
SrcGeoLatitude Opsional Garis Lintang Garis lintang koordinat geografis yang terkait dengan alamat IP sumber.

Contoh: 44.475833
SrcGeoLongitude Opsional Garis bujur Garis bujur koordinat geografis yang terkait dengan alamat IP sumber.

Contoh: 73.211944
SrcRiskLevel Opsional Bilangan bulat Tingkat risiko yang terkait dengan sumber. Nilai harus disesuaikan dengan rentang 0 hingga 100, dengan 0 menjadi tidak berisiko dan 100 menjadi risiko tinggi.

Contoh: 90
SrcOriginalRiskLevel Opsional Bilangan bulat Tingkat risiko yang terkait dengan sumbernya, seperti yang dilaporkan oleh perangkat pelaporan.

Contoh: Suspicious
SrcHostname Disarankan String Nama host perangkat sumber, tidak termasuk informasi domain.

Contoh: DESKTOP-1282V4D
Hostname Alias Alias SrcHostname
SrcDomain Disarankan String Domain perangkat sumber.

Contoh: Contoso
SrcDomainType Kondisional Disebutkan Jenis SrcDomain, jika diketahui. Nilai yang mungkin termasuk:
- Windows (misalnya: contoso)
- FQDN (misalnya: microsoft.com)

Diperlukan jika SrcDomain digunakan.
SrcFQDN Opsional String Nama host perangkat sumber, termasuk informasi domain saat tersedia.

Catatan: Bidang ini mendukung format FQDN tradisional dan format domain\hostname Windows. Bidang SrcDomainType mencerminkan format yang digunakan.

Contoh: Contoso\DESKTOP-1282V4D
SrcDvcId Opsional String ID perangkat sumber seperti yang dilaporkan dalam rekaman.

Misalnya: ac7e9755-8eae-4ffc-8a02-50ed7a2216c3
SrcDvcScopeId Opsional String ID cakupan platform cloud milik perangkat. Peta SrcDvcScopeId ke ID langganan di Azure dan ke ID akun di AWS.
SrcDvcScope Opsional String Cakupan platform cloud milik perangkat. SrcDvcScope memetakan ke ID langganan di Azure dan ke ID akun di AWS.
SrcDvcIdType Kondisional Disebutkan Jenis SrcDvcId, jika diketahui. Nilai yang mungkin termasuk:
- AzureResourceId
- MDEid

Jika beberapa ID tersedia, gunakan yang pertama dari daftar di atas, dan simpan yang lain di masing-masing SrcDvcAzureResourceId dan SrcDvcMDEid.

Catatan: Bidang ini diperlukan jika SrcDvcId digunakan.
SrcDeviceType Opsional Disebutkan Jenis perangkat sumber Nilai yang mungkin termasuk:
- Computer
- Mobile Device
- IOT Device
- Other
SrcDescription Opsional String Teks deskriptif yang terkait dengan perangkat. Sebagai contoh: Primary Domain Controller.

Bidang pengguna sumber

Bidang Kelas Tipe Deskripsi
SrcUserId Opsional String Representasi unik, alfanumerik, dan dapat dibaca komputer dari pengguna sumber. Untuk informasi selengkapnya, dan untuk bidang alternatif untuk ID tambahan, lihat Entitas pengguna.

Contoh: S-1-12-1-4141952679-1282074057-627758481-2916039507
SrcUserScope Opsional String Cakupan, seperti penyewa Microsoft Entra, di mana SrcUserId dan SrcUsername ditentukan. atau informasi selengkapnya dan daftar nilai yang diizinkan, lihat UserScope di artikel Gambaran Umum Skema.
SrcUserScopeId Opsional String ID cakupan, seperti ID Microsoft Entra Directory, di mana SrcUserId dan SrcUsername ditentukan. untuk informasi selengkapnya dan daftar nilai yang diizinkan, lihat UserScopeId di artikel Gambaran Umum Skema.
SrcUserIdType Kondisional UserIdType Jenis ID yang disimpan pada bidang ActorUserId. Untuk informasi selengkapnya dan daftar nilai yang diizinkan, lihat UserIdType di Artikel Ringkasan Skema.
SrcUsername Opsional Nama Pengguna Nama pengguna Sumber, termasuk informasi domain jika tersedia. Untuk informasi lebih lanjut, lihat Entitas pengguna.

Contoh: AlbertE
SrcUsernameType Kondisional UsernameType Menentukan jenis nama pengguna yang disimpan di bidang SrcUsername . Untuk informasi selengkapnya, dan daftar nilai yang diizinkan, lihat UsernameType di Artikel Ringkasan Skema.

Contoh: Windows
Pengguna Alias Alias SrcUsername
SrcUserType Opsional UserType Jenis pengguna sumber. Untuk informasi selengkapnya, dan daftar nilai yang diizinkan, lihat UserType di Artikel Ringkasan Skema.

Misalnya: Guest
SrcUserSessionId Opsional String ID unik dari sesi rincian masuk Pelaku.

Contoh: 102pTUgC3p8RIqHvzxLCHnFlg
SrcOriginalUserType Opsional String Jenis pengguna sumber asli, jika disediakan oleh sumber.

Bidang proses sumber

Bidang Kelas Tipe Deskripsi
SrcProcessName Opsional String Nama file dari proses yang memulai permintaan DNS. Nama ini biasanya dianggap sebagai nama proses.

Contoh: C:\Windows\explorer.exe
Proses Alias Alias untuk SrcProcessName

Contoh: C:\Windows\System32\rundll32.exe
SrcProcessId Opsional String ID proses (PID) dari proses yang memulai permintaan DNS.

Contoh: 48610176

Catatan: Jenis didefinisikan sebagai string untuk mendukung berbagai sistem, tetapi pada Windows dan Linux nilai ini harus berupa angka.

Jika Anda menggunakan mesin Windows atau Linux dan menggunakan jenis yang berbeda, pastikan untuk mengonversi nilai ini. Misalnya, jika Anda menggunakan nilai heksadesimal, ubah menjadi nilai desimal.
SrcProcessGuid Opsional String Pengidentifikasi unik yang dihasilkan (GUID) dari proses yang memulai permintaan DNS.

Contoh: EF3BD0BD-2B74-60C5-AF5C-010000001E00

Bidang sistem tujuan

Bidang Kelas Tipe Deskripsi
Dst Alias String Pengidentifikasi unik dari server yang menerima permintaan DNS.

Bidang ini dapat menjadi alias bagi bidang DstDvcId, DstHostname, atau DstIpAddr.

Contoh: 192.168.12.1
DstIpAddr Opsional Alamat IP Alamat IP server yang menerima permintaan DNS. Untuk permintaan DNS reguler, nilai ini biasanya akan menjadi perangkat pelaporan, dan dalam banyak kasus diatur ke 127.0.0.1.

Contoh: 127.0.0.1
DstGeoCountry Opsional Negara Negara yang terkait dengan alamat IP tujuan. Untuk informasi lebih lanjut, lihat Jenis Logis.

Contoh: USA
DstGeoRegion Opsional Wilayah Wilayah, atau status, yang terkait dengan alamat IP tujuan. Untuk informasi lebih lanjut, lihat Jenis Logis.

Contoh: Vermont
DstGeoCity Opsional Kota Kota yang terkait dengan alamat IP tujuan. Untuk informasi lebih lanjut, lihat Jenis Logis.

Contoh: Burlington
DstGeoLatitude Opsional Garis Lintang Garis lintang koordinat geografis yang terkait dengan alamat IP tujuan. Untuk informasi lebih lanjut, lihat Jenis Logis.

Contoh: 44.475833
DstGeoLongitude Opsional Garis bujur Garis bujur koordinat geografis yang terkait dengan alamat IP tujuan. Untuk informasi lebih lanjut, lihat Jenis Logis.

Contoh: 73.211944
DstRiskLevel Opsional Bilangan bulat Tingkat risiko yang terkait dengan tujuan. Nilai harus disesuaikan dengan rentang 0 hingga 100, dengan 0 menjadi tidak berisiko dan 100 menjadi risiko tinggi.

Contoh: 90
DstOriginalRiskLevel Opsional Bilangan bulat Tingkat risiko yang terkait dengan tujuan, seperti yang dilaporkan oleh perangkat pelaporan.

Contoh: Malicious
DstPortNumber Opsional Bilangan bulat Nama Port Tujuan.

Contoh: 53
DstHostname Opsional String Nama host perangkat tujuan, tidak termasuk informasi domain. Jika tidak ada nama perangkat yang tersedia, simpan alamat IP yang relevan di bidang ini.

Contoh: DESKTOP-1282V4D

Catatan: Nilai ini wajib jika DstIpAddr ditentukan.
DstDomain Opsional String Domain perangkat tujuan.

Contoh: Contoso
DstDomainType Kondisional Disebutkan Jenis DstDomain, jika diketahui. Nilai yang mungkin termasuk:
- Windows (contoso\mypc)
- FQDN (learn.microsoft.com)

Diperlukan jika DstDomain digunakan.
DstFQDN Opsional String Nama host perangkat target, termasuk informasi domain saat tersedia.

Contoh: Contoso\DESKTOP-1282V4D

Catatan: Bidang ini mendukung format FQDN tradisional dan format domain\hostname Windows. DstDomainType mencerminkan format yang digunakan.
DstDvcId Opsional String ID perangkat tujuan seperti yang dilaporkan dalam catatan.

Contoh: ac7e9755-8eae-4ffc-8a02-50ed7a2216c3
DstDvcScopeId Opsional String ID cakupan platform cloud milik perangkat. DstDvcScopeId memetakan ke ID langganan di Azure dan ke ID akun di AWS.
DstDvcScope Opsional String Cakupan platform cloud milik perangkat. DstDvcScope memetakan ke ID langganan di Azure dan ke ID akun di AWS.
DstDvcIdType Kondisional Disebutkan Jenis DstDvcId, jika diketahui. Nilai yang mungkin termasuk:
- AzureResourceId
- MDEidIf

Jika beberapa ID tersedia, gunakan yang pertama dari daftar di atas, dan simpan yang lain di masing-masing bidang DstDvcAzureResourceId atau DstDvcMDEid.

Diperlukan jika DstDeviceId digunakan.
DstDeviceType Opsional Disebutkan Jenis perangkat tujuan. Nilai yang mungkin termasuk:
- Computer
- Mobile Device
- IOT Device
- Other
DstDescription Opsional String Teks deskriptif yang terkait dengan perangkat. Sebagai contoh: Primary Domain Controller.

Bidang khusus DNS

Bidang Kelas Tipe Deskripsi
DnsQuery Wajib String Domain yang coba diselesaikan oleh permintaan.

Catatan:
- Beberapa sumber mengirim kueri FQDN yang valid dalam format yang berbeda. Misalnya, dalam protokol DNS itu sendiri, kueri menyertakan titik (.) di bagian akhir, yang harus dihapus.
- Meskipun protokol DNS membatasi jenis nilai dalam bidang ini ke FQDN, sebagian besar server DNS mengizinkan nilai apa pun, dan oleh karena itu bidang ini tidak terbatas pada nilai FQDN saja. Terutama, serangan penerowongan DNS dapat menggunakan nilai FQDN yang tidak valid di bidang kueri.
- Sementara protokol DNS memungkinkan beberapa kueri dalam satu permintaan, skenario ini jarang terjadi, jika ditemukan sama sekali. Jika permintaan memiliki beberapa kueri, simpan yang pertama di bidang ini, lalu dan secara opsional simpan sisanya di bidang Bidang Tambahan.

Contoh: www.malicious.com
Domain Alias Alias ke DnsQuery.
DnsQueryType Opsional Bilangan bulat Kode Jenis Catatan Sumber Daya DNS.

Contoh: 28
DnsQueryTypeName Disarankan Disebutkan Nama Jenis Catatan Sumber Daya DNS.

Catatan:
- IANA tidak menentukan kasus untuk nilai, jadi analytik harus menormalkan kasus sesuai kebutuhan.
- Nilai ANY didukung untuk kode respons 255.
- Nilai TYPExxxx didukung untuk kode respons yang tidak dipetakan, yang mana xxxx adalah nilai numerik dari kode respons, seperti yang dilaporkan oleh server BIND DNS.
- Jika sumber hanya menyediakan kode jenis kueri numerik dan bukan nama jenis kueri, parser harus menyertakan tabel pencarian untuk memperkaya nilai ini.

Contoh: AAAA
DnsResponseName Opsional String Isi tanggapan, seperti yang termasuk dalam rekaman.

Data respons DNS tidak konsisten di seluruh perangkat pelaporan, rumit untuk diuraikan, dan memiliki nilai yang lebih rendah untuk analitik agnostik sumber. Oleh karena itu model informasi tidak memerlukan penguraian dan normalisasi, dan Microsoft Azure Sentinel menggunakan fungsi tambahan untuk memberikan informasi respons. Untuk informasi selengkapnya, lihat Menangani respons DNS.
DnsResponseCodeName Alias Alias untuk EventResultDetails
DnsResponseCode Opsional Bilangan bulat Kode respons numerik DNS.

Contoh: 3
TransactionIdHex Disarankan String ID unik kueri DNS seperti yang ditetapkan oleh klien DNS, dalam format heksadesimal. Perhatikan bahwa nilai ini adalah bagian dari protokol DNS dan berbeda dari DnsSessionId, ID sesi lapisan jaringan, biasanya ditetapkan oleh perangkat pelaporan.
NetworkProtocol Opsional Disebutkan Protokol transportasi yang digunakan oleh peristiwa resolusi jaringan. Nilainya bisa UDP atau TCP, dan paling sering diaitur ke UDP untuk DNS.

Contoh: UDP
NetworkProtocolVersion Opsional Disebutkan Versi NetworkProtocol. Saat menggunakannya untuk membedakan antara versi IP, gunakan nilai IPv4 dan IPv6.
DnsQueryClass Opsional Bilangan bulat ID kelas DNS.

Dalam praktiknya, hanya kelas IN (ID 1) yang digunakan, sehingga bidang ini kurang bernilai.
DnsQueryClassName Opsional String Nama kelas DNS.

Dalam praktiknya, hanya kelas IN (ID 1) yang digunakan, sehingga bidang ini kurang bernilai.

Contoh: IN
DnsFlags Opsional String Bidang bendera, seperti yang disediakan oleh perangkat pelaporan. Jika informasi bendera disediakan di berbagai bidang, gabungkan informasi dengan koma sebagai pemisah.

karena flag DNS rumit untuk diuraikan dan jarang digunakan oleh analitik, penguraian dan normalisasi tidak diperlukan. Microsoft Sentinel dapat menggunakan fungsi tambahan untuk memberikan informasi bendera. Untuk informasi selengkapnya, lihat Menangani respons DNS.

Contoh: ["DR"]
DnsNetworkDuration Opsional Bilangan bulat Jumlah waktu, dalam milidetik, untuk penyelesaian permintaan DNS.

Contoh: 1500
Durasi Alias Alias untuk DnsNetworkDuration
DnsFlagsAuthenticated Opsional Boolean Bendera AD DNS, yang terkait dengan DNSSEC, menunjukkan dalam tanggapan bahwa semua data yang termasuk dalam bagian jawaban dan otoritas respons telah diverifikasi oleh server sesuai dengan kebijakan server tersebut. Untuk informasi selengkapnya, lihat Bagian 6.1 RFC 3655 untuk informasi selengkapnya.
DnsFlagsAuthoritative Opsional Boolean Bendera AA DNS menunjukkan apakah respons dari server otoritatif
DnsFlagsCheckingDisabled Opsional Boolean Bendera CD DNS, yang terkait dengan DNSSEC, menunjukkan dalam kueri bahwa data yang tidak diverifikasi dapat diterima oleh sistem yang mengirim kueri. Untuk informasi selengkapnya, lihat Bagian 6.1 RFC 3655 untuk informasi selengkapnya.
DnsFlagsRecursionAvailable Opsional Boolean Bendera RA DNS menunjukkan dalam respons bahwa server tersebut mendukung kueri rekursif.
DnsFlagsRecursionDesired Opsional Boolean Bendera RD DNS menunjukkan dalam permintaan bahwa klien ingin server menggunakan kueri rekursif.
DnsFlagsTruncated Opsional Boolean Bendera TC DNS menunjukkan bahwa respons dipotong karena melebihi ukuran respons maksimum.
DnsFlagsZ Opsional Boolean Bendera Z DNS adalah bendera DNS yang tidak digunakan lagi, yang mungkin dilaporkan oleh sistem DNS yang lebih tua.
DnsSessionId Opsional string Pengidentifikasi sesi DNS seperti yang dilaporkan oleh perangkat pelaporan. Nilai ini berbeda dari TransactionIdHex, ID unik kueri DNS seperti yang ditetapkan oleh klien DNS.

Contoh: EB4BFA28-2EAD-4EF7-BC8A-51DF4FDF5B55
SessionId Alias Alias untuk DnsSessionId
DnsResponseIpCountry Opsional Negara Negara yang terkait dengan salah satu alamat IP dalam respons DNS. Untuk informasi lebih lanjut, lihat Jenis Logis.

Contoh: USA
DnsResponseIpRegion Opsional Wilayah Wilayah, atau status, yang terkait dengan salah satu alamat IP dalam respons DNS. Untuk informasi lebih lanjut, lihat Jenis Logis.

Contoh: Vermont
DnsResponseIpCity Opsional Kota Kota yang terkait dengan salah satu alamat IP dalam respons DNS. Untuk informasi lebih lanjut, lihat Jenis Logis.

Contoh: Burlington
DnsResponseIpLatitude Opsional Garis Lintang Garis lintang koordinat geografis yang terkait dengan salah satu alamat IP dalam respons DNS. Untuk informasi lebih lanjut, lihat Jenis Logis.

Contoh: 44.475833
DnsResponseIpLongitude Opsional Garis bujur Garis bujur koordinat geografis yang terkait dengan salah satu alamat IP dalam respons DNS. Untuk informasi lebih lanjut, lihat Jenis Logis.

Contoh: 73.211944

Bidang inspeksi

Bidang berikut digunakan untuk mewakili pemeriksaan, yang dilakukan oleh perangkat keamanan DNS. Bidang terkait ancaman mewakili satu ancaman yang terkait dengan alamat sumber, alamat tujuan, salah satu alamat IP dalam respons atau domain kueri DNS. Jika lebih dari satu ancaman diidentifikasi sebagai ancaman, informasi tentang alamat IP lain dapat disimpan di bidang AdditionalFields.

Bidang Kelas Tipe Deskripsi
UrlCategory Opsional String Sumber peristiwa DNS juga dapat mencari kategori Domain yang diminta. Bidang ini disebut UrlCategory untuk menyelaraskan dengan skema jaringan Microsoft Azure Sentinel.

DomainCategory ditambahkan sebagai alias yang sesuai dengan DNS.

Contoh: Educational \\ Phishing
DomainCategory Alias Alias untuk UrlCategory.
NetworkRuleName Opsional String Nama atau ID aturan yang mengidentifikasi ancaman.

Contoh: AnyAnyDrop
NetworkRuleNumber Opsional Bilangan bulat Jumlah aturan yang mengidentifikasi ancaman.

Contoh: 23
Aturan Alias String Baik nilai NetworkRuleName atau nilai NetworkRuleNumber. Perhatikan jika nilai NetworkRuleNumber digunakan, jenis tersebut harus dikonversi ke string.
ThreatId Opsional String ID ancaman atau malware yang diidentifikasi dalam sesi jaringan.

Contoh: Tr.124
ThreatCategory Opsional String Jika sumber peristiwa DNS juga menyediakan keamanan DNS, itu juga dapat mengevaluasi peristiwa DNS. Misalnya, ia dapat mencari alamat IP atau domain dalam database intelijen ancaman, dan dapat menetapkan domain atau alamat IP dengan Kategori Ancaman.
ThreatIpAddr Opsional Alamat IP Alamat IP yang ancamannya diidentifikasi. Bidang ThreatField berisi nama bidang yang diwakili ThreatIpAddr. Jika ancaman diidentifikasi di bidang Domain, bidang ini harus kosong.
ThreatField Kondisional Disebutkan Bidang yang ancamannya diidentifikasi. Nilainya adalah SrcIpAddr, DstIpAddr, Domain, atau DnsResponseName.
ThreatName Opsional String Nama ancaman yang diidentifikasi, seperti yang dilaporkan oleh perangkat pelaporan.
ThreatConfidence Opsional Bilangan bulat Tingkat keyakinan ancaman yang diidentifikasi, dinormalisasi ke nilai antara 0 dan 100.
ThreatOriginalConfidence Opsional String Tingkat keyakinan asli ancaman yang diidentifikasi, seperti yang dilaporkan oleh perangkat pelaporan.
ThreatRiskLevel Opsional Bilangan bulat Tingkat risiko yang terkait dengan ancaman yang diidentifikasi, dinormalisasi ke nilai antara 0 dan 100.
ThreatOriginalRiskLevel Opsional String Tingkat risiko asli yang terkait dengan ancaman yang diidentifikasi, seperti yang dilaporkan oleh perangkat pelaporan.
ThreatIsActive Opsional Boolean Benar jika ancaman yang diidentifikasi dianggap sebagai ancaman aktif.
ThreatFirstReportedTime Opsional datetime Pertama kali alamat IP atau domain diidentifikasi sebagai ancaman.
ThreatLastReportedTime Opsional datetime Terakhir kali alamat IP atau domain diidentifikasi sebagai ancaman.

Alias dan bidang yang tidak digunakan lagi

Bidang berikut adalah alias yang saat ini tidak digunakan lagi tetapi dipertahankan untuk kompatibilitas mundur. Mereka akan dihapus dari skema pada 31 Desember 31, 2021.

  • Query (alias ke DnsQuery)
  • QueryType (alias ke DnsQueryType)
  • QueryTypeName (alias ke DnsQueryTypeName)
  • ResponseName (alias ke DnsReasponseName)
  • ResponseCodeName (alias ke DnsResponseCodeName)
  • ResponseCode (alias ke DnsResponseCode)
  • QueryClass (alias ke DnsQueryClass)
  • QueryClassName (alias ke DnsQueryClassName)
  • Flags (alias ke DnsFlags)
  • SrcUserDomain

Pembaruan skema

Ini adalah perubahan dalam versi 0.1.2 dari skema tersebut:

  • Menambahkan bidang EventSchema.
  • Penambahan bidang bendera khusus yang menambah kombinasi bidang Bendera: DnsFlagsAuthoritative, DnsFlagsCheckingDisabled, DnsFlagsRecursionAvailable, DnsFlagsRecursionDesired, DnsFlagsTruncated, dan DnsFlagsZ.

Ini adalah perubahan dalam versi 0.1.3 dari skema tersebut:

  • Skema tersebut sekarang secara eksplisit mendokumentasikan bidang Src*, Dst* , Process*, dan User*.
  • Penambahan bidang Dvc* tambahan agar sesuai dengan definisi bidang umum terbaru.
  • Penambahan Src dan Dst sebagai alias ke pengenal utama untuk sistem sumber dan tujuan.
  • Penambahan DnsNetworkDuration dan Duration opsional, alias untuk opsi tersebut.
  • Penambahan bidang Geo Location dan Tingkat Risiko opsional.

Perubahan skema versi 0.1.4 adalah:

  • Menambahkan bidang ThreatIpAddropsional , , ThreatField, ThreatName, ThreatConfidence, ThreatOriginalConfidence, ThreatOriginalRiskLevel, ThreatIsActive, ThreatFirstReportedTime, dan ThreatLastReportedTime.

Perubahan skema versi 0.1.5 adalah:

  • Menambahkan bidang SrcUserScope, , SrcUserSessionId, SrcDvcScopeIdSrcDvcScope, , DstDvcScopeId, DstDvcScope, DvcScopeId, dan DvcScope.

Perubahan skema versi 0.1.6 adalah:

  • Menambahkan bidang DnsResponseIpCountry, DnsResponseIpRegion, DnsResponseIpCity, DnsResponseIpLatitude, dan DnsResponseIpLongitude.

Perubahan skema versi 0.1.7 adalah:

  • Menambahkan bidang SrcDescription, , SrcOriginalRiskLevel, DstDescriptionDstOriginalRiskLevel, SrcUserScopeId, , NetworkProtocolVersion, Rule, RuleName, RuleNumber, dan ThreatId.

Perbedaan khusus sumber

Tujuan normalisasi adalah untuk memastikan bahwa semua sumber menyediakan telemetri yang konsisten. Sumber yang tidak menyediakan telemetri yang diperlukan, seperti bidang skema wajib, tidak dapat dinormalisasi. Namun, sumber yang biasanya menyediakan semua telemetri yang diperlukan, bahkan jika ada beberapa perbedaan, dapat dinormalisasi. Perbedaan dapat mempengaruhi kelengkapan hasil kueri.

Tabel berikut mencantumkan perbedaan yang diketahui:

Sumber Perbedaan
Server DNS Microsoft Dikumpulkan menggunakan konektor DNS dan Agen Analisis Log Konektor tidak menyediakan bidang DnsQuery wajib untuk ID peristiwa asli 264 (Respons terhadap pembaruan dinamis). Data tersedia di sumber, tetapi tidak diteruskan oleh konektor.
Corelight Zeek Corelight Zeek mungkin tidak menyediakan bidang DnsQuery wajib. Kami telah mengamati perilaku seperti itu dalam kasus-kasus tertentu di mana nama kode respons DNS adalah NXDOMAIN.

Menangani respons DNS

Dalam kebanyakan kasus, peristiwa DNS yang dicatat tidak mencakup informasi respons, yang mungkin besar dan terperinci. Jika rekaman Anda menyertakan lebih banyak informasi tanggapan, simpan di bidang ResponseName seperti yang muncul di rekaman.

Anda juga dapat menyediakan fungsi KQL tambahan yang disebut _imDNS<vendor>Response_, yang mengambil respons yang tidak diuraikan sebagai input dan mengembalikan nilai dinamis dengan struktur berikut:

[
    {
        "part": "answer"
        "query": "yahoo.com."
        "TTL": 1782
        "Class": "IN"
        "Type": "A"
        "Response": "74.6.231.21"
    }
    {
        "part": "authority"
        "query": "yahoo.com."
        "TTL": 113066
        "Class": "IN"
        "Type": "NS"
        "Response": "ns5.yahoo.com"
    }
    ...
]

Bidang di setiap kamus dalam nilai dinamis sesuai dengan bidang di setiap respons DNS. Entri part harus menyertakan answer, authority, atau additional untuk mencerminkan bagian dalam respons yang dimiliki kamus.

Tip

Untuk memastikan performa yang optimal, panggil fungsi imDNS<vendor>Response hanya bila diperlukan, dan hanya setelah pemfilteran awal untuk memastikan performa yang lebih baik.

Menangani bendera DNS

Penguraian dan normalisasi tidak diperlukan untuk data bendera. Sebagai gantinya, simpan data bendera yang disediakan oleh perangkat pelaporan di bidang Bendera. Jika menentukan nilai bendera individual mudah, Anda juga dapat menggunakan bidang bendera khusus.

Anda juga dapat menyediakan fungsi KQL tambahan yang disebut _imDNS<vendor>Flags_, yang mengambil respons yang tidak diuraikan, atau bidang bendera khusus, sebagai input dan mengembalikan daftar dinamis, dengan nilai Boolean yang mewakili setiap bendera dalam urutan berikut:

  • Terautentikasi (AD)
  • Autoritatif (AA)
  • Pemeriksaan Dinonaktifkan (CD)
  • Rekursi Tersedia (RA)
  • Rekursi Diinginkan (RD)
  • Terpotong (TC)
  • Z

Langkah berikutnya

Untuk informasi selengkapnya, lihat: