進階安全性資訊模型 (ASIM) 結構描述
進階安全性資訊模型 (ASIM) 結構描述是一組代表活動的欄位。 在查詢中使用標準化結構描述中的欄位,可確保查詢能夠與每個標準化來源搭配運作。
若要了解結構描述如何融入 ASIM 架構內,請參閱 ASIM 架構圖。
結構描述參考會概述組成每個結構描述的欄位。 ASIM 目前定義了下列結構描述:
結構描述 | 版本 | 狀態 |
---|---|---|
稽核事件 | 0.1 | 預覽 |
驗證事件 | 0.1.3 | 預覽 |
DNS 活動 | 0.1.7 | 預覽 |
DHCP 活動 | 0.1 | 預覽 |
檔案活動 | 0.2.1 | 預覽 |
網路工作階段 | 0.2.6 | 預覽 |
處理事件 | 0.1.4 | 預覽 |
登錄事件 | 0.1.2 | 預覽 |
使用者管理 | 0.1 | 預覽 |
Web 工作階段 | 0.2.6 | 預覽 |
重要
ASIM 結構描述和剖析器目前處於預覽狀態。 Azure 預覽補充條款 包含適用於 Azure 功能 (搶鮮版 (Beta)、預覽版,或尚未發行的版本) 的其他法律條款。
結構描述概念
下列概念有助於了解結構描述參考文件,並且可在資料包含結構描述未涵蓋的資訊時,以標準化方式擴充結構描述。
概念 | 描述 |
---|---|
欄位名稱 | 欄位名稱是每個結構描述的核心。 欄位名稱屬於下列群組: - 所有結構描述通用的欄位。 - 結構描述特有的欄位。 - 代表參與結構描述的實體 (例如使用者) 的欄位。 代表實體的欄位在各個結構描述間是類似的。 若來源有欄位未顯示在記載的結構描述中時,這些欄位將會標準化以維持一致性。 如果有額外的欄位代表實體,則會根據實體欄位指導方針將欄位標準化。 否則,結構描述會盡可能在所有結構描述間保持一致性。 例如,雖然 DNS 伺服器活動記錄未提供使用者資訊,但來自端點的 DNS 活動記錄可能包含使用者資訊,而可根據使用者實體指導方針進行標準化。 |
欄位類型 | 每個結構描述欄位都有一個類型。 Log Analytics 工作區有一組有限的資料類型。 基於此原因,Microsoft Sentinel 會將一個邏輯類型用於許多結構描述欄位,雖然 Log Analytics 並不強制執行此原則,但這對結構描述相容性是必要的。 邏輯欄位類型可確保值和欄位名稱在各來源間會保持一致。 如需詳細資訊,請參閱邏輯類型。 |
欄位類別 | 欄位可能有數個類別,會定義剖析器應實作欄位的時機: - 強制欄位必須出現在每個剖析器中。 如果您的來源未提供此值的資訊,或無法新增這項資料,則不支援參考標準化結構描述的多數內容項目。 - 建議欄位應標準化 (如果有的話)。 不過,這些欄位可能並非在每個來源中都適用。 參考該標準化結構描述的任何內容項目都應將可用性納入考慮。 - 選擇性欄位 (如果有的話) 可以標準化或保留為原始格式。 一般而言,基於效能考量,最基本的剖析器不會將其標準化。 如果填入- 條件式欄位跟隨的欄位,則條件式欄位為必要欄位。 條件式欄位通常用來描述另一個欄位中的值。 例如,通用欄位 DvcIdType 描述通用欄位 DvcId 的值,因此在填入後者時為必要欄位。 - 別名是條件式欄位的特殊類型,如果填入別名欄位,則為必要。 |
一般欄位 | 某些欄位適用於所有 ASIM 結構描述。 每個結構描述可能會新增在特定結構描述內容中,使用一些常見欄位的指導方針。 例如,EventType 欄位允許的值可能會因結構描述而有所不同,因為 EventSchemaVersion 欄位的值可能會有所不同。 |
實體 | 事件會隨著諸如使用者、主機、程序或檔案等實體而演進。 每個實體可能都需要數個欄位來加以描述。 例如,主機可能有名稱和 IP 位址。 單一記錄可能包含相同類型的多個實體,例如來源和目的地主機。 ASIM 會定義如何一致地描述實體,而實體會允許擴充結構描述。 例如,雖然網路工作階段結構描述不包含程序資訊,但某些事件來源會提供可新增的程序資訊。 如需詳細資訊,請參閱實體。 |
別名 | 別名允許指定值的多個名稱。 在某些情況下,不同的使用者會預期欄位有不同的名稱。 例如,在 DNS 術語中,您可能會看到名為 DnsQuery 的欄位,但更常見的情況是欄位包含網域名稱。 別名網域藉由允許同時使用這兩個名稱來協助使用者。 在某些情況下,別名可能會有數個欄位之一的值,取決於事件中可用的值。 例如,Dvc 別名、DvcFQDN、DvcId、DvcHostname 或 DvcIpAddr 或 Event Product 欄位。 當別名可以有數個值時,其類型必須是字串,以容納所有可能的別名值。 因此,將值指派給這類別名時,請務必使用 KQL 函式 tostring 將類型轉換成字串。 原生正規化資料表不包含別名,因為這些資料表是表示重複的資料儲存體。 相反地,虛設常式剖析器會新增別名。 若要在剖析器中實作別名,請使用 extend 運算子建立原始值的複本。 |
邏輯類型
每個結構描述欄位都有一個類型。 有些具有內建的 Log Analytics 類型,例如 string
、int
、datetime
或 dynamic
。 有些欄位則具有邏輯類型,用以表示欄位值應如何標準化。
資料類型 | 實體類型 | 格式和值 |
---|---|---|
布林值 | Bool | 使用內建 KQL bool 資料類型,而不是布林值的數值或字串表示法。 |
列舉 | String | 針對欄位明確定義的值清單。 結構描述定義會列出接受的值。 |
日期/時間 | 根據擷取方法功能,以遞減優先順序使用下列任何實體表示法: - Log Analytics 內建日期時間類型 - 使用 Log Analytics 日期時間數值表示法的整數欄位。 - 使用 Log Analytics 日期時間數值表示法的字串欄位 - 儲存支援的 Log Analytics 日期/時間格式的字串欄位。 |
Log Analytics 日期和時間表示法與 Unix 時間表示法類似,但不盡相同。 如需詳細資訊,請參閱轉換指導方針。 注意:如果適用,應調整時間的時區。 |
MAC 位址 | String | 冒號十六進位標記法。 |
IP 位址 | String | Microsoft Sentinel 結構描述沒有個別的 IPv4 和 IPv6 位址。 任何 IP 位址欄位都可能包含 IPv4 位址或 IPv6 位址,如下所示: 以點十進位標記法表示的 - IPv4。 以 8 個十六位元組標記法表示的 - IPv6,允許簡短格式。 例如: - IPv4: 192.168.10.10 - IPv6: FEDC:BA98:7654:3210:FEDC:BA98:7654:3210 - IPv6 簡短格式: 1080::8:800:200C:417A |
FQDN | String | 使用點標記法的完整網域名稱,例如 learn.microsoft.com 。 如需詳細資訊,請參閱裝置實體。 |
主機名稱 | String | 不是 FQDN 的主機名稱,最多包含 63 個字元,包括字母、數字和連字號。 如需詳細資訊,請參閱裝置實體。 |
DomainType | Enumerated | 儲存在網域和 FQDN 欄位中的網域類型。 如需值清單和詳細資訊,請參閱裝置實體。 |
DvcIdType | Enumerated | 儲存在 DvcId 欄位中的裝置識別碼類型。 如需允許的值清單與進一步的資訊,請參閱 DvcIdType。 |
DeviceType | Enumerated | 儲存在 DeviceType 欄位中的裝置類型。 可能的值包括: - Computer - Mobile Device - IOT Device - Other . 如需詳細資訊,請參閱裝置實體。 |
使用者名稱 | String | 其中一個支援的類型中的有效使用者名稱。 如需詳細資訊,請參閱使用者實體。 |
UsernameType | Enumerated | 儲存在使用者名稱欄位中的使用者名稱類型。 如需詳細資訊和支援值清單,請參閱使用者實體。 |
UserIdType | Enumerated | 儲存在使用者識別碼欄位中的識別碼類型。 支援的值為 SID 、UIS 、AADID 、OktaId 、AWSId 和 PUID 。 如需詳細資訊,請參閱使用者實體。 |
UserType | Enumerated | 使用者的類型。 如需詳細資訊和允許值清單,請參閱使用者實體。 |
AppType | Enumerated | 應用程式的類型。 支援的值包括:Process 、 Service 、Resource 、URL 、SaaS application 、CSP 和 Other 。 |
國家/地區 | String | 根據下列優先順序使用 ISO 3166-1 的字串: - Alpha-2 代碼,例如 US 代表美國。 - Alpha-3 代碼,例如 USA 代表美國。 - 簡短名稱。 您可以在國際標準組織 (ISO) 網站上找到代碼清單。 |
區域 | String | 國家/地區細分名稱,使用 ISO 3166-2。 您可以在國際標準組織 (ISO) 網站上找到代碼清單。 |
市/鎮 | String | |
緯度 | Double | ISO 6709 座標表示法 (帶正負號的十進位)。 |
緯度 | Double | ISO 6709 座標表示法 (帶正負號的十進位)。 |
MD5 | String | 32 個十六進位字元。 |
SHA1 | String | 40 個十六進位字元。 |
SHA256 | String | 64 個十六進位字元。 |
SHA512 | String | 128 個十六進位字元。 |
實體
事件會隨著諸如使用者、主機、程序或檔案等實體而演進。 實體表示法可讓相同類型的數個實體成為單一記錄的一部分,並支援相同實體的多個屬性。
若要啟用實體功能,實體表示法具有下列指導方針:
指導方針 | 描述 |
---|---|
描述項和別名 | 由於單一事件常包含相同類型的多個實體 (例如來源和目的地主機),因此描述項會作為首碼,用以識別與特定實體相關聯的所有欄位。 為了維持標準化,ASIM 僅使用少量的標準描述項,並且為實體的特定角色挑選最適當的描述項。 如果某類型只有單一實體與某事件相關,就不需要使用描述項。 此外,一組沒有描述項的欄位會將每個類型最常使用的實體別名化。 |
識別項和類型 | 標準化結構描述允許每個實體有數個識別碼,我們預期這些識別碼會共存於事件中。 如果來源事件具有無法對應至標準化結構描述的其他實體識別碼,請將其保留為來源格式,或使用 AdditionalFields 動態欄位。 若要維護識別碼的類型資訊,請將類型儲存在名稱相同、且尾碼為 Type 的欄位中 (如果適用)。 例如,UserIdType。 |
屬性 | 實體常會有並非作為識別碼的其他屬性,而且也可以使用描述項來限定。 例如,如果來源使用者有網域資訊,則標準化欄位會是 SrcUserDomain。 |
每個結構描述都會明確定義中央實體和實體欄位。 下列指導方針可讓您了解中央結構描述欄位,以及如何使用未明確定義於結構描述中的其他實體或實體欄位,以標準化方式擴充結構描述。
使用者實體
使用者是事件所報告活動的核心。 本節所列的欄位用來描述動作所涉及的使用者。 前置詞用來指定使用者在活動中的角色。 前置詞 Src
和 Dst
用來指定網路相關事件中的使用者角色,來源系統和目的地系統會在此事件中進行通訊。 前置詞 'Actor' 和 'Target' 用於系統導向事件,例如處理序事件。
使用者識別碼和範圍
欄位 | 類別 | 類型 | 描述 |
---|---|---|---|
UserId | 選擇性 | String | 機器可讀取、英數字元且唯一的使用者表示法。 |
UserScope | 選擇性 | 字串 | 定義 UserId 和 Username 的範圍。 例如,Microsoft Entra 租用戶網域名稱。 UserIdType 欄位也代表與此欄位相關聯的類型。 |
UserScopeId | 選擇性 | 字串 | 定義 UserId 和 Username 的範圍識別碼。 例如,Microsoft Entra 租用戶目錄識別碼。 UserIdType 欄位也代表與此欄位相關聯的類型。 |
UserIdType | 選擇性 | UserIdType | UsrId 欄位中所儲存識別碼的類型。 |
UserSid、UserUid、UserAadId、UserOktaId、UserAWSId、UserPuid | 選擇性 | String | 用來儲存特定使用者識別碼的欄位。 請選取和事件關聯性最高的識別碼,作為儲存在 UserId 中的主要識別碼。 除了 UserId 之外,填入相關的特定識別碼欄位,即使事件只有一個識別碼也一樣。 |
UserAADTenant、UserAWSAccount | 選擇性 | String | 用來儲存特定範圍的欄位。 針對與儲存在 UserId 欄位中的識別碼相關聯的範圍,使用 UserScope 欄位。 除了 UserScope 之外,填入相關的特定範圍欄位,即使事件只有一個識別碼也一樣。 |
使用者識別碼類型的允許值為:
類型 | 描述 | 範例 |
---|---|---|
SID | Windows 使用者識別碼。 | S-1-5-21-1377283216-344919071-3415362939-500 |
UID | Linux 使用者識別碼。 | 4578 |
AADID | Microsoft Entra 使用者識別碼。 | 9267d02c-5f76-40a9-a9eb-b686f3ca47aa |
OktaId | Okta 使用者識別碼。 | 00urjk4znu3BcncfY0h7 |
AWSId | AWS 使用者識別碼。 | 72643944673 |
PUID | Microsoft 365 使用者識別碼。 | 10032001582F435C |
SalesforceId | Salesforce 使用者識別碼。 | 00530000009M943 |
使用者名稱
欄位 | 類別 | 類型 | 描述 |
---|---|---|---|
使用者名稱 | 選擇性 | String | 來源使用者名稱,包括網域資訊 (如果可用)。 只有在網域資訊無法使用時,才會使用簡單形式。 將使用者名稱類型儲存在 UsernameType 欄位中。 |
UsernameType | 選擇性 | UsernameType | 指定 Username 欄位中所儲存使用者名稱的類型。 |
UserUPN、WindowsUsername、DNUsername、SimpleUsername | 選擇性 | String | 用來儲存其他使用者名稱的欄位 (若原始事件包含多個使用者名稱)。 請選取和事件關聯性最高的使用者名稱,作為儲存在 Username 中的主要使用者名稱。 |
使用者名稱類型的允許值為:
類型 | 描述 | 範例 |
---|---|---|
UPN | UPN 或電子郵件地址使用者名稱指示項。 | johndow@contoso.com |
Windows | 包含網域的 Windows 使用者名稱。 | Contoso\johndow |
DN | LDAP 辨別名稱指示項。 | CN=Jeff Smith,OU=Sales,DC=Fabrikam,DC=COM |
簡易 | 不含網域指示項的簡單使用者名稱。 | johndow |
AWSId | AWS 使用者識別碼。 | 72643944673 |
其他使用者欄位
欄位 | 類別 | 類型 | 描述 |
---|---|---|---|
UserType | 選擇性 | UserType | 來源使用者的類型。 支援的值包括: - Regular - Machine - Admin - System - Application - Service Principal - Service - Anonymous - Other .此值可能會在來源記錄中使用不同字詞提供,應將其正規化為這些值。 請將原始值儲存在 OriginalUserType 欄位。 |
OriginalUserType | 選擇性 | String | 報告裝置所提供的原始目的地使用者類型。 |
裝置實體
裝置或主機為常見詞彙,用於參與事件的系統。 Dvc
前置詞用來指定事件發生的主要裝置。 某些事件 (例如網路工作階段) 具有由前置詞 Src
和 Dst
所指定的來源和目的地裝置。 在這種情況下,Dvc
前置詞會用於報告事件的裝置,其可能是來源、目的地或監視裝置。
裝置別名
欄位 | 類別 | 類型 | 描述 |
---|---|---|---|
Dvc、Src、Dst | 必要 | String | Dvc 、'Src' 或 'Dst' 欄位會作為裝置的唯一識別碼使用。 此欄位會設定為裝置的最佳可用識別。 這些欄位可以作為 FQDN、DvcId、Hostname 或 IpAddr 欄位的別名。 針對沒有明顯裝置的雲端來源,請使用與 [事件產品] 欄位相同的值。 |
裝置名稱
報告的裝置名稱只能包含主機名稱,或完整網域名稱 (FQDN),FQDN 中包含主機名稱和網域名稱。 FQDN 可能會使用數種格式來表示。 下列欄位可支援可能提供裝置名稱的不同變數。
欄位 | 類別 | 類型 | 描述 |
---|---|---|---|
主機名稱 | 建議需求 | 主機名稱 | 裝置的簡短主機名稱。 |
網域 | 建議需求 | String | 裝置的網域 (事件在此裝置上發生),不含主機名稱。 |
DomainType | 建議需求 | Enumerated | Domain 的類型。 支援的值包括 FQDN 和 Windows 。 若使用 Domain 欄位,則需要此欄位。 |
FQDN | 選擇性 | String | 裝置的 FQDN 包含 Hostname 和 Domain。 此欄位同時支援傳統 FQDN 格式和 Windows 網域\主機名稱格式。 DomainType 欄位會反映所使用的格式。 |
例如:
欄位 | 輸入 appserver.contoso.com 的值 |
輸入 appserver 的值 |
---|---|---|
主機名稱 | appserver |
appserver |
網域 | contoso.con |
<empty> |
DomainType | FQDN |
<empty> |
FQDN | appserver.contoso.com |
<empty> |
當來源提供的值為 FQDN,或者值可能為 FQDN 或簡短主機名稱時,剖析器應計算這 4 個值。 您可使用 ASIM 協助程式函數 _ASIM_ResolveFQDN
、_ASIM_ResolveSrcFQDN
、_ASIM_ResolveDstFQDN
和 _ASIM_ResolveDvcFQDN
,根據單一輸入值輕鬆設定四個欄位。 如需詳細資訊,請參閱 ASIM 協助程式函數。
裝置識別碼和範圍
欄位 | 類別 | 類型 | 描述 |
---|---|---|---|
DvcId | 選擇性 | String | 裝置的唯一識別碼。 例如:41502da5-21b7-48ec-81c9-baeea8d7d669 |
ScopeId | 選擇性 | String | 裝置所屬的雲端平台範圍識別碼。 範圍對應至 Azure 上的訂用帳戶識別碼,以及 AWS 上的帳戶識別碼。 |
Scope | 選擇性 | String | 裝置所屬的雲端平台範圍。 範圍對應至 Azure 上的訂用帳戶,以及 AWS 上的帳戶。 |
DvcIdType | 選擇性 | Enumerated | DvcId 的類型。 一般而言,此欄位也會識別範圍和 ScopeId 類型。 若使用 DvcId,則需要此欄位。 |
DvcAzureResourceId、DvcMDEid、DvcMD4IoTid、DvcVMConnectionId、DvcVectraId、DvcAwsVpcId | 選擇性 | String | 用來儲存其他裝置識別碼的欄位 (若原始事件包含多個裝置識別碼)。 請選取和事件關聯性最高的裝置識別碼,作為儲存在 DvcId 中的主要識別碼。 |
請注意,已命名的欄位前應加上角色前置詞,例如 Src
或 Dst
,但若欄位是在 Dvc 角色中使用,則不應在欄位前加上第二個 Dvc
前置詞。
裝置識別碼類型的允許值為:
類型 | 描述 |
---|---|
MDEid | 由適用於端點的 Microsoft Defender 所指派的系統識別碼。 |
AzureResourceId | Azure 資源識別碼。 |
MD4IoTid | 適用於 IoT 的 Microsoft Defender 資源識別碼。 |
VMConnectionId | Azure 監視器 VM 深入解析解決方案資源識別碼。 |
AwsVpcId | AWS VPC 識別碼。 |
VectraId | Vectra AI 指派的資源識別碼。 |
其他 | 未在上方列出的識別碼類型。 |
例如,Azure 監視器 VM 深入解析解決方案會在 VMConnection
中提供網路工作階段資訊。 下表提供 _ResourceId
欄位中的 Azure 資源識別碼,以及 Machine
欄位中的 VM 深入解析特定裝置識別碼。 請使用下列對應來表示這些識別碼:
欄位 | 對應到 |
---|---|
DvcId | VMConnection 資料表中的 Machine 欄位。 |
DvcIdType | VMConnectionId 值 |
DvcAzureResourceId | VMConnection 資料表中的 _ResourceId 欄位。 |
其他裝置欄位
欄位 | 類別 | 類型 | 描述 |
---|---|---|---|
IpAddr | 建議需求 | IP 位址 | 裝置的 IP 位址。 範例: 45.21.42.12 |
DvcDescription | 選擇性 | String | 與裝置相關聯的描述性文字。 例如: Primary Domain Controller 。 |
MacAddr | 選擇性 | MAC | 發生事件或報告事件裝置的 MAC 位址,視結構描述而定。 範例: 00:1B:44:11:3A:B7 |
區域 | 選擇性 | String | 發生事件或報告事件裝置的網路,視結構描述而定。 區域由報告裝置定義。 範例: Dmz |
DvcOs | 選擇性 | String | 在發生事件或報告事件裝置的作業系統執行。 範例: Windows |
DvcOsVersion | 選擇性 | String | 在發生事件或報告事件裝置的作業系統版本。 範例: 10 |
DvcAction | 選擇性 | String | 針對報告安全性系統,如果適用,則為系統所採取的動作。 範例: Blocked |
DvcOriginalAction | 選擇性 | String | 報告裝置所提供原始的 DvcAction。 |
介面 | 選擇性 | String | 擷取資料的網路介面。 此欄位通常與中繼或點選裝置所擷取的網路相關活動相關聯。 |
請注意,已在清單中以 Dvc 前置詞命名的欄位前應加上角色前置詞,例如 Src
或 Dst
,但若欄位是在 Dvc 角色中使用,則不應在欄位前加上第二個 Dvc
前置詞。
範例實體對應
本節以 Windows 事件 4624 為例,說明 Microsoft Sentinel 的事件資料如何標準化。
此事件具有下列實體:
Microsoft 術語 | 原始事件欄位首碼 | ASIM 欄位首碼 | 描述 |
---|---|---|---|
主體 | Subject |
Actor |
報告成功登入相關資訊的使用者。 |
新增登入 | Target |
TargetUser |
執行登入的使用者。 |
處理 | - | ActingProcess |
嘗試登入的程序。 |
網路資訊 | - | Src |
執行登入嘗試的機器。 |
根據這些實體,Windows 事件 4624 會依照下列方式標準化 (某些欄位是選擇性的):
標準化欄位 | 原始欄位 | 範例中的值 | 備註 |
---|---|---|---|
ActorUserId | SubjectUserSid | S-1-5-18 | |
ActorUserIdType | - | SID | |
ActorUserName | SubjectDomainName\ SubjectUserName | WORKGROUP\WIN-GG82ULGC9GO$ | 藉由串連兩個欄位而建置 |
ActorUserNameType | - | Windows | |
ActorSessionId | SubjectLogonId | 0x3e7 | |
TargetUserId | TargetUserSid | S-1-5-21-1377283216-344919071-3415362939-500 | |
UserId | TargetUserSid | Alias | |
TargetUserIdType | - | SID | |
TargetUserName | TargetDomainName\ TargetUserName | Administrator\WIN-GG82ULGC9GO$ | 藉由串連兩個欄位而建置 |
使用者名稱 | TargetDomainName\ TargetUserName | Alias | |
TargetUserNameType | - | Windows | |
TargetSessionId | TargetLogonId | 0x8dcdc | |
ActingProcessName | ProcessName | C:\Windows\System32\svchost.exe | |
ActingProcessId | ProcessId | 0x44c | |
SrcHostname | WorkstationName | Windows | |
SrcIpAddr | IpAddress | 127.0.0.1 | |
SrcPortNumber | IpPort | 0 | |
TargetHostname | 電腦 | WIN-GG82ULGC9GO | |
主機名稱 | 電腦 | Alias |
下一步
本文提供 Microsoft Sentinel 和 ASIM 中的標準化概觀。
如需詳細資訊,請參閱