先進安全資訊模型 (ASIM) 輔助功能

先進安全資訊模型 (ASIM) 輔助功能擴充了 KQL 語言,提供有助於與正規化資料互動及撰寫解析器的功能。

富集查找函數

富集查找函數提供了一種簡單的方法,可以根據數值表示來查找已知值。 這類函數很有用,因為事件通常使用簡短的數字代碼,而使用者則偏好文字形式。 大多數函數有兩種形式:

  • 查找版本是一個純量函數,接受數字代碼作為輸入,並回傳文字形式。

    使用以下 KQL 片段搭配 查找 版本:

    | extend ProtocolName = _ASIM_LookupNetworkProtocol (ProtocolNumber)
    
  • 解析版本是一個表格函數,包含:

    • 被用作 KQL 管線操作員。
    • 輸入是存放要查找值的欄位名稱。
    • 設定 ASIM 欄位,通常同時包含輸入值與結果的查詢值。

    解決 版本中,請使用以下 KQL 片段:

    | invoke _ASIM_ResolveNetworkProtocol (`ProtocolNumber`)
    

    該函式會自動將查詢結果填入 ASIM 欄位。

解析版本較適合用於 ASIM 解析器,而查找版本則適合一般查詢。 當豐富查找函數必須回傳多個值時,它總是會使用 解析 格式。

欲了解更多關於 (以查找與解析版本表示的純量函數與表格函數的資訊) ,請參見 Kusto 文件中的 使用者定義函 數。

查找型態函式

函數 輸入* 輸出 描述
_ASIM_LookupDnsQueryType 數值 DNS 查詢類型程式碼 查詢類型名稱 將 RR) 類型的數值 DNS 資源記錄轉換成 IANA 定義 (的名稱
_ASIM_LookupDnsResponseCode 數值 DNS 回應碼 回應代號 將 RCODE) (的數字 DNS 回應碼轉換為 IANA 定義的名稱
_ASIM_LookupICMPType 數值ICMP類型 ICMP 類型名稱 將數值 ICMP 類型轉換為其名稱,依據 IANA 定義
_ASIM_LookupNetworkProtocol IP 協定號碼 IP 協定名稱 將數字IP協定代碼轉換為其名稱,依據IANA定義
_ASIM_LookupHTTPStatusCode HTTP 狀態碼 HTTP 狀態代碼名稱 將 HTTP 狀態碼轉換為 IANA 定義的名稱。 也支援 IIS 及其他網頁伺服器使用的擴展狀態碼。
_ASIM_LookupAADcodes Microsoft Entra ID STS 錯誤代碼 誤差類別 將 Microsoft Entra ID STS 錯誤代碼轉換為其錯誤類別,例如 Logon violates policyNo such user or password或 。

解析型函式

解析格式函式執行與其查找對應函式相同的動作,但接受欄位名稱(以字串常數形式提供)作為輸入,並預設預設欄位作為輸出。 輸入值也會被分配到預設欄位。

函數 擴展場
_ASIM_ResolveDnsQueryType - DnsQueryType 對於輸入值
- DnsQueryTypeName 輸出值為
_ASIM_ResolveDnsResponseCode - DnsResponseCode 對於輸入值
- DnsResponseCodeName 輸出值為
_ASIM_ResolveICMPType - NetworkIcmpCode 對於輸入值
- NetworkIcmpType 查找值
_ASIM_ResolveNetworkProtocol - NetworkProtocolNumber 對於輸入值
- NetworkProtocol 查找值

解析器輔助功能

以下函式執行解析器中常見且有助於加速解析器開發的任務。

裝置解析函數

裝置解析功能分析主機名稱,判斷其是否包含網域資訊及網域符號類型。 這些函式接著填充代表裝置的相關 ASIM 欄位。 所有函式皆為 resolve 型,並接受包含主機名稱的欄位名稱(以字串表示)作為輸入。

函數 擴展場 描述
_ASIM_ResolveFQDN - ExtractedHostname
- Domain
- DomainType
- FQDN
分析指定欄位中的值,並相應設定輸出欄位。 更多資訊請參閱文章中關於開發解析器的 範例
_ASIM_ResolveSrcFQDN - SrcHostname
- SrcDomain
- SrcDomainType
- SrcFQDN
與 類似,但 設定 _ASIM_ResolveFQDNSrc
_ASIM_ResolveDstFQDN - DstHostname
- DstDomain
- DstDomainType
- DstFQDN
與 類似,但 設定 _ASIM_ResolveFQDNDst
_ASIM_ResolveDvcFQDN - DvcHostname
- DvcDomain
- DvcDomainType
- DvcFQDN
與 類似,但 設定 _ASIM_ResolveFQDNDvc

使用者類型功能

使用者類型功能有助於根據使用者名稱模式或安全識別碼 (SID) 來判斷使用者類型。

函數 Input 輸出 描述
_ASIM_GetUsernameType 使用者名稱串 使用者名稱類型 根據使用者名稱格式回傳使用者名稱類型。 可能的值包括 UPN : (代表類似電子郵件的使用者名稱) 、 Windows (代表網域/使用者格式) 、 DN (代表特殊名稱) , Simple或使用者名稱為空則為空。
_ASIM_GetWindowsUserType 使用者名稱字串,SID 字串 使用者類型 根據使用者名稱與安全識別碼 (SID) ,回傳 Windows 系統的使用者類型。 可能的值包括 AdminGuestServiceOtherMachineSystemAnonymousRegular或 。
_ASIM_GetUserType 使用者名稱字串,SID 字串 使用者類型 已過時。 _ASIM_GetWindowsUserType用它代替。 在 Windows 系統中,根據使用者名稱和 SID 來設定使用者類型。

來源識別函數

_ASIM_GetSourceBySourceType 函式會從 Watchlist 中擷取與某來源類型SourceBySourceType相關的來源清單。 此函式設計給解析器撰寫者使用。 欲了解更多資訊,請參閱 使用監視清單依來源類型篩選

_ASIM_GetDisabledParsers 函式會ASimDisabledParsers讀取監視清單,並根據它判斷所提供的參數解析器是否被停用。 此函式由 ASIM 解析器內部使用,以支援停用特定解析器。

觀察清單功能

監視清單函式提供了在 ASIM 解析器中讀取觀察清單的最佳化方法。

函數 Input 輸出 描述
_ASIM_GetWatchlistRaw 監視清單別名 (字串) 、可選鍵值 (動態陣列) 觀察清單項目 讀取一個原始格式的單一監視清單。 效能比一般 _GetWatchlist 功能還高。
_ASIM_GetWatchlistsRaw 動態陣列) (監視清單別名,動態陣列 (選用鍵) 觀察清單項目 能以原始格式閱讀多個觀看清單。 主要的使用情境是提供一個選項,讓同一個監視清單名稱能同時使用多個。

身份豐富函數

身份豐富功能有助於用 UEBA IdentityInfo 表格中的使用者資訊豐富你的資料。

函數 Input 輸出 描述
_ASIM_IdentityInfo 正規化身份資訊表 去重並正規化 IdentityInfo 資料表 ,以提升其查詢時的可用性。 回傳一個已去重的資料表,欄位名稱為 ASIM 正規化。
_ASIM_Enrich_IdentityInfo 輸入表,欄位名稱參數 豐富表 透過 IdentityInfo 表格中的使用者資訊豐富您的結果集。 使用參數指定用於匹配的欄位:AadIdFieldUpnFieldTenantIdFieldSidField或。EmailField