進階安全性資訊模型 (ASIM) 結構描述是一組代表活動的欄位。 在查詢中使用標準化結構描述中的欄位,可確保查詢能夠與每個標準化來源搭配運作。
若要了解結構描述如何融入 ASIM 架構內,請參閱 ASIM 架構圖。
結構描述參考會概述組成每個結構描述的欄位。 ASIM 目前定義了下列結構描述:
| 結構描述 | 版本 | 狀態 |
|---|---|---|
| 警示事件 | 0.1 | GA |
| 稽核事件 | 0.1.2 | GA |
| 驗證事件 | 0.1.4 | GA |
| DNS 活動 | 0.1.7 | GA |
| DHCP 活動 | 0.1.1 | GA |
| 檔案活動 | 0.2.2 | GA |
| 網路工作階段 | 0.2.7 | GA |
| 處理事件 | 0.1.4 | GA |
| 登錄事件 | 0.1.3 | GA |
| 使用者管理 | 0.1.2 | GA |
| Web 工作階段 | 0.2.7 | GA |
欄位命名
欄位名稱是每個結構描述的核心。 欄位名稱屬於以下群組:
- 所有結構共有的欄位。
- 特定架構的欄位。
- 表示實體的欄位,例如參與架構的使用者。 代表實體的欄位在各個結構描述間是類似的。
若來源有欄位未顯示在記載的結構描述中時,這些欄位將會標準化以維持一致性。 如果有額外的欄位代表實體,則會根據實體欄位指導方針將欄位標準化。 否則,結構描述會盡可能在所有結構描述間保持一致性。
例如,雖然 DNS 伺服器活動記錄未提供使用者資訊,但來自端點的 DNS 活動記錄可能包含使用者資訊,而可根據使用者實體指導方針進行標準化。
一般欄位
某些欄位適用於所有 ASIM 結構描述。 每個結構描述可能會新增在特定結構描述內容中,使用一些常見欄位的指導方針。 例如,EventType 欄位允許的值可能會因結構描述而有所不同,因為 EventSchemaVersion 欄位的值可能會有所不同。
欄位類別
欄位可能有數個類別,定義何時應由解析器實作欄位:
- 每個解析器中必須出現強制欄位。 如果您的來源未提供此值的資訊,或無法新增這項資料,則不支援參考標準化結構描述的多數內容項目。
- 建議的欄位若有,應被正規化。 不過,這些欄位可能並非在每個來源中都適用。 參考該標準化結構描述的任何內容項目都應將可用性納入考慮。
- 若有可選欄位,可正規化或保持原始形式。 一般而言,基於效能考量,最基本的剖析器不會將其標準化。
- 條件欄位是必須的,前提是條件欄位所跟隨的欄位已被填入。 條件式欄位通常用來描述另一個欄位中的值。 例如,通用欄位 DvcIdType 描述通用欄位 DvcId 的值,因此在填入後者時為必要欄位。
- 別名 是一種特殊類型的條件欄位,若填入已別名欄位,則是必須的。
實體
事件會隨著諸如使用者、主機、程序或檔案等實體而演進。 每個實體可能都需要數個欄位來加以描述。 例如,主機可能有名稱和 IP 位址。
單一記錄可能包含相同類型的多個實體,例如來源和目的地主機。
ASIM 會定義如何一致地描述實體,而實體會允許擴充結構描述。
例如,雖然網路工作階段結構描述不包含程序資訊,但某些事件來源會提供可新增的程序資訊。 如需詳細資訊,請參閱實體。
若要啟用實體功能,實體表示法具有下列指導方針:
| 指導方針 | 描述 |
|---|---|
| 前綴與混疊 | 由於單一事件通常包含多個相同類型的實體,例如來源主機與目的地主機,因此會 使用前綴 來識別欄位所關聯的實體。 為了維持正規化,ASIM 使用一小組標準前綴,根據實體的特定角色挑選最合適的前綴。 如果某個類型的單一實體與事件相關,則不需要使用前綴。 此外,一組沒有前綴的欄位會將每種類型最常用的實體別名化。 |
| 識別項和類型 | 標準化結構描述允許每個實體有數個識別碼,我們預期這些識別碼會共存於事件中。 如果來源事件具有無法對應至標準化結構描述的其他實體識別碼,請將其保留為來源格式,或使用 AdditionalFields 動態欄位。 若要維護識別碼的類型資訊,請將類型儲存在名稱相同、且尾碼為 Type 的欄位中 (如果適用)。 例如,UserIdType。 |
| 屬性 | 實體常會有並非作為識別碼的其他屬性,而且也可以使用描述項來限定。 例如,如果來源使用者有網域資訊,則標準化欄位會是 SrcUserDomain。 |
欲了解更多具體實體類型的資訊,請參閱:
Aliases
別名允許指定值的多個名稱。 在某些情況下,不同的使用者會預期欄位有不同的名稱。 例如,在 DNS 術語中,您可能會看到名為 DnsQuery 的欄位,但更常見的情況是欄位包含網域名稱。 別名網域藉由允許同時使用這兩個名稱來協助使用者。
備註
別名的目的是協助分析師進行互動式查詢。 在可重複使用內容(如 asn 自訂偵測、分析規則或工作簿)中查詢時,請使用別名欄位而非別名。 使用別名欄位可確保效能提升、錯誤減少及查詢的可讀性更佳。
在某些情況下,別名可能會有數個欄位之一的值,取決於事件中可用的值。 例如,Dvc 別名、DvcFQDN、DvcId、DvcHostname 或 DvcIpAddr 或 Event Product 欄位。 當別名可以有數個值時,其類型必須是字串,以容納所有可能的別名值。 因此,將值指派給這類別名時,請務必使用 KQL 函式 tostring 將類型轉換成字串。
原生正規化資料表不包含別名,因為這些資料表是表示重複的資料儲存體。 相反地,虛設常式剖析器會新增別名。 若要在剖析器中實作別名,請使用 extend 運算子建立原始值的複本。
邏輯類型
每個結構描述欄位都有一個類型。 Log Analytics 工作區有一組有限的資料類型。 基於此原因,Microsoft Sentinel 會將一個邏輯類型用於許多結構描述欄位,雖然 Log Analytics 並不強制執行此原則,但這對結構描述相容性是必要的。 邏輯欄位類型可確保值和欄位名稱在各來源間會保持一致。
| 資料類型 | 實體類型 | 格式和值 |
|---|---|---|
| 布林值 | 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 個字元,包括字母、數字和連字號。 如需詳細資訊,請參閱裝置實體。 |
| Domain | String | FQDN 的網域部分,不包含主機名稱,例如 learn.microsoft.com。 如需詳細資訊,請參閱裝置實體。 |
| DomainType | Enumerated | 儲存在網域和 FQDN 欄位中的網域類型。 如需值清單和詳細資訊,請參閱裝置實體。 |
| DvcIdType | Enumerated | 儲存在 DvcId 欄位中的裝置識別碼類型。 如需允許的值清單與進一步的資訊,請參閱 DvcIdType。 |
| 裝置類型 | Enumerated | 儲存在 DeviceType 欄位中的裝置類型。 可能的值包括: - Computer- Mobile Device- IOT Device- Other。 如需詳細資訊,請參閱裝置實體。 |
| 使用者名稱 | String | 其中一個支援的類型中的有效使用者名稱。 如需詳細資訊,請參閱使用者實體。 |
| 使用者名稱類型 | Enumerated | 儲存在使用者名稱欄位中的使用者名稱類型。 如需詳細資訊和支援值清單,請參閱使用者實體。 |
| 使用者 ID 類型 | Enumerated | 儲存在使用者識別碼欄位中的識別碼類型。 支援的值為 SID、UIS、AADID、OktaId、AWSId 和 PUID。 如需詳細資訊,請參閱使用者實體。 |
| 使用者類型 | Enumerated | 使用者的類型。 如需詳細資訊和允許值清單,請參閱使用者實體。 |
| 應用程式類型 | Enumerated | 應用程式的類型。 有關支援值的清單,請參見 應用程式實體。 |
| 國家/地區 | 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 個十六進位字元。 |
| ConfidenceLevel | 整數 | 置信水準標準化為0到100。 |
| RiskLevel | 整數 | 風險等級標準化為0到100。 |
| SchemaVersion | String | ASIM 架構版本的格式 <major>.<minor>.<sub-minor> |
| DnsQueryClassName | String | DNS 類別名稱。 |
| 使用者名稱 | String | 簡單格式的或受網域認證的使用者名稱 |
範例實體對應
本節以 Windows 事件 4624 為例,說明 Microsoft Sentinel 的事件資料如何標準化。
此事件具有下列實體:
| Microsoft 術語 | 原始事件欄位首碼 | ASIM 欄位首碼 | 描述 |
|---|---|---|---|
| 主旨 | Subject |
Actor |
報告成功登入相關資訊的使用者。 |
| 新增登入 | Target |
TargetUser |
執行登入的使用者。 |
| 處理 | - | ActingProcess |
嘗試登入的程序。 |
| 網路資訊 | - | Src |
執行登入嘗試的機器。 |
根據這些實體,Windows 事件 4624 會依照下列方式標準化 (某些欄位是選擇性的):
| 標準化欄位 | 原始欄位 | 範例中的值 | 注意 |
|---|---|---|---|
| ActorUserId | SubjectUserSid | S-1-5-18 | |
| ActorUserIdType | - | SID | |
| ActorUserName | 主題域名\主題使用者名稱 | 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 中的標準化概觀。
如需詳細資訊,請參閱