共用方式為


進階安全性資訊模型 (ASIM) DNS 正規化架構參考 (公開預覽)

DNS 資訊模型可用來描述 DNS 伺服器或 DNS 安全性系統所報告的事件,並由 Microsoft Sentinel 用來啟用與來源無關的分析。

如需詳細資訊,請參閱 正規化和進階安全性資訊模型(ASIM)。

重要

DNS 正規化架構目前為預覽狀態。 此功能在沒有服務等級協定的情況下提供,不建議用於生產工作負載。

Azure 預覽補充條款 包含適用於 Azure 功能 (搶鮮版 (Beta)、預覽版,或尚未發行的版本) 的其他法律條款。

架構概觀

ASIM DNS 架構代表 DNS 通訊協定活動。 將 DNS 要求傳送至 DNS 伺服器記錄 DNS 活動的 DNS 伺服器和裝置。 DNS 通訊協定活動包括 DNS 查詢、DNS 伺服器更新和 DNS 大量資料傳輸。 由於架構代表通訊協定活動,因此會受到 RFC 的控管,而且會適當時參考本文所參考的正式指派參數清單。 DNS 架構不代表 DNS 伺服器稽核事件。

DNS 伺服器所報告的最重要活動是 DNS 查詢,欄位 EventType 會設定為 Query

DNS 事件中最重要的欄位包括:

  • DnsQuery ,其會報告發出查詢的功能變數名稱。

  • SrcIpAddr (別名為 IpAddr ),代表產生要求的來源 IP 位址。 DNS 伺服器通常會提供 SrcIpAddr 欄位,但 DNS 用戶端有時不會提供此欄位,而且只提供 SrcHostname 欄位。

  • EventResultDetails ,其會報告要求是否成功,如果不是,則為原因。

  • 當可用時, DnsResponseName 會保存伺服器提供給查詢的答案。 ASIM 不需要剖析回應,而且其格式會因來源而異。

    若要在與來源無關的內容中使用此欄位,請使用 或 contains 運算子來搜尋內容 has

在用戶端裝置上收集的 DNS 事件也可能包含 使用者 進程 資訊。

收集 DNS 事件的指導方針

DNS 是一種唯一的通訊協定,因為它可能會跨越大量的電腦。 此外,由於 DNS 會使用 UDP,因此要求和回應會取消結合,而且不會彼此直接相關。

下圖顯示簡化的 DNS 要求流程,包括四個區段。 真實世界的要求可能更為複雜,涉及更多區段。

Simplified DNS request flow.

由於要求和回應區段不會在 DNS 要求流程中彼此直接連線,因此完整記錄可能會導致大量重複。

要記錄的最有價值的區段是用戶端的回應。 回應會提供功能變數名稱查詢、查閱結果,以及用戶端的 IP 位址。 雖然許多 DNS 系統只會記錄此區段,但記錄其他部分有一個值。 例如,DNS 快取中毒攻擊通常會利用上游伺服器的假回應。

如果您的資料來源支援完整的 DNS 記錄,而且您已選擇記錄多個區段,請調整查詢以防止 Microsoft Sentinel 中的資料重複。

例如,您可以使用下列正規化來修改查詢:

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

剖析器

如需 ASIM 剖析器的詳細資訊,請參閱 ASIM 剖析器概觀

現用剖析器

若要使用將所有 ASIM 現成剖析器統一起來的剖析器,並確保分析在所有設定的來源上執行,請使用統一剖析器 _Im_Dns 作為查詢中的資料表名稱。

如需 DNS 剖析器清單,Microsoft Sentinel 提供現成的參考 ASIM 剖析器清單

新增您自己的標準化剖析器

實作 Dns 資訊模型的自訂剖析器時,請使用 格式為您的 KQL 函式 vimDns<vendor><Product> 命名。 請參閱管理 ASIM 剖析器 一文 ,瞭解如何將自訂剖析器新增至 DNS 統一剖析器。

篩選剖析器參數

DNS 剖析器支援 篩選參數 。 雖然這些參數是選擇性的,但它們可以改善查詢效能。

下列篩選參數可供使用:

名稱 類型​​ 描述
starttime Datetime 只篩選在此時間或之後執行的 DNS 查詢。
endtime Datetime 只篩選在此時或之前完成執行的 DNS 查詢。
srcipaddr string 僅篩選來自此來源 IP 位址的 DNS 查詢。
domain_has_any 動態/字串 僅篩選 DNS 查詢, domain 其中 (或 query ) 具有任何列出的功能變數名稱,包括作為事件網域的一部分。 清單的長度限制為 10,000 個專案。
responsecodename string 僅篩選回應碼名稱符合所提供值的 DNS 查詢。
例如:NXDOMAIN
response_has_ipv4 string 僅篩選回應欄位包含所提供 IP 位址或 IP 位址首碼的 DNS 查詢。 當您想要篩選單一 IP 位址或前置詞時,請使用此參數。

未提供回應的來源不會傳回結果。
response_has_any_prefix dynamic 僅篩選回應欄位包含任何列出的 IP 位址或 IP 位址首碼的 DNS 查詢。 前置詞應該以 . 結尾,例如: 10.0.

當您想要篩選 IP 位址或前置詞清單時,請使用此參數。

未提供回應的來源不會傳回結果。 清單的長度限制為 10,000 個專案。
eventtype string 只篩選指定類型的 DNS 查詢。 如果未指定任何值,則只會傳回查閱查詢。

例如,若要僅篩選過去一天無法解析功能變數名稱的 DNS 查詢,請使用:

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

若要僅篩選指定功能變數名稱清單的 DNS 查詢,請使用:

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

某些參數可以接受類型的 dynamic 值清單或單一字串值。 若要將常值清單傳遞至預期動態值的參數,請明確使用 動態常值 。 例如:dynamic(['192.168.','10.'])

標準化內容

如需使用標準化 DNS 事件之分析規則的完整清單,請參閱 DNS 查詢安全性內容

架構詳細資料

DNS 資訊模型會與 OSSEM DNS 實體架構 一致。

如需詳細資訊,請參閱 網際網路指派的數位授權單位 (IANA) DNS 參數參考

一般 ASIM 欄位

重要

ASIM 通用欄位一文會詳細說明 所有架構的通用欄位

具有特定指導方針的常見欄位

下列清單提及具有 DNS 事件特定指導方針的欄位:

欄位 類別 型別 說明
EventType 必要 枚舉 指出記錄所報告的作業。

針對 DNS 記錄,此值會是 DNS 作業程式碼

範例: Query
EventSubType 選擇性 枚舉 requestresponse

對大部分來源而言, 只會記錄 回應,因此值通常是 回應
EventResultDetails 必要 枚舉 針對 DNS 事件,此欄位會提供 DNS 回應碼

注意:
- IANA 不會定義值的案例,因此分析必須正規化案例。
- 如果來源只提供數值回應碼,而不是回應碼名稱,剖析器必須包含查閱表格,才能使用此值進行擴充。
- 如果此記錄代表要求而非回應,請將 設定為 NA

範例: NXDOMAIN
EventSchemaVersion 必要 String 這裡記載的架構版本是 0.1.7
EventSchema 必要 String 這裡記載的架構名稱是 Dns
Dvc 欄位 - - 針對 DNS 事件,裝置欄位會參考報告 DNS 事件的系統。

所有通用欄位

下表中顯示的欄位適用于所有 ASIM 架構。 上述任何指定的指導方針會覆寫欄位的一般指導方針。 例如,欄位通常是選擇性的,但特定架構的必要專案。 如需每個欄位的進一步詳細資料,請參閱 ASIM 通用欄位 一文。

類別 欄位
必要 - EventCount
- EventStartTime
- EventEndTime
- EventType
- EventResult
- EventProduct
- EventVendor
- EventSchema
- EventSchemaVersion
- Dvc
建議需求 - EventResultDetails
- EventSeverity
- EventUid
- DvcIpAddr
- DvcHostname
- DvcDomain
- DvcDomainType
- DvcFQDN
- DvcId
- DvcIdType
- DvcAction
選擇性 - EventMessage
- EventSubType
- EventOriginalUid
- EventOriginalType
- EventOriginalSubType
- EventOriginalResultDetails
- EventOriginalSeverity
- EventProductVersion
- EventReportUrl
- EventOwner
- DvcZone
- DvcMacAddr
- DvcOs
- DvcOsVersion
- DvcOriginalAction
- DvcInterface
- AdditionalFields
- DvcDescription
- DvcScopeId
- DvcScope

來源系統欄位

欄位 類別 類型 描述
Src Alias String 來源裝置的唯一識別碼。

此欄位可以將 SrcDvcId SrcHostname SrcIpAddr 欄位別名。

範例: 192.168.12.1
SrcIpAddr 建議需求 IP 位址 傳送 DNS 要求的用戶端 IP 位址。 對於遞迴 DNS 要求,此值通常是報告裝置,而且在大部分情況下會設定為 127.0.0.1

範例: 192.168.12.1
SrcPortNumber 選擇性 整數 DNS 查詢的來源埠。

範例: 54312
IpAddr Alias SrcIpAddr 的 別名
SrcGeoCountry 選擇性 國家/地區 與來源 IP 位址相關聯的國家/地區。

範例: USA
SrcGeoRegion 選擇性 區域 與來源 IP 位址相關聯的區域。

範例: Vermont
SrcGeoCity 選擇性 城市 與來源 IP 位址相關聯的城市。

範例: Burlington
SrcGeoLatitude 選擇性 緯度 與來源 IP 位址相關聯的地理座標緯度。

範例: 44.475833
SrcGeoLongitude 選擇性 經度 與來源 IP 位址相關聯的地理座標經度。

範例: 73.211944
SrcRiskLevel 選擇性 整數 與來源相關聯的風險層級。 此值應調整為 的範圍, 01000 針對良性和 100 高風險。

範例: 90
SrcOriginalRiskLevel 選擇性 整數 與來源相關聯的風險層級,如報告裝置所報告。

範例: Suspicious
SrcHostname 建議需求 String 來源裝置主機名稱,不包括網域資訊。

範例: DESKTOP-1282V4D
主機 名 Alias SrcHostname 的 別名
SrcDomain 建議需求 String 來源裝置的網域。

範例: Contoso
SrcDomainType 條件 枚舉 如果已知,則為 SrcDomain 的類型 。 可能的值包括:
- Windows (例如: contoso
- FQDN (例如: microsoft.com

如果使用 SrcDomain ,則為必要項。
SrcFQDN 選擇性 String 來源裝置主機名稱,包括可用時的網域資訊。

注意 :此欄位同時支援傳統的 FQDN 格式和 Windows 網域\主機名稱格式。 SrcDomainType 欄位會反映所使用的格式。

範例: Contoso\DESKTOP-1282V4D
SrcDvcId 選擇性 String 記錄中所報告的來源裝置識別碼。

例如:ac7e9755-8eae-4ffc-8a02-50ed7a2216c3
SrcDvcScopeId 選擇性 String 裝置所屬的雲端平臺範圍識別碼。 SrcDvcScopeId 會對應至 Azure 上的訂用帳戶識別碼,以及對應至 AWS 上的帳戶識別碼。
SrcDvcScope 選擇性 String 裝置所屬的雲端平臺範圍。 SrcDvcScope 對應至 Azure 上的訂用帳戶識別碼,以及 AWS 上的帳戶識別碼。
SrcDvcIdType 條件 枚舉 如果已知,則為 SrcDvcId 的類型 。 可能的值包括:
- AzureResourceId
- MDEid

如果有多個識別符可用,請使用清單中的第一個識別碼,並將其他識別碼分別儲存在 SrcDvcAzureResourceId SrcDvcMDEid 中。

注意 :如果使用 SrcDvcId ,則需要此欄位。
SrcDeviceType 選擇性 枚舉 來源裝置的類型。 可能的值包括:
- Computer
- Mobile Device
- IOT Device
- Other
SrcDescription 選擇性 String 與裝置相關聯的描述性文字。 例如: Primary Domain Controller

來源使用者欄位

欄位 類別 類型 描述
SrcUserId 選擇性 String 電腦可讀取、英數位元、來源使用者的唯一標記法。 如需詳細資訊,以及其他識別碼的替代欄位,請參閱 使用者實體

範例: S-1-12-1-4141952679-1282074057-627758481-2916039507
SrcUserScope 選擇性 String 定義 SrcUserId SrcUsername 的 Microsoft Entra 租使用者 等範圍。 或詳細資訊和允許的值清單,請參閱 架構概觀一文 中的 UserScope 。
SrcUserScopeId 選擇性 String 定義 SrcUserId SrcUsername 的範圍識別碼, 例如 Microsoft Entra Directory 識別碼。 如需允許值的詳細資訊和清單,請參閱 架構概觀一文 中的 UserScopeId 。
SrcUserIdType 條件 UserIdType 儲存在 SrcUserId 欄位中的識別碼類型。 如需允許值的詳細資訊和清單,請參閱 架構概觀一文 中的 UserIdType 。
SrcUsername 選擇性 使用者名稱 來源使用者名稱,包括可用時的網域資訊。 如需詳細資訊,請參閱 使用者實體

範例: AlbertE
SrcUsernameType 條件 UsernameType 指定儲存在 SrcUsername 欄位中的使用者名稱類型。 如需詳細資訊,以及允許的值清單,請參閱 架構概觀一文 中的 UsernameType 。

範例: Windows
使用者 Alias SrcUsername 的別名
SrcUserType 選擇性 UserType 來源使用者的型別。 如需詳細資訊和允許的值清單,請參閱 架構概觀一文 中的 UserType 。

例如:Guest
SrcUserSessionId 選擇性 String 動作專案之登入會話的唯一識別碼。

範例: 102pTUgC3p8RIqHvzxLCHnFlg
SrcOriginalUserType 選擇性 String 來源所提供的原始來源使用者類型。

來源進程欄位

欄位 類別 類型 描述
SrcProcessName 選擇性 String 起始 DNS 要求之進程的檔案名。 此名稱通常被視為進程名稱。

範例: C:\Windows\explorer.exe
處理 Alias SrcProcessName 的 別名

範例: C:\Windows\System32\rundll32.exe
SrcProcessId 選擇性 String 起始 DNS 要求之進程的進程識別碼 (PID)。

範例: 48610176

注意 :類型定義為 支援不同系統的字串 ,但在 Windows 和 Linux 上,此值必須是數值。

如果您使用 Windows 或 Linux 電腦並使用不同的類型,請務必轉換值。 例如,如果您使用十六進位值,請將它轉換成十進位值。
SrcProcessGuid 選擇性 String 起始 DNS 要求之進程的產生唯一識別碼 (GUID)。

範例: EF3BD0BD-2B74-60C5-AF5C-010000001E00

目的地系統欄位

欄位 類別 類型 描述
Dst Alias String 接收 DNS 要求之伺服器的唯一識別碼。

此欄位可能會將 DstDvcId DstHostname DstIpAddr 欄位別名。

範例: 192.168.12.1
DstIpAddr 選擇性 IP 位址 接收 DNS 要求之伺服器的 IP 位址。 針對一般 DNS 要求,此值通常是報告裝置,而且在大部分情況下會設定為 127.0.0.1

範例: 127.0.0.1
DstGeoCountry 選擇性 國家/地區 與目的地 IP 位址相關聯的國家/地區。 如需詳細資訊,請參閱 邏輯類型

範例: USA
DstGeoRegion 選擇性 區域 與目的地 IP 位址相關聯的區域或狀態。 如需詳細資訊,請參閱 邏輯類型

範例: Vermont
DstGeoCity 選擇性 城市 與目的地 IP 位址相關聯的城市。 如需詳細資訊,請參閱 邏輯類型

範例: Burlington
DstGeoLatitude 選擇性 緯度 與目的地 IP 位址相關聯的地理座標緯度。 如需詳細資訊,請參閱 邏輯類型

範例: 44.475833
DstGeoLongitude 選擇性 經度 與目的地 IP 位址相關聯的地理座標經度。 如需詳細資訊,請參閱 邏輯類型

範例: 73.211944
DstRiskLevel 選擇性 整數 與目的地相關聯的風險層級。 此值應調整為 0 到 100 的範圍,其中 0 為良性,100 為高風險。

範例: 90
DstOriginalRiskLevel 選擇性 整數 與目的地相關聯的風險層級,如報告裝置所報告。

範例: Malicious
DstPortNumber 選擇性 整數 目的地埠號碼。

範例: 53
DstHostname 選擇性 String 目的地裝置主機名稱,不包括網域資訊。 如果沒有可用的裝置名稱,請將相關的 IP 位址儲存在此欄位中。

範例: DESKTOP-1282V4D

注意 :如果 指定 DstIpAddr ,這個值是必要的。
DstDomain 選擇性 String 目的地裝置的網域。

範例: Contoso
DstDomainType 條件 枚舉 如果已知,則為 DstDomain 的類型 。 可能的值包括:
- Windows (contoso\mypc)
- FQDN (learn.microsoft.com)

如果使用 DstDomain ,則為必要項。
DstFQDN 選擇性 String 目的地裝置主機名稱,包括可用時的網域資訊。

範例: Contoso\DESKTOP-1282V4D

注意 :此欄位同時支援傳統的 FQDN 格式和 Windows 網域\主機名稱格式。 DstDomainType 會反映所使用的格式。
DstDvcId 選擇性 String 記錄中所報告的目的地裝置識別碼。

範例: ac7e9755-8eae-4ffc-8a02-50ed7a2216c3
DstDvcScopeId 選擇性 String 裝置所屬的雲端平臺範圍識別碼。 DstDvcScopeId 會對應至 Azure 上的訂用帳戶識別碼,以及對應至 AWS 上的帳戶識別碼。
DstDvcScope 選擇性 String 裝置所屬的雲端平臺範圍。 DstDvcScope 對應至 Azure 上的訂用帳戶識別碼,以及 AWS 上的帳戶識別碼。
DstDvcIdType 條件 枚舉 如果已知,則為 DstDvcId 的類型 。 可能的值包括:
- AzureResourceId
- MDEidIf

如果有多個識別符可用,請使用上述清單中的第一個識別碼,並將其他識別碼分別儲存在 DstDvcAzureResourceId DstDvcMDEid 欄位中。

如果使用 DstDeviceId ,則為必要專案。
DstDeviceType 選擇性 枚舉 目的地裝置的類型。 可能的值包括:
- Computer
- Mobile Device
- IOT Device
- Other
DstDescription 選擇性 String 與裝置相關聯的描述性文字。 例如: Primary Domain Controller

DNS 特定欄位

欄位 類別 類型 描述
DnsQuery 必要 String 要求嘗試解析的網域。

注意:
- 某些來源會以不同的格式傳送有效的 FQDN 查詢。 例如,在 DNS 通訊協定本身中,查詢會在結尾包含一個點 ( . ),這必須移除。
- 雖然 DNS 通訊協定會將此欄位中的數值型別限制為 FQDN,但大部分的 DNS 伺服器都允許任何值,因此此欄位不限於 FQDN 值。 最值得注意的是,DNS 通道攻擊可能會在查詢欄位中使用不正確 FQDN 值。
- 雖然 DNS 通訊協定允許單一要求中的多個查詢,但如果完全找到此案例,就很少見。 如果要求有多個查詢,請將第一個查詢儲存在此欄位中,然後選擇性地將其餘查詢 保留在 AdditionalFields 欄位中。

範例: www.malicious.com
網域 Alias DnsQuery 別名。
DnsQueryType 選擇性 整數 DNS 資源記錄類型代碼

範例: 28
DnsQueryTypeName 建議需求 枚舉 DNS 資源記錄類型 名稱。

注意:
- IANA 不會定義值的案例,因此分析必須視需要將案例正規化。
- 回應碼 255 支援此值 ANY
- 未對應的回應碼支援此值 TYPExxxx ,其中 xxxx 是回應碼的數值,如 BIND DNS 伺服器所報告。
-如果來源只提供數值查詢類型程式碼,而不是查詢類型名稱,剖析器必須包含查閱資料表,才能使用此值進行擴充。

範例: AAAA
DnsResponseName 選擇性 String 回應的內容,如記錄中包含的內容。

跨報告裝置的 DNS 回應資料不一致、剖析很複雜,而且對來源無關的分析具有較少的值。 因此,資訊模型不需要剖析和正規化,而 Microsoft Sentinel 會使用輔助函式來提供回應資訊。 如需詳細資訊,請參閱 處理 DNS 回應
DnsResponseCodeName Alias EventResultDetails 的別名
DnsResponseCode 選擇性 整數 DNS 數值回應碼

範例: 3
TransactionIdHex 建議需求 String DNS 用戶端指派的 DNS 查詢唯一識別碼,格式為十六進位。 請注意,這個值是 DNS 通訊協定的一部分,與 DnsSessionId 不同 ,通常是由報告裝置指派的網路層會話識別碼。
NetworkProtocol 選擇性 枚舉 網路解析事件所使用的傳輸通訊協定。 此值可以是 UDP 或 TCP,而且最常設定為 DNS 的 UDP

範例: UDP
NetworkProtocolVersion 選擇性 枚舉 NetworkProtocol 的版本 。 使用它來區別 IP 版本時,請使用 值 IPv4IPv6
DnsQueryClass 選擇性 整數 DNS 類別識別碼

實際上,只會 使用 IN 類別 (ID 1),因此此欄位較不重要。
DnsQueryClassName 選擇性 String DNS 類別名稱

實際上,只會 使用 IN 類別 (ID 1),因此此欄位較不重要。

範例: IN
DnsFlags 選擇性 String [旗標] 欄位,如報告裝置所提供。 如果在多個欄位中提供旗標資訊,請以逗號做為分隔符號串連它們。

由於 DNS 旗標對剖析很複雜,而且分析、剖析和正規化不需要經常使用。 Microsoft Sentinel 可以使用輔助函式來提供旗標資訊。 如需詳細資訊,請參閱 處理 DNS 回應

範例: ["DR"]
DnsNetworkDuration 選擇性 整數 DNS 要求完成的時間量,以毫秒為單位。

範例: 1500
期間 Alias DnsNetworkDuration 的 別名
DnsFlagsAuthenticated 選擇性 布林值 DNS 旗標與 DNSSEC AD 相關,在回應中指出,回應中所包含的所有資料都已根據該伺服器的原則,由伺服器驗證回應的回應和授權單位區段。 如需詳細資訊,請參閱 RFC 3655 第 6.1 節以取得詳細資訊。
DnsFlagsAuthoritative 選擇性 布林值 DNS AA 旗標會指出來自伺服器的回應是否為授權
DnsFlagsCheckingDisabled 選擇性 布林值 DNS 旗標與 DNSSEC CD 相關,會在查詢中指出傳送查詢的系統可以接受未驗證的資料。 如需詳細資訊,請參閱 RFC 3655 第 6.1 節以取得詳細資訊。
DnsFlagsRecursionAvailable 選擇性 布林值 DNS RA 旗標會在回應中指出伺服器支援遞迴查詢。
DnsFlagsRecursionDesired 選擇性 布林值 DNS RD 旗標會在要求中指出用戶端希望伺服器使用遞迴查詢。
DnsFlagsTruncated 選擇性 布林值 DNS TC 旗標表示回應在超過回應大小上限時遭到截斷。
DnsFlagsZ 選擇性 布林值 DNS Z 旗標是已被取代的 DNS 旗標,可能會由較舊的 DNS 系統報告。
DnsSessionId 選擇性 string 報告裝置所報告的 DNS 會話識別碼。 此值與 TransactionIdHex 不同,這是 DNS 用戶端指派的 DNS 查詢唯一識別碼。

範例: EB4BFA28-2EAD-4EF7-BC8A-51DF4FDF5B55
SessionId Alias DnsSessionId 的別名
DnsResponseIpCountry 選擇性 國家/地區 與 DNS 回應中其中一個 IP 位址相關聯的國家/地區。 如需詳細資訊,請參閱 邏輯類型

範例: USA
DnsResponseIpRegion 選擇性 區域 與 DNS 回應中其中一個 IP 位址相關聯的區域或狀態。 如需詳細資訊,請參閱 邏輯類型

範例: Vermont
DnsResponseIpCity 選擇性 城市 與 DNS 回應中其中一個 IP 位址相關聯的城市。 如需詳細資訊,請參閱 邏輯類型

範例: Burlington
DnsResponseIpLatitude 選擇性 緯度 與 DNS 回應中其中一個 IP 位址相關聯的地理座標緯度。 如需詳細資訊,請參閱 邏輯類型

範例: 44.475833
DnsResponseIpLongitude 選擇性 經度 與 DNS 回應中其中一個 IP 位址相關聯的地理座標經度。 如需詳細資訊,請參閱 邏輯類型

範例: 73.211944

檢查欄位

下欄欄位可用來代表 DNS 安全性裝置執行的檢查。 威脅相關欄位代表與來源位址、目的地位址、回應中的其中一個 IP 位址或 DNS 查詢網域相關聯的單一威脅。 如果一個以上的威脅被識別為威脅,其他 IP 位址的相關資訊可以儲存在 欄位中 AdditionalFields

欄位 類別 類型 描述
UrlCategory 選擇性 String DNS 事件來源也可能查閱要求的網域類別。 欄位稱為 UrlCategory ,以配合 Microsoft Sentinel 網路架構。

DomainCategory 會新增為適合 DNS 的別名。

範例: Educational \\ Phishing
DomainCategory Alias UrlCategory 別名。
NetworkRuleName 選擇性 String 識別威脅之規則的名稱或識別碼。

範例: AnyAnyDrop
NetworkRuleNumber 選擇性 整數 識別威脅的規則數目。

範例: 23
規則 Alias String NetworkRuleName 的值 或 NetworkRuleNumber 的值 。 如果使用 NetworkRuleNumber 的值 ,則類型應該轉換成字串。
ThreatId 選擇性 String 網路會話中識別的威脅或惡意程式碼識別碼。

範例: Tr.124
ThreatCategory 選擇性 String 如果 DNS 事件來源也提供 DNS 安全性,它也可能評估 DNS 事件。 例如,它可以搜尋威脅情報資料庫中的 IP 位址或網域,並使用威脅類別指派網域或 IP 位址。
ThreatIpAddr 選擇性 IP 位址 識別威脅的 IP 位址。 Field ThreatField 包含 ThreatIpAddr 欄位的名稱 。 如果在 [定義域 ] 欄位中識別 威脅,則此欄位應該是空的。
ThreatField 條件 枚舉 識別威脅的欄位。 值為 SrcIpAddr 、、 DstIpAddrDomainDnsResponseName
ThreatName 選擇性 String 所識別的威脅名稱,如報告裝置所報告。
ThreatConfidence 選擇性 整數 識別的威脅信賴等級,標準化為介於 0 到 100 之間的值。
ThreatOriginalConfidence 選擇性 String 所識別威脅的原始信賴等級,如報告裝置所報告。
ThreatRiskLevel 選擇性 整數 與所識別威脅相關聯的風險層級,標準化為介於 0 到 100 之間的值。
ThreatOriginalRiskLevel 選擇性 String 與所識別威脅相關聯的原始風險層級,如報告裝置所報告。
ThreatIsActive 選擇性 布林值 如果識別的威脅被視為作用中威脅,則為 True。
ThreatFirstReportedTime 選擇性 Datetime 第一次將 IP 位址或網域識別為威脅。
ThreatLastReportedTime 選擇性 Datetime 上次將 IP 位址或網域識別為威脅的時間。

已被取代的別名和欄位

下欄欄位是為了回溯相容性而維護的別名。 它們于 2021 年 12 月 31 日從架構中移除。

  • Query (別名至 DnsQuery
  • QueryType (別名至 DnsQueryType
  • QueryTypeName (別名至 DnsQueryTypeName
  • ResponseName (別名至 DnsReasponseName
  • ResponseCodeName (別名至 DnsResponseCodeName
  • ResponseCode (別名至 DnsResponseCode
  • QueryClass (別名至 DnsQueryClass
  • QueryClassName (別名至 DnsQueryClassName
  • Flags (別名至 DnsFlags
  • SrcUserDomain

架構更新

架構 0.1.2 版中的變更如下:

架構 0.1.3 版中的變更如下:

  • 架構現在會明確記載 Src*Dst*Process*User* 欄位。
  • 已新增更多 Dvc* 欄位,以符合最新的通用欄位定義。
  • SrcDst 新增為來源和目的地系統前置識別碼的別名。
  • 已將選擇性 DnsNetworkDuration 和 新增 Duration 至它的別名。
  • 已新增選擇性的 [地理位置] 和 [風險層級] 欄位。

架構 0.1.4 版中的變更如下:

  • 已新增選擇性欄位 ThreatIpAddrThreatField 、、、 ThreatOriginalConfidenceThreatNameThreatOriginalRiskLevelThreatConfidence 、、 ThreatIsActiveThreatFirstReportedTime 和 。 ThreatLastReportedTime

架構 0.1.5 版中的變更如下:

  • 已新增 SrcUserScope 欄位 、 SrcUserSessionId 、、 SrcDvcScopeIdDstDvcScopeIdSrcDvcScopeDstDvcScope 、、 DvcScopeIdDvcScope

架構 0.1.6 版的變更如下:

  • 已新增 、 DnsResponseIpRegionDnsResponseIpCityDnsResponseIpLatitudeDnsResponseIpLongitude 欄位 DnsResponseIpCountry

架構 0.1.7 版中的變更如下:

  • 已新增 SrcDescription 欄位 、 SrcOriginalRiskLevel 、、 DstOriginalRiskLevelRuleDstDescriptionNetworkProtocolVersionRuleNameSrcUserScopeIdRuleNumber 和 。 ThreatId

來源特定差異

正規化的目標是確保所有來源都提供一致的遙測。 未提供必要遙測的來源,例如強制架構欄位,無法正規化。 不過,通常提供所有必要的遙測的來源,即使有一些差異,也可以正規化。 差異可能會影響查詢結果的完整性。

下表列出已知的差異:

Source 差異
使用 DNS 連接器和 Log Analytics 代理程式收集的 Microsoft DNS 伺服器 連接器不提供原始事件識別碼 264 的必要 DnsQuery 欄位(動態更新的回應)。 資料可在來源取得,但不會由連接器轉送。
Corelight Zeek Corelight Zeek 可能不會提供必要的 DnsQuery 欄位。 在某些情況下,我們已觀察到 DNS 回應碼名稱為 NXDOMAIN 的這類行為。

處理 DNS 回應

在大部分情況下,記錄的 DNS 事件不包含回應資訊,這可能很大且詳細。 如果您的記錄包含更多回應資訊,請將它儲存在 [ResponseName ] 欄位中,因為它出現在記錄中。

您也可以提供稱為 _imDNS<vendor>Response_ 的額外 KQL 函式,它會接受未剖析的回應作為輸入,並傳回具有下列結構的動態值:

[
    {
        "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"
    }
    ...
]

動態值中每個字典中的欄位會對應至每個 DNS 回應中的欄位。 專案 part 應包含 answerauthorityadditional ,以反映字典所屬回應中的元件。

提示

若要確保最佳效能, imDNS<vendor>Response 請只在需要時呼叫 函式,只有在初始篩選之後,才能確保更好的效能。

處理 DNS 旗標

旗標資料不需要剖析和正規化。 請改為將報告裝置提供的旗標資料儲存在 [旗標] 欄位中。 如果判斷個別旗標的值是直接的,您也可以使用專用旗標欄位。

您也可以提供稱為 _imDNS<vendor>Flags_ 的額外 KQL 函式,它會接受未剖析的回應或專用旗標欄位作為輸入,並傳回動態清單,並以下列順序表示每個旗標的布林值:

  • 已驗證 (AD)
  • 權威 (AA)
  • 檢查已停用 (CD)
  • 遞迴可用 (RA)
  • 遞迴預期 (RD)
  • 截斷 (TC)
  • Z

下一步

如需詳細資訊,請參閱