Microsoft Sentinel アラート スキーマは、さまざまな製品からのセキュリティ関連のアラートを、Microsoft Advanced Security Information Model (ASIM) 内の標準化された形式に正規化するように設計されています。 このスキーマは、セキュリティ イベントのみに焦点を当て、さまざまなデータ ソース間で一貫性のある効率的な分析を保証します。
アラート スキーマは、脅威、疑わしいアクティビティ、ユーザーの動作の異常、コンプライアンス違反など、さまざまな種類のセキュリティ アラートを表します。 これらのアラートは、EDR、ウイルス対策ソフトウェア、侵入検出システム、データ損失防止ツールなど、さまざまなセキュリティ製品およびシステムによって報告されます。これらに限定されません。
Microsoft Sentinelでの正規化の詳細については、「正規化と高度なセキュリティ情報モデル (ASIM)」を参照してください。
パーサー
ASIM パーサーの詳細については、 ASIM パーサーの概要に関するページを参照してください。
パーサーの統合
すべての ASIM アウト オブ ザ ボックス パーサーを統合し、構成されているすべてのソースで分析が確実に実行されるようにするパーサーを使用するには、 _Im_AlertEvent パーサーを使用します。
すぐに使用するソース固有のパーサー
すぐに使用できるアラート パーサー Microsoft Sentinelの一覧については、ASIM パーサーの一覧を参照してください。
独自の正規化されたパーサーを追加する
アラート情報モデルの カスタム パーサーを開発 する場合は、次の構文を使用して KQL 関数に名前を付けます。
-
vimAlertEvent<vendor><Product>パラメーター化されたパーサーの場合 -
ASimAlertEvent<vendor><Product>通常のパーサーの場合
カスタム パーサーをアラート統合パーサーに追加する方法については、 ASIM パーサーの管理 に関する記事を参照してください。
パーサー パラメーターのフィルター処理
アラート パーサーでは、クエリのパフォーマンスを向上させるために、さまざまな フィルター パラメーター がサポートされています。 これらのパラメーターは省略可能ですが、クエリのパフォーマンスを向上させることができます。 次のフィルター パラメーターを使用できます。
| 名前 | 型 | 説明 |
|---|---|---|
| starttime | 日付型 | この時刻以降に開始されたアラートのみをフィルター処理します。 このパラメーターは、EventStartTime フィールドと EventEndTime フィールドのパーサー固有のマッピングに関係なく、イベントの時刻の標準指定子である TimeGenerated フィールドでフィルター処理します。 |
| endtime | 日付型 | この時刻以前に開始されたアラートのみをフィルター処理します。 このパラメーターは、EventStartTime フィールドと EventEndTime フィールドのパーサー固有のマッピングに関係なく、イベントの時刻の標準指定子である TimeGenerated フィールドでフィルター処理します。 |
| ipaddr_has_any_prefix | 動的 | "DvcIpAddr" フィールドが一覧表示されている値のいずれかに含まれるアラートのみをフィルター処理します。 |
| hostname_has_any | 動的 | "DvcHostname" フィールドが一覧表示されている値のいずれかに含まれるアラートのみをフィルター処理します。 |
| username_has_any | 動的 | [Username]\( ユーザー名 \) フィールドが一覧表示されている値のいずれかに含まれるアラートのみをフィルター処理します。 |
| attacktactics_has_any | 動的 | [AttackTactics] フィールドが一覧表示されている値のいずれかに含まれるアラートのみをフィルター処理します。 |
| attacktechniques_has_any | 動的 | [AttackTechniques] フィールドが一覧表示されている値のいずれかに含まれるアラートのみをフィルター処理します。 |
| threatcategory_has_any | 動的 | [ThreatCategory] フィールドが一覧表示されている値のいずれかに含まれるアラートのみをフィルター処理します。 |
| alertverdict_has_any | 動的 | [AlertVerdict] フィールドが一覧表示されている値のいずれかに含まれるアラートのみをフィルター処理します。 |
| eventseverity_has_any | 動的 | "EventSeverity" フィールドが一覧表示されている値のいずれかに含まれるアラートのみをフィルター処理します。 |
スキーマの概要
アラート スキーマは、同じフィールドを共有するいくつかの種類のセキュリティ イベントを提供します。 これらのイベントは、EventType フィールドによって識別されます。
- 脅威情報: マルウェア、フィッシング、ランサムウェア、その他のサイバー脅威など、さまざまな種類の悪意のあるアクティビティに関連するアラート。
- 不審なアクティビティ: 脅威が必ずしも確認されていないが疑わしいアクティビティに対するアラート。また、複数のログイン試行の失敗や制限されたファイルへのアクセスなど、さらなる調査が必要です。
- ユーザー動作の異常: 異常なログイン時刻や異常なデータ アクセス パターンなど、セキュリティの問題を示唆する可能性がある、異常または予期しないユーザーの動作を示すアラート。
- コンプライアンス違反: 規制または内部ポリシーへの非準拠に関連するアラート。 たとえば、オープン パブリック ポートで公開されている VM は、攻撃に対して脆弱です (クラウド セキュリティ アラート)。
重要
アラート スキーマの関連性と有効性を維持するには、セキュリティ関連のアラートのみをマップする必要があります。
アラート スキーマは、アラートに関する詳細をキャプチャするために、次のエンティティを参照します。
-
Dvc フィールドは、アラートに関連付けられているホストまたは Ip に関する詳細をキャプチャするために使用されます
-
ユーザー フィールドは、アラートに関連付けられているユーザーに関する詳細をキャプチャするために使用されます。
- 同様に、プロセス、ファイル、Url、レジストリ、およびEmailフィールドは、それぞれアラートに関連付けられているプロセス、ファイル、URL、レジストリ、電子メールに関する重要な詳細のみをキャプチャするために使用されます。
重要
- 製品固有のパーサーを構築するときは、アラートにセキュリティ インシデントまたは潜在的な脅威に関する情報が含まれており、プライマリの詳細を使用可能なアラート スキーマ フィールドに直接マップできる場合は、ASIM アラート スキーマを使用します。 アラート スキーマは、広範なエンティティ固有のフィールドを含まない概要情報をキャプチャするのに最適です。
- ただし、直接フィールドの一致がないために "AdditionalFields" に重要なフィールドを配置している場合は、より特殊なスキーマを検討してください。 たとえば、複数の IP アドレス (SrcIpAdr、DstIpAddr、PortNumber など) などのネットワーク関連の詳細がアラートに含まれている場合は、アラート スキーマよりも NetworkSession スキーマを選択できます。 また、特殊なスキーマは、脅威に関連する情報をキャプチャし、データ品質を向上させ、効率的な分析を容易にするための専用フィールドも提供します。
スキーマの詳細
一般的な ASIM フィールド
次の一覧では、アラート イベントに関する特定のガイドラインがあるフィールドについて説明します。
| フィールド | クラス | 型 | 説明 |
|---|---|---|---|
| EventType | 必須 | 列挙 | イベントの種類。 サポートされている値は次のとおりです。 - Alert |
| EventSubType | 推奨 | 列挙 | アラート イベントのサブタイプまたはカテゴリを指定し、より広範なイベント分類内でより詳細な詳細を提供します。 このフィールドは、検出された問題の性質を区別し、インシデントの優先順位付けと対応戦略を改善するのに役立ちます。 サポートされている値は、次のとおりです。 - Threat (システムまたはネットワークを侵害する可能性のある、確認済みまたは可能性の高い悪意のあるアクティビティを表します)- Suspicious Activity (フラグの動作または異常または疑わしいと思われるイベント (まだ悪意があるとは確認されていません)- Anomaly (潜在的なセキュリティ リスクまたは運用上の問題を示す可能性がある通常のパターンからの逸脱を識別します)- Compliance Violation (規制、ポリシー、またはコンプライアンスの基準に違反するアクティビティを強調します) |
| EventUid | 必須 | string | システム内のアラートを一意に識別する、コンピューターが読み取り可能な英数字の文字列。 例えば。 A1bC2dE3fH4iJ5kL6mN7oP8qR9s |
| EventMessage | 省略可能 | string | コンテキスト、原因、潜在的な影響など、アラートに関する詳細情報。 例えば。 Potential use of the Rubeus tool for kerberoasting, a technique used to extract service account credentials from Kerberos tickets. |
| IpAddr | Alias | フィールドのエイリアスまたはフレンドリ名 DvcIpAddr 。 |
|
| Hostname | Alias | フィールドのエイリアスまたはフレンドリ名 DvcHostname 。 |
|
| EventSchema | 必須 | 列挙 | イベントに使用されるスキーマ。 ここに記載されているスキーマは AlertEvent。 |
| EventSchemaVersion | 必須 | SchemaVersion (String) | スキーマのバージョン。 ここに記載されているスキーマのバージョンは 0.1。 |
すべての共通フィールド
次の表に示すフィールドは、すべての ASIM スキーマに共通です。 上記で指定したガイドラインは、フィールドの一般的なガイドラインをオーバーライドします。 たとえば、フィールドは一般的には省略可能ですが、特定のスキーマでは必須です。 各フィールドの詳細については、 ASIM 共通フィールド に関する記事を参照してください。
| クラス | フィールド |
|---|---|
| 必須 |
-
EventCount - EventStartTime - EventEndTime - Eventtype - EventUid - EventProduct - EventVendor - EventSchema - EventSchemaVersion |
| 推奨 |
-
EventSubType - EventSeverity - DvcIpAddr - DvcHostname - DvcDomain - DvcDomainType - DvcFQDN - DvcId - DvcIdType |
| 省略可能 |
-
EventMessage - EventOriginalType - EventOriginalSubType - EventOriginalSeverity - EventProductVersion - EventOriginalUid - EventReportUrl - EventResult - EventOwner - DvcZone - DvcMacAddr - DvcOs - DvcOsVersion - DvcAction - DvcOriginalAction - DvcInterface - AdditionalFields - DvcDescription - DvcScopeId - DvcScope |
検査フィールド
次の表では、アラートに関連付けられているルールと脅威に関する重要な分析情報を提供するフィールドについて説明します。 これらを組み合わせることで、アラートのコンテキストを強化し、セキュリティ アナリストがその発生元と重要性を理解しやすくなります。
| フィールド | クラス | 型 | 説明 |
|---|---|---|---|
| AlertId | Alias | string | フィールドのエイリアスまたはフレンドリ名 EventUid 。 |
| AlertName | 推奨 | string | アラートのタイトルまたは名前。 例えば。 Possible use of the Rubeus kerberoasting tool |
| AlertDescription | Alias | string | フィールドのエイリアスまたはフレンドリ名 EventMessage 。 |
| AlertVerdict | 省略可能 | 列挙 | アラートが脅威として確認されたか、疑わしいと見なされたか、誤検知として解決されたかを示す、アラートの最終的な決定または結果。 サポートされている値は次のとおりです。 - True Positive (正当な脅威として確認)- False Positive (脅威として誤って識別)- Benign Positive (イベントが無害であると判断された場合)- Unknown (不確実または未確定の状態) |
| AlertStatus | 省略可能 | 列挙 | アラートの現在の状態または進行状況を示します。 サポートされている値は次のとおりです。 - Active- Closed |
| AlertOriginalStatus | 省略可能 | string | 発生元システムによって報告されたアラートの状態。 |
| DetectionMethod | 省略可能 | 列挙 | アラートの生成に貢献した特定の検出方法、テクノロジ、またはデータ ソースに関する詳細情報を提供します。 このフィールドは、アラートがどのように検出またはトリガーされたかについてのより深い洞察を提供し、検出コンテキストと信頼性の理解に役立ちます。 サポートされている値は、次のとおりです。 - EDR: エンドポイントアクティビティを監視および分析して脅威を特定するエンドポイント検出および応答システム。- Behavioral Analytics: ユーザー、デバイス、またはシステムの動作の異常なパターンを検出する手法。- Reputation: IP アドレス、ドメイン、またはファイルの評判に基づく脅威検出。- Threat Intelligence: 既知の脅威または敵対的な戦術に関するデータを提供する外部または内部のインテリジェンス フィード。- Intrusion Detection: 侵入や攻撃の兆候がないかネットワーク トラフィックまたはアクティビティを監視するシステム。- Automated Investigation: アラートを分析および調査し、手動ワークロードを削減する自動システム。- Antivirus: 署名とヒューリスティックに基づいてマルウェアを検出する従来のウイルス対策エンジン。- Data Loss Prevention: 不正なデータ転送や漏洩の防止に重点を置いたソリューション。- User Defined Blocked List: 特定の IP、ドメイン、またはファイルをブロックするためにユーザーによって定義されたカスタム リスト。- Cloud Security Posture Management: クラウド環境のセキュリティ リスクを評価および管理するツール。- Cloud Application Security: クラウド アプリケーションとデータをセキュリティで保護するソリューション。- Scheduled Alerts: 定義済みのスケジュールまたはしきい値に基づいて生成されたアラート。- Other: 上記のカテゴリでカバーされていないその他の検出方法。 |
| Rule | Alias | string | RuleName の値、または RuleNumber の値のいずれか。 RuleNumber の値を使用する場合は、型を文字列に変換する必要があります。 |
| RuleNumber | 省略可能 | int | アラートに関連付けられているルールの数。 例えば。 123456 |
| RuleName | 省略可能 | string | アラートに関連付けられているルールの名前または ID。 例えば。 Server PSEXEC Execution via Remote Access |
| RuleDescription | 省略可能 | string | アラートに関連付けられているルールの説明。 例えば。 This rule detects remote execution on a server using PSEXEC, which may indicate unauthorized administrative activity or lateral movement within the network |
| ThreatId | 省略可能 | string | アラートで特定された脅威またはマルウェアの ID。 例えば。 1234567891011121314 |
| ThreatName | 省略可能 | string | アラートで特定された脅威またはマルウェアの名前。 例えば。 Init.exe |
| ThreatFirstReportedTime | 省略可能 | 日付型 | 脅威が最初に報告された日時。 例えば。 2024-09-19T10:12:10.0000000Z |
| ThreatLastReportedTime | 省略可能 | 日付型 | 脅威が最後に報告された日時。 例えば。 2024-09-19T10:12:10.0000000Z |
| ThreatCategory | 推奨 | 列挙 | アラートで特定された脅威またはマルウェアのカテゴリ。 サポートされる値は、 Malware、 Ransomware、 Trojan、 Virus、 Worm、 Adware、 Spyware、 Rootkit、 Cryptominor、 Phishing、 Spam、 MaliciousUrl、 Spoofing、 Security Policy Violation、 Unknown |
| ThreatOriginalCategory | 省略可能 | string | 送信元システムによって報告される脅威のカテゴリ。 |
| ThreatIsActive | 省略可能 | bool | 脅威が現在アクティブかどうかを示します。 サポートされる値: True、 False |
| ThreatRiskLevel | 省略可能 | RiskLevel (整数) | 脅威に関連付けられているリスク レベル。 レベルは 0 ~ 100 の数値にする必要があります。 注: この値は、このスケールに正規化する必要がある別のスケールを使用してソース レコードに提供される場合があります。 元の値は ThreatRiskLevelOriginal に格納する必要があります。 |
| ThreatOriginalRiskLevel | 省略可能 | string | 発生元システムによって報告されるリスク レベル。 |
| ThreatConfidence | 省略可能 | ConfidenceLevel (整数) | 特定された脅威の信頼レベルを、0 から 100 の値に正規化します。 |
| ThreatOriginalConfidence | 省略可能 | string | 元のシステムによって報告される信頼レベル。 |
| IndicatorType | 推奨 | 列挙 | インジケーターの種類またはカテゴリ サポートされている値は次のとおりです。 - Ip- User- Process- Registry- Url- Host- Cloud Resource- Application- File- Email- Mailbox- Logon Session |
| IndicatorAssociation | 省略可能 | 列挙 | インジケーターが脅威にリンクされているか、直接影響を受けるかを指定します。 サポートされている値は次のとおりです。 - Associated- Targeted |
| AttackTactics | 推奨 | string | アラートに関連付けられている攻撃戦術 (名前、ID、またはその両方)。 推奨される形式: 例えば: Persistence, Privilege Escalation |
| AttackTechniques | 推奨 | string | アラートに関連付けられている攻撃手法 (名前、ID、またはその両方)。 推奨される形式: 例えば: Local Groups (T1069.001), Domain Groups (T1069.002) |
| AttackRemediationSteps | 推奨 | string | 特定された攻撃または脅威を軽減または修復するための推奨されるアクションまたは手順。 例えば。 1. Make sure the machine is completely updated and all your software has the latest patch.2. Contact your incident response team. |
ユーザー フィールド
このセクションでは、アラートに関連付けられているユーザーの識別と分類に関連するフィールドを定義し、影響を受けるユーザーとその ID の形式を明確にします。 アラートに、ここにマップされているものを超える追加のユーザー関連フィールドが含まれている場合は、認証イベント スキーマなどの特殊なスキーマが、データを完全に表すためにより適切かどうかを検討できます。
| フィールド | クラス | 型 | 説明 |
|---|---|---|---|
| UserId | 省略可能 | string | アラートに関連付けられているユーザーのコンピューターで読み取り可能な英数字の一意の表現。 例えば。 A1bC2dE3fH4iJ5kL6mN7o |
| UserIdType | 条件 付き | 列挙 | ユーザー ID の種類 ( GUID、 SID、 Emailなど)。サポートされている値は次のとおりです。 - GUID- SID- Email- Username- Phone- Other |
| Username | 推奨 | ユーザー名 (文字列) | アラートに関連付けられているユーザーの名前 (使用可能な場合はドメイン情報を含む)。 例: Contoso\JSmith や john.smith@contoso.com |
| ユーザー | Alias | string | フィールドのエイリアスまたはフレンドリ名 Username 。 |
| UsernameType | 条件 付き | UsernameType |
Username フィールドに格納されているユーザー名の種類を指定します。 許可される値の詳細と一覧については、スキーマの概要に関する記事の UsernameType に関する記事を参照してください。例えば。 Windows |
| UserType | 省略可能 | UserType | アクターの型。 許可される値の詳細と一覧については、スキーマの概要に関する記事の「UserType」を参照してください。 例えば。 Guest |
| OriginalUserType | 省略可能 | string | レポート デバイスによって報告されるユーザーの種類。 |
| UserSessionId | 省略可能 | string | アラートに関連付けられているユーザーのセッションの一意の ID。 例えば。 a1bc2de3-fh4i-j5kl-6mn7-op8qr9st0u |
| UserScopeId | 省略可能 | string | UserId と Username が定義されているMicrosoft Entra ディレクトリ ID などのスコープ ID。 例えば。 a1bc2de3-fh4i-j5kl-6mn7-op8qrs |
| UserScope | 省略可能 | string | UserId と Username が定義されているMicrosoft Entraテナントなどのスコープ。 許可される値の詳細と一覧については、スキーマの概要に関する記事の「UserScope」を参照してください。 例えば。 Contoso Directory |
プロセス フィールド
このセクションでは、指定したフィールドを使用して、アラートに関連するプロセス エンティティに関連する詳細をキャプチャできます。 アラートに、ここでマップされる内容を超える追加の詳細なプロセス関連フィールドが含まれている場合は、プロセス イベント スキーマなどの特殊なスキーマが、データを完全に表すためにより適切かどうかを検討できます。
| フィールド | クラス | 型 | 説明 |
|---|---|---|---|
| ProcessId | 省略可能 | string | アラートに関連付けられているプロセス ID (PID)。 例えば。 12345678 |
| ProcessCommandLine | 省略可能 | string | プロセスを開始するために使用されるコマンド ライン。 例えば。 "choco.exe" -v |
| ProcessName | 省略可能 | string | プロセスの名前。 例えば。 C:\Windows\explorer.exe |
| ProcessFileCompany | 省略可能 | string | プロセス イメージ ファイルを作成した会社。 例えば。 Microsoft |
ファイル フィールド
このセクションでは、アラートに関連するファイル エンティティに関連する詳細をキャプチャできます。 アラートに、ここでマップされる内容を超える追加の詳細なファイル関連フィールドが含まれている場合は、ファイル イベント スキーマなどの特殊なスキーマが、データを完全に表すためにより適切かどうかを検討できます。
| フィールド | クラス | 型 | 説明 |
|---|---|---|---|
| FileName | 省略可能 | string | パスまたは場所を指定せずに、アラートに関連付けられているファイルの名前。 例えば。 Notepad.exe |
| FilePath | 省略可能 | string | フォルダーまたは場所、ファイル名、拡張子など、ターゲット ファイルの完全な正規化されたパス。 例えば。 C:\Windows\System32\notepad.exe |
| FileSHA1 | 省略可能 | string | ファイルの SHA1 ハッシュ。 例えば。 j5kl6mn7op8qr9st0uv1 |
| FileSHA256 | 省略可能 | string | ファイルの SHA256 ハッシュ。 例えば。 a1bc2de3fh4ij5kl6mn7op8qrs2de3 |
| FileMD5 | 省略可能 | string | ファイルの MD5 ハッシュ。 例えば。 j5kl6mn7op8qr9st0uv1wx2yz3ab4c |
| FileSize | 省略可能 | long | ファイルのサイズ (バイト単位)。 例えば。 123456 |
URL フィールド
アラートに Url エンティティに関する情報が含まれている場合、次のフィールドは URL 関連のデータをキャプチャできます。
| フィールド | クラス | 型 | 説明 |
|---|---|---|---|
| Url | 省略可能 | string | アラートでキャプチャされた URL 文字列。 例えば。 https://contoso.com/fo/?k=v&q=u#f |
レジストリ フィールド
アラートにレジストリ エンティティに関する詳細が含まれている場合は、次のフィールドを使用して、特定のレジストリ関連情報をキャプチャします。
| フィールド | クラス | 型 | 説明 |
|---|---|---|---|
| Registrykey | 省略可能 | string | アラートに関連付けられたレジストリ キー。標準のルート キーの名前付け規則に正規化されます。 例えば。 HKEY_LOCAL_MACHINE\SOFTWARE\MTG |
| RegistryValue | 省略可能 | string | レジストリ値。 例えば。 ImagePath |
| RegistryValueData | 省略可能 | string | レジストリ値のデータ。 例えば。 C:\Windows\system32;C:\Windows; |
| RegistryValueType | 省略可能 | 列挙 | レジストリ値の型。 例えば。 Reg_Expand_Sz |
Email フィールド
アラートに電子メール エンティティに関する情報が含まれている場合は、次のフィールドを使用して、特定の電子メール関連の詳細をキャプチャします。
| フィールド | クラス | 型 | 説明 |
|---|---|---|---|
| EmailMessageId | 省略可能 | string | アラートに関連付けられた電子メール メッセージの一意の識別子。 例えば。 Request for Invoice Access |
| EmailSubject | 省略可能 | string | メールの件名。 例えば。 j5kl6mn7-op8q-r9st-0uv1-wx2yz3ab4c |
スキーマ Updates
スキーマのさまざまなバージョンの変更を次に示します。
- バージョン 0.1: 初期リリース。