Microsoft 365 Defender

本文档介绍了如何将 Microsoft 365 Defender 与 Google Security Operations (Google SecOps) 集成。

集成版本:19.0

使用场景

将 Microsoft 365 Defender 与 Google SecOps 集成有助于您解决以下使用情形:

  • 自动事件响应:使用 Google SecOps 功能自动隔离受影响的端点,并启动扫描以查找进一步的入侵。

  • 网络钓鱼调查和补救:使用 Google SecOps 功能自动提取相关信息(例如发件人、主题和附件),并使用威胁情报数据丰富这些信息。

  • 漏洞管理:使用 Google SecOps 功能自动执行漏洞扫描和修复工作流程。

  • 合规性报告和审核:使用 Google SecOps 功能自动收集和报告 Microsoft 365 Defender 中的安全数据,从而简化合规性审核并证明符合安全标准。

  • 提醒优先级划分和分类:使用 Google SecOps 功能分析 Microsoft 365 Defender 中的提醒,并根据严重程度和潜在影响对这些提醒进行优先级划分。

  • 自动恶意软件分析:使用 Google SecOps 功能自动将 Microsoft 365 Defender 检测到的恶意软件样本提交到沙盒环境进行动态分析。

准备工作

在 Google SecOps 平台中配置集成之前,请完成以下步骤:

  1. 创建 Microsoft Entra 应用。

  2. 为应用配置 API 权限。

  3. 创建客户端密钥。

创建 Microsoft Entra 应用

如需创建 Microsoft Entra 应用,请完成以下步骤:

  1. 以用户管理员或密码管理员身份登录 Azure 门户

  2. 选择 Microsoft Entra ID

  3. 依次前往应用注册 > 新注册

  4. 输入应用的名称。

  5. 点击注册

  6. 保存应用(客户端)ID目录(租户)ID 值,以便稍后在配置集成参数时使用。

配置 API 权限

如需为集成配置 API 权限,请完成以下步骤:

  1. 在 Azure 门户中,依次前往管理 > API 权限 > 添加权限

  2. 请求 API 权限窗口中,选择我组织使用的 API

  3. 依次选择 Microsoft Graph > 应用权限

  4. 选择以下权限:

    • SecurityAlert.Read.All
    • SecurityIncident.ReadWrite.All
  5. 点击添加权限

  6. 请求 API 权限窗口中,选择我组织使用的 API

  7. 依次选择 Microsoft Threat Protection > 应用权限

  8. 选择以下权限:

    • ThreatHunting.Read.All
  9. 点击添加权限

  10. 点击YOUR_ORGANIZATION_NAME授予管理员同意书

    当系统显示授予管理员同意权限确认对话框时,点击

创建客户端密钥

如需创建客户端密钥,请完成以下步骤:

  1. 依次前往证书和密钥 > 新客户端密钥

  2. 为客户端密钥提供说明并设置其失效期限。

  3. 点击 Add(添加)。

  4. 保存客户端密钥的值(而非密钥 ID),以便在配置集成时将其用作 Client Secret 参数值。

    客户端密钥值仅显示一次。

将 Microsoft 365 Defender 与 Google SecOps 集成

Microsoft 365 Defender 集成需要以下参数:

参数 说明
Login API Root 必需

Microsoft 365 Defender 实例的登录 API 根。

默认值为 https://login.microsoftonline.com

Graph API Root 必需

Microsoft Graph 服务的 API 根。

默认值为 https://graph.microsoft.com

API Root 必需

Microsoft 365 Defender 实例的 API 根。

默认值为 https://api.security.microsoft.com

Tenant ID 必需

您的 Microsoft Entra ID 账号的 Microsoft Entra ID(租户 ID)值。

Client ID 必需

您的 Microsoft Entra ID 账号的应用(客户端)ID 值。

Client Secret 必需

Microsoft Entra ID 应用的客户端密钥值。

Verify SSL 可选

如果选中此选项,集成会验证用于连接到 Microsoft 365 Defender 服务器的 SSL 证书是否有效。

此选项将会默认选中。

如需了解如何在 Google SecOps 中配置集成,请参阅配置集成

如果需要,您可以在稍后阶段进行更改。配置集成实例后,您可以在剧本中使用该实例。如需详细了解如何配置和支持多个实例,请参阅支持多个实例

操作

如需详细了解操作,请参阅处理工作台中的待处理操作执行手动操作

向突发事件添加评论

使用 Add Comment To Incident 操作向 Microsoft 365 Defender 中的事件添加评论。

此操作不适用于 Google SecOps 实体。

操作输入

向突发事件添加注释操作需要以下参数:

参数 说明
Incident ID 必需

要向其添加评论的突发事件的 ID。

Comment 必需

要添加到突发事件的评论。

操作输出

向突发事件添加评论操作提供以下输出:

操作输出类型 可用性
案例墙附件 不可用
案例墙链接 不可用
“支持请求墙”表格 不可用
丰富化表 不可用
JSON 结果 不可用
输出消息 可用
脚本结果 可用
输出消息

向突发事件添加评论操作可以返回以下输出消息:

输出消息 消息说明
Successfully added comment to incident INCIDENT_ID in Microsoft 365 Defender. 操作成功。
Error executing action "Add Comment To Incident". Reason: ERROR_REASON

操作失败。

检查与服务器的连接、输入参数或凭据。

脚本结果

下表列出了使用向突发事件添加注释操作时脚本结果输出的值:

脚本结果名称
is_success TrueFalse

执行自定义查询

使用执行自定义查询操作在 Microsoft 365 Defender 中执行自定义搜索查询。

此操作不适用于 Google SecOps 实体。

操作输入

执行自定义查询操作需要以下参数:

参数 说明
Query 必需

要在 Microsoft 365 Defender 中执行的查询,用于过滤结果。

Max Results To Return 可选

查询返回的结果数上限。

默认值为 `50`。

操作输出

执行自定义查询操作提供以下输出:

操作输出类型 可用性
案例墙附件 不可用
案例墙链接 不可用
“支持请求墙”表格 不可用
丰富化表 不可用
JSON 结果 可用
输出消息 可用
脚本结果 可用
JSON 结果

以下示例展示了使用执行自定义查询操作时收到的 JSON 结果输出:

{"Results": [
    {
        "Timestamp": "2021-04-12T07:25:00Z",
        "AlertId": "fa7a318954-6c4c-eaab-3200-08d8fd82af35",
        "Title": "CC_Sensitive information",
        "Category": "InitialAccess",
        "Severity": "Medium",
        "ServiceSource": "Microsoft Defender for Office 365",
        "DetectionSource": "Microsoft Defender for Office 365",
        "AttackTechniques": ""
    }
]}
输出消息

执行自定义查询 操作可以返回以下输出消息:

输出消息 消息说明

Successfully executed query "QUERY" in Microsoft 365 Defender.

No data was found for the query "QUERY" in Microsoft 365 Defender.

操作成功。
Error executing action "Execute Custom Query". Reason: ERROR_REASON

操作失败。

检查与服务器的连接、输入参数或凭据。

脚本结果

下表列出了使用执行自定义查询操作时脚本结果输出的值:

脚本结果名称
is_success TrueFalse

执行实体查询

使用 Execute Entity Query 操作执行基于 Microsoft 365 Defender 中的实体的搜寻查询。

此操作使用基于实体的 where 过滤条件。

此操作可在以下 Google SecOps 实体上运行:

  • IP Address
  • Host
  • User
  • Hash
  • URL

您可以使用 Execute Entity Query 操作来检索与实体相关的信息,例如从表中检索结果并根据实体过滤结果。

与需要使用特定格式的 Execute Query 操作不同,Execute Entity Query 操作不使用查询输入。

使用执行查询操作检索与端点相关的提醒时,请按以下格式设置 | where 子句:

AlertInfo | where DeviceName == "Host-1" or IPAddress == "192.0.2.1" | top 100
by Timestamp desc

如需检索与端点相关的提醒,执行实体查询操作需要您按如下方式配置 TableIP Entity KeyHostname Entity KeyCross Entity Operator 参数:

参数 AlertInfo
IP Entity Key IPAddress
Hostname Entity Key DeviceName
Cross Entity Operator OR

如需检查所提供的哈希会影响多少个端点,Execute Entity Query 操作需要您为 File Hash Entity Key 参数输入 SHA1 值。

只有在为 Entity Keys 参数配置多个值时,Cross Entity Operator 才会影响查询。

操作输入

执行实体查询操作需要以下参数:

参数 说明
Table Names 必需

要在 Microsoft 365 Defender 中查询的表的英文逗号分隔列表。

Time Frame 可选

查询结果的时间段。

默认值为 Last Hour

可能的值如下:

  • Last Hour
  • Last 6 Hours
  • Last 24 Hours
  • Last Week
  • Last Month
  • Custom
Start Time 可选

查询结果的开始时间。

如果您将 Time Frame 参数设置为 Custom,则此参数是必需的。

End Time 可选

查询结果的结束时间。

如果您未设置值,并将 Time Frame 参数设置为 Custom,则该操作会默认将此参数设置为当前时间值。

Fields To Return 可选

要包含在结果中的字段的逗号分隔列表。

Sort Field 可选

用于对结果进行排序的字段。

默认值为 Timestamp

Sort Order 可选

结果的排序顺序(升序或降序)。

默认值为 ASC

可能的值如下:

  • ASC
  • DESC
Max Results To Return 可选

需返回的结果数上限。

默认值为 50

IP Entity Key 可选

用于按 IP Address 实体进行过滤的键。

Hostname Entity Key 可选

用于按 Hostname 实体进行过滤的键。

File Hash Entity Key 可选

用于按 File Hash 实体进行过滤的键。

User Entity Key 可选

用于按 User 实体进行过滤的键。

URL Entity Key 可选

用于按 URL 实体进行过滤的键。

Email Address Entity Key 可选

用于按 Email Address 实体进行过滤的键。 该操作接受与电子邮件正则表达式匹配的 User 实体。

Stop If Not Enough Entities 可选

如果选择此项,则当所有指定的实体类型都存在时,系统会运行相应操作。

此选项将会默认选中。

Cross Entity Operator 必需

查询中不同实体类型之间使用的逻辑运算符。

默认值为 OR

可能的值如下:

  • OR
  • AND

操作输出

执行实体查询操作提供以下输出:

操作输出类型 可用性
案例墙附件 不可用
案例墙链接 不可用
“支持请求墙”表格 不可用
丰富化表 不可用
JSON 结果 可用
输出消息 可用
脚本结果 可用
JSON 结果

以下示例展示了使用执行实体查询操作时收到的 JSON 结果输出:

 {
        "Timestamp": "2021-04-12T07:25:00Z",
        "AlertId": "fa7a318954-6c4c-eaab-3200-08d8fd82af35",
        "Title": "CC_Sensitive information",
        "Category": "InitialAccess",
        "Severity": "Medium",
        "ServiceSource": "Microsoft Defender for Office 365",
        "DetectionSource": "Microsoft Defender for Office 365",
        "AttackTechniques": ""
  }
输出消息

执行实体查询操作可以返回以下输出消息:

输出消息 消息说明

Successfully executed query "QUERY" in Microsoft 365 Defender.

Action wasn't able to build the query, because not enough entity types were supplied for the specified "ENTITY_KEYS". Please disable the "Stop If Not Enough Entities" parameter or provide at least one entity for each specified ENTITY_KEY.

No data was found for the query "QUERY" in Microsoft 365 Defender."

操作成功。
Error executing action "Execute Entity Query". Reason: ERROR_REASON

操作失败。

检查与服务器的连接、输入参数或凭据。

脚本结果

下表列出了使用 Execute Entity Query 操作时脚本结果输出的值:

脚本结果名称
is_success TrueFalse

执行查询

使用 Execute Query 操作在 Microsoft 365 Defender 中执行搜索查询。

此操作不适用于 Google SecOps 实体。

操作输入

执行查询操作需要以下参数:

参数 说明
Table Names 必需

要在 Microsoft 365 Defender 中查询的表名称的英文逗号分隔列表。

Query 可选

要执行的查询。

使用此参数可提供 | where 子句。时间过滤、限制和排序是可选的。

Time Frame 可选

查询结果的时间段。

默认值为 Last Hour

可能的值如下:

  • Last Hour
  • Last 6 Hours
  • Last 24 Hours
  • Last Week
  • Last Month
  • Custom
Start Time 可选

查询结果的开始时间,采用 ISO 8601 格式。

如果您将 Time Frame 参数设置为 Custom,则此参数是必需的。

End Time 可选

查询结果的结束时间,采用 ISO 8601 格式。

如果您未设置值,并将 Time Frame 参数设置为 Custom,则该操作会将此参数默认设置为当前时间值。

Fields To Return 可选

要包含在结果中的字段的逗号分隔列表。

Sort Field 可选

用于对结果进行排序的字段。

默认值为 Timestamp

Sort Order 可选

结果的排序顺序(升序或降序)。

默认值为 ASC

可能的值如下:

  • ASC
  • DESC
Max Results To Return 可选

需返回的结果数上限。

默认值为 50

操作输出

执行查询操作会提供以下输出:

操作输出类型 可用性
案例墙附件 不可用
案例墙链接 不可用
“支持请求墙”表格 不可用
丰富化表 不可用
JSON 结果 可用
输出消息 可用
脚本结果 可用
JSON 结果

以下示例展示了使用执行查询操作时收到的 JSON 结果输出:

{"Results": [
    {
        "Timestamp": "2021-04-12T07:25:00Z",
        "AlertId": "fa7a318954-6c4c-eaab-3200-08d8fd82af35",
        "Title": "CC_Sensitive information",
        "Category": "InitialAccess",
        "Severity": "Medium",
        "ServiceSource": "Microsoft Defender for Office 365",
        "DetectionSource": "Microsoft Defender for Office 365",
        "AttackTechniques": ""
    }
]}
输出消息

执行查询操作可以返回以下输出消息:

输出消息 消息说明

Successfully executed query "QUERY" in Microsoft 365 Defender.

No data was found for the query "QUERY" in Microsoft 365 Defender."

操作成功。
Error executing action "Execute Query". Reason: ERROR_REASON

操作失败。

检查与服务器的连接、输入参数或凭据。

脚本结果

下表列出了使用 Execute Query 操作时脚本结果输出的值:

脚本结果名称
is_success TrueFalse

Ping

使用 Ping 操作测试与 Microsoft 365 Defender 的连接。

该操作不会在 Google SecOps 实体上运行。

操作输入

无。

操作输出

Ping 操作提供以下输出:

操作输出类型 可用性
案例墙附件 不可用
案例墙链接 不可用
“支持请求墙”表格 不可用
丰富化表 不可用
JSON 结果 不可用
输出消息 可用
脚本结果 可用
JSON 结果

以下示例展示了使用 Ping 操作时收到的 JSON 结果输出:

输出消息

Ping 操作可以返回以下输出消息:

输出消息 消息说明
Successfully connected to the Microsoft 365 Defender server with the provided connection parameters! 操作成功。
Failed to connect to the Microsoft 365 Defender server! Error is ERROR_REASON

操作失败。

检查与服务器的连接、输入参数或凭据。

脚本结果

下表列出了使用 Ping 操作时脚本结果输出的值:

脚本结果名称
is_success TrueFalse

更新突发事件

使用 Update Incident 操作更新 Microsoft 365 Defender 中的事件。

根据 API 限制,即使您为 Assign To 参数设置了无效的用户名值,此操作也不会失败。

此操作不适用于 Google SecOps 实体。

操作输入

更新突发事件操作需要以下参数:

参数 说明
Incident ID 必需

要在 Microsoft 365 Defender 中更新的事件的 ID。

Status 可选

要在 Microsoft 365 Defender 中为突发事件设置的状态。

默认值为 Select One

可能的值如下:

  • Select One
  • Active
  • Resolved
Classification 可选

要在 Microsoft 365 Defender 中为突发事件设置的分类。

默认值为 Select One

可能的值如下:

  • Select One
  • False Positive
  • True Positive
Determination 可选

要在 Microsoft 365 Defender 中为突发事件设置的判定。

此参数仅在 Classification 参数值为 True Positive 时适用。

默认值为 Select One

可能的值如下:

  • Select One
  • Not Available
  • Apt
  • Malware
  • Security Personnel
  • Security Testing
  • Unwanted Software
  • Other
Assign To 可选

要在 Microsoft 365 Defender 中将事件分配给的用户。

操作输出

更新突发事件操作提供以下输出:

操作输出类型 可用性
案例墙附件 不可用
案例墙链接 不可用
“支持请求墙”表格 不可用
丰富化表 不可用
JSON 结果 不可用
输出消息 可用
脚本结果 可用
输出消息

更新突发事件操作可以返回以下输出消息:

输出消息 消息说明
Successfully updated incident INCIDENT_ID in Microsoft 365 Defender. 操作成功。
Error executing action "Update Incident". Reason: ERROR_REASON

操作失败。

检查与服务器的连接、输入参数或凭据。

连接器

如需详细了解如何在 Google SecOps 中配置连接器,请参阅提取数据(连接器)

Microsoft 365 Defender - 事件连接器

使用 Microsoft 365 Defender - 突发事件连接器从 Microsoft 365 Defender 中提取有关突发事件及其相关提醒的信息。

动态列表可与突发事件名称搭配使用。

连接器限制

Microsoft 365 Defender - 事件连接器使用具有严格 API 限制的 API 请求。为了稳定连接器,请将 Max Incidents To Fetch 参数设置为 10,并将 Run Every 参数设置为 1 minute。您仍然可能会达到速率限制,因为用于提取提醒的 Microsoft Graph API 端点每分钟仅允许 20 个请求。

为防止达到速率限制时丢失数据,连接器会停止处理当前事件,并等待 90 秒,然后再处理任何其他事件。在 90 秒内,速率限制会恢复到最大值,连接器会重新处理之前迭代中未正确处理的事件。

连接器输入

Microsoft 365 Defender - 事件连接器需要以下参数:

在大多数情况下,重定向的事件可以为空。

参数 说明
Product Field Name 必需

存储商品名称的字段的名称。

默认值为 event_type

Event Field Name 必需

用于确定事件名称(子类型)的字段名称。

默认值为 @odata.type

Login API Root 必需

Microsoft 365 Defender 实例的登录 API 根。

默认值为 https://login.microsoftonline.com

Graph API Root 必需

Microsoft Graph 服务的 API 根。

默认值为 https://graph.microsoft.com

API Root 必需

Microsoft 365 Defender 实例的 API 根。

默认值为 https://api.security.microsoft.com

Tenant ID 必需

您的 Microsoft Entra ID 账号的 Microsoft Entra ID(租户 ID)值。

Client ID 必需

您的 Microsoft Entra ID 账号的应用(客户端)ID 值。

Client Secret 必需

Microsoft Entra ID 应用的客户端密钥值。

Verify SSL 可选

如果选中此选项,集成会验证用于连接到 Microsoft 365 Defender 服务器的 SSL 证书是否有效。

此选项将会默认选中。

Lowest Severity To Fetch 可选

要提取的突发事件的最低严重程度。

Max Hours Backwards 可选

在首次连接器迭代之前检索事件的小时数。此参数适用于首次启用连接器后的初始连接器迭代,或已过期的连接器时间戳的回退值。

默认值为 1

Max Incidents To Fetch 可选

每次连接器迭代要提取的突发事件数量上限。

默认值为 10

Incident Status Filter 可选

以英文逗号分隔的要注入的突发事件状态列表。

默认值为 active, inProgress

可能的值如下:

  • active
  • inProgress
  • resolved
  • redirected
Use whitelist as a blacklist 可选

如果选中此选项,连接器会将动态列表用作屏蔽列表。

默认情况下未选中。

Lowest Alert Severity To Fetch 可选

要提取的提醒的最低严重程度。

Disable Alert Tracking 可选

如果启用,连接器会停止跟踪提醒的更新。

默认情况下,该环境处于停用状态。

Environment Field Name 可选

包含环境名称的字段的名称。

Environment Regex Pattern 可选

要对 Environment Field Name 字段中的值运行的正则表达式模式。此参数可让您使用正则表达式逻辑来操纵环境字段。

使用默认值 .* 可检索所需的原始 Environment Field Name 值。

如果正则表达式模式为 null 或空,或者环境值为 null,则最终环境结果为默认环境。

PythonProcessTimeout 必需

运行当前脚本的 Python 进程的超时时间限制(以秒为单位)。

默认值为 180

Dynamic List Field 可选

动态列表用于过滤的值。

可能的值包括 Incident NameAlert Name

默认值为 Incident Name

Alert Detection Source Filter 可选

要注入的以英文逗号分隔的提醒检测来源列表,例如 antivirus, microsoftDefenderForEndpoint

Alert Service Source Filter 可选

要注入的提醒服务来源的英文逗号分隔列表,例如 antivirus, microsoftDefenderForEndpoint

Disable Overflow 可选

如果选中此选项,连接器会在创建提醒期间忽略 Google SecOps 溢出机制。

默认处于启用状态。

Proxy Server Address 可选

要使用的代理服务器的地址。

Proxy Username 可选

用于进行身份验证的代理用户名。

Proxy Password 可选

用于进行身份验证的代理密码。

连接器规则

  • 连接器支持代理。
  • 连接器支持动态列表和屏蔽名单。

需要更多帮助?从社区成员和 Google SecOps 专业人士那里获得解答。