進階安全性資訊模型 (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 要求流程,包括四個區段。 真實世界的要求可能更為複雜,涉及更多區段。
由於要求和回應區段不會在 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 | 字串 | 僅篩選來自此來源IP位址的 DNS 查詢。 |
domain_has_any | 動態/字串 | 僅篩選 DNS 查詢, domain 其中 (或 query ) 具有任何列出的功能變數名稱,包括作為事件網域的一部分。 清單的長度限制為10,000個專案。 |
responsecodename | 字串 | 僅篩選回應碼名稱符合所提供值的 DNS 查詢。 例如: NXDOMAIN |
response_has_ipv4 | 字串 | 僅篩選回應欄位包含所提供IP位址或IP位址前置的 DNS 查詢。 當您想要篩選單一IP位址或前置詞時,請使用此參數。 未提供回應的來源不會傳回結果。 |
response_has_any_prefix | dynamic | 僅篩選回應欄位包含任何列出的IP位址或IP位址前綴的 DNS 查詢。 前置詞應該以 . 結尾,例如: 10.0. 。 當您想要篩選 IP 位址或前置詞清單時,請使用此參數。 未提供回應的來源不會傳回結果。 清單的長度限制為10,000個專案。 |
eventtype | 字串 | 只篩選指定類型的 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 | 必要 | Enumerated | 指出記錄所報告的作業。 針對 DNS 記錄,此值會是 DNS 作業程式代碼。 範例: Query |
EventSubType | 選擇性 | Enumerated | request 或 response 。 對大部分來源而言, 只會記錄回應,因此值通常是 回應。 |
EventResultDetails | 必要 | Enumerated | 針對 DNS 事件,此欄位會提供 DNS 回應碼。 注意: - IANA 不會定義值的案例,因此分析必須正規化案例。 - 如果來源只提供數值回應碼,而不是響應碼名稱,剖析器必須包含查閱表格,才能使用此值進行擴充。 - 如果此記錄代表要求而非回應,請將 設定為 NA。 範例: NXDOMAIN |
EventSchemaVersion | 必要 | String | 這裡記載的架構版本是 0.1.7。 |
EventSchema | 必要 | String | 這裡記載的架構名稱是 Dns。 |
Dvc 欄位 | - | - | 針對 DNS 事件,裝置欄位會參考報告 DNS 事件的系統。 |
所有通用欄位
下表中顯示的欄位適用於所有 ASIM 架構。 上述任何指定的指導方針會覆寫欄位的一般指導方針。 例如,欄位通常是選擇性的,但特定架構的必要專案。 如需每個欄位的進一步詳細數據,請參閱 ASIM 通用欄位 一文。
來源系統欄位
欄位 | 類別 | 類型 | 描述 |
---|---|---|---|
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 | 選擇性 | Country | 與來源IP位址相關聯的國家/地區。 範例: USA |
SrcGeoRegion | 選擇性 | 區域 | 與來源IP位址相關聯的區域。 範例: Vermont |
SrcGeoCity | 選擇性 | 縣/市 | 與來源IP位址相關聯的城市。 範例: Burlington |
SrcGeoLatitude | 選擇性 | 緯度 | 與來源IP位址相關聯的地理座標緯度。 範例: 44.475833 |
SrcGeoLongitude | 選擇性 | 經度 | 與來源IP位址相關聯的地理座標經度。 範例: 73.211944 |
SrcRiskLevel | 選擇性 | 整數 | 與來源相關聯的風險層級。 此值應調整為 的範圍,0 100 並0 針對良性和100 高風險。範例: 90 |
SrcOriginalRiskLevel | 選擇性 | 整數 | 與來源相關聯的風險層級,如報告裝置所報告。 範例: Suspicious |
SrcHostname | 建議需求 | String | 來源裝置主機名,不包括網域資訊。 範例: DESKTOP-1282V4D |
主機名稱 | Alias | SrcHostname 的 別名 | |
SrcDomain | 建議需求 | String | 來源裝置的網域。 範例: Contoso |
SrcDomainType | 條件 | Enumerated | 如果已知,則為 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 | 條件 | Enumerated | 如果已知,則為 SrcDvcId 的類型。 可能的值包括: - AzureResourceId - MDEid 如果有多個標識碼可用,請使用清單中的第一個標識符,並將其他標識符分別儲存在 SrcDvcAzureResourceId 和 SrcDvcMDEid 中。 注意:如果使用 SrcDvcId ,則需要此欄位。 |
SrcDeviceType | 選擇性 | Enumerated | 來源裝置的類型。 可能的值包括: - 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 目錄標識符。 如需允許值的詳細資訊和清單,請參閱架構概觀一文中的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 | 選擇性 | Country | 與目的地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 | 條件 | Enumerated | 如果已知,則為 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 | 條件 | Enumerated | 如果已知,則為 DstDvcId 的類型。 可能的值包括: - AzureResourceId - MDEidIf 如果有多個標識碼可用,請使用上述清單中的第一個標識符,並將其他標識符分別儲存在 DstDvcAzureResourceId 或 DstDvcMDEid 欄位中。 如果使用 DstDeviceId ,則為必要專案。 |
DstDeviceType | 選擇性 | Enumerated | 目的地裝置的類型。 可能的值包括: - 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 | 建議需求 | Enumerated | 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 | 選擇性 | Enumerated | 網路解析事件所使用的傳輸通訊協定。 此值可以是 UDP 或 TCP,而且最常設定為 DNS 的 UDP。 範例: UDP |
NetworkProtocolVersion | 選擇性 | Enumerated | NetworkProtocol 的版本。 使用它來區別 IP 版本時,請使用 值 IPv4 和 IPv6 。 |
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 | 選擇性 | 字串 | 報告裝置所報告的 DNS 會話標識碼。 此值與 TransactionIdHex 不同,這是 DNS 用戶端指派的 DNS 查詢唯一標識符。 範例: EB4BFA28-2EAD-4EF7-BC8A-51DF4FDF5B55 |
SessionId | Alias | DnsSessionId 的別名 | |
DnsResponseIpCountry | 選擇性 | Country | 與 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 | 條件 | Enumerated | 識別威脅的欄位。 值為 SrcIpAddr 、、 DstIpAddr Domain 或 DnsResponseName 。 |
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版中的變更如下:
- 新增欄位
EventSchema
。 - 已新增專用旗標欄位,可增強合併旗標欄位:
DnsFlagsAuthoritative
、DnsFlagsCheckingDisabled
、DnsFlagsRecursionAvailable
、、DnsFlagsRecursionDesired
、DnsFlagsTruncated
和DnsFlagsZ
。
架構0.1.3版中的變更如下:
- 架構現在會明確記載
Src*
、Dst*
Process*
和User*
欄位。 - 已新增更多
Dvc*
欄位,以符合最新的通用欄位定義。 - 將
Src
和Dst
新增為來源和目的地系統前置標識符的別名。 - 已將選擇性
DnsNetworkDuration
和 新增Duration
至它的別名。 - 已新增選擇性的 [地理位置] 和 [風險層級] 欄位。
架構0.1.4版中的變更如下:
- 已新增選擇性欄位
ThreatIpAddr
、ThreatField
、、、ThreatOriginalRiskLevel
ThreatConfidence
ThreatName
ThreatOriginalConfidence
、、ThreatIsActive
、ThreatFirstReportedTime
和 。ThreatLastReportedTime
架構0.1.5版中的變更如下:
- 新增欄
SrcUserScope
位、SrcUserSessionId
、、、SrcDvcScopeId
、DstDvcScopeId
SrcDvcScope
、DstDvcScope
、DvcScopeId
和DvcScope
。
架構0.1.6版的變更如下:
- 已新增、
DnsResponseIpRegion
、DnsResponseIpCity
、DnsResponseIpLatitude
和DnsResponseIpLongitude
欄位DnsResponseIpCountry
。
架構0.1.7版中的變更如下:
- 已新增
SrcDescription
欄位、SrcOriginalRiskLevel
、、DstOriginalRiskLevel
RuleName
Rule
NetworkProtocolVersion
SrcUserScopeId
DstDescription
RuleNumber
和 。ThreatId
來源特定差異
正規化的目標是確保所有來源都提供一致的遙測。 未提供必要遙測的來源,例如強制架構欄位,無法正規化。 不過,通常提供所有必要的遙測的來源,即使有一些差異,也可以正規化。 差異可能會影響查詢結果的完整性。
下表列出已知的差異:
來源 | 差異 |
---|---|
Microsoft使用 DNS 連接器和 Log Analytics 代理程式收集的 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
應包含 answer
、 authority
或 additional
,以反映字典所屬回應中的元件。
提示
若要確保最佳效能, imDNS<vendor>Response
請只在需要時呼叫 函式,只有在初始篩選之後,才能確保更好的效能。
處理 DNS 旗標
旗標數據不需要剖析和正規化。 請改為將報告裝置提供的旗標數據儲存在 [旗標] 字段中。 如果判斷個別旗標的值是直接的,您也可以使用專用旗標欄位。
您也可以提供稱為 _imDNS<vendor>Flags_
的額外 KQL 函式,它會接受未剖析的回應或專用旗標欄位作為輸入,並傳回動態清單,並以下列順序表示每個旗標的布爾值:
- 已驗證 (AD)
- 權威 (AA)
- 檢查已停用 (CD)
- 遞迴可用 (RA)
- 遞迴預期 (RD)
- 截斷 (TC)
- Z
下一步
如需詳細資訊,請參閱