收集 Azure VPN 日志

支持的语言:

本指南介绍了如何使用 Azure 存储账号将 Azure VPN 日志导出到 Google Security Operations。解析器从 JSON 格式的 Azure VPN 日志中提取字段,然后使用 Grok 模式从 properties.message 字段中提取更多详细信息。最后,它会将提取的信息映射到统一数据模型 (UDM) 的标准化字段。

准备工作

确保您满足以下前提条件:

  • Google SecOps 实例
  • 有效的 Azure 租户
  • 对 Azure 的特权访问权限

配置 Azure 存储账号

  1. 在 Azure 控制台中,搜索存储账号
  2. 点击 + 创建
  3. 为以下输入参数指定值:
    • 订阅:选择相应订阅。
    • 资源组:选择资源组。
    • 地区:选择相应区域。
    • 性能:选择性能(建议选择“标准”)。
    • 冗余:选择冗余(建议使用 GRS 或 LRS)。
    • 存储账号名称:输入新存储账号的名称。
  4. 点击 Review + create(检查 + 创建)。
  5. 查看账号概览,然后点击创建
  6. 存储账号概览页面上,选择安全性 + 网络中的访问密钥子菜单。
  7. 点击 key1key2 旁边的显示
  8. 点击复制到剪贴板以复制密钥。
  9. 将密钥保存在安全的位置,以供日后使用。
  10. 存储账号概览页面中,选择设置中的终结点子菜单。
  11. 点击复制到剪贴板,复制 Blob 服务端点网址;例如,https://<storageaccountname>.blob.core.windows.net
  12. 将端点网址保存在安全的位置,以供日后使用。

如何为 Azure VPN 网关日志配置日志导出

  1. 使用您的特权账号登录 Azure 门户
  2. 选择正在监控的订阅
  3. 在该订阅的资源列表中,找到 VPN 网关(这通常应属于资源类型“虚拟网络网关”)。
  4. 点击网关。
  5. 依次选择监控 > 诊断服务
  6. 点击 + 添加诊断设置
    • 为诊断设置输入描述性名称。
  7. 选择 allLogs
  8. 选择归档到存储账号复选框作为目标位置。
    • 指定订阅存储账号
  9. 点击保存

设置 Feed

您可以通过两种不同的入口点在 Google SecOps 平台中设置 Feed:

  • SIEM 设置 > Feed
  • 内容中心 > 内容包

通过“SIEM 设置”>“Feed”设置 Feed

如需为相应产品系列中的不同日志类型配置多个 Feed,请参阅按产品配置 Feed

如需配置单个 Feed,请按以下步骤操作:

  1. 依次前往 SIEM 设置> Feed
  2. 点击添加新 Feed
  3. 在下一页上,点击配置单个 Feed
  4. Feed 名称字段中,输入 Feed 的名称,例如 Azure VPN 日志
  5. 选择 Microsoft Azure Blob Storage 作为来源类型
  6. 选择 Azure VPN 作为日志类型
  7. 点击下一步
  8. 为以下输入参数指定值:

    • Azure URI:Blob 端点网址。
      • ENDPOINT_URL/BLOB_NAME
        • 替换以下内容:
          • ENDPOINT_URL:Blob 端点网址 (https://<storageaccountname>.blob.core.windows.net)
          • BLOB_NAME:Blob 的名称(例如 <logname>-logs
    • URI is a:根据日志流配置选择 URI 类型(Single file [单个文件] | Directory [目录] | Directory which includes subdirectories [包含子目录的目录])。
    • 源删除选项:根据您的提取偏好设置选择删除选项。

    • 共享密钥:Azure Blob Storage 的访问密钥。

    • 资源命名空间资源命名空间

    • 注入标签:要应用于此 Feed 中事件的标签。

  9. 点击下一步

  10. 最终确定界面中查看新的 Feed 配置,然后点击提交

设置来自内容中心的 Feed

为以下字段指定值:

  • Azure URI:Blob 端点网址。
    • ENDPOINT_URL/BLOB_NAME
      • 替换以下内容:
        • ENDPOINT_URL:Blob 端点网址 (https://<storageaccountname>.blob.core.windows.net)
        • BLOB_NAME:Blob 的名称(例如 <logname>-logs
  • URI is a:根据日志流配置选择 URI 类型(Single file [单个文件] | Directory [目录] | Directory which includes subdirectories [包含子目录的目录])。
  • 源删除选项:根据您的提取偏好设置选择删除选项。
  • 共享密钥:Azure Blob Storage 的访问密钥。

高级选项

  • Feed 名称:用于标识 Feed 的预填充值。
  • 来源类型:用于将日志收集到 Google SecOps 中的方法。
  • 资产命名空间与 Feed 关联的命名空间
  • 提取标签:应用于相应 Feed 中所有事件的标签。

UDM 映射表

日志字段 UDM 映射 逻辑
类别 security_result.category_details 直接从原始日志中的 category 字段映射。
IV_PLAT security_result.detection_fields.value 直接从原始日志中的 IV_PLAT 字段映射。detection_fields 数组中的键值对的一部分,其中键为 IV_PLAT
IV_PLAT_VER security_result.detection_fields.value 直接从原始日志中的 IV_PLAT_VER 字段映射。detection_fields 数组中的键值对的一部分,其中键为 IV_PLAT_VER
IV_PROTO security_result.detection_fields.value 直接从原始日志中的 IV_PROTO 字段映射。detection_fields 数组中的键值对的一部分,其中键为 IV_PROTO
IV_VER security_result.detection_fields.value 直接从原始日志中的 IV_VER 字段映射。detection_fields 数组中的键值对的一部分,其中键为 IV_VER
level security_result.severity 从原始日志中的 level 字段映射而来。如果 levelInformational,则将 severity 设置为 INFORMATIONAL
local_ip target.ip 使用 Grok 模式从 properties.message 字段中提取,并映射到目标 IP 地址。
local_port target.port 使用 grok 模式从 properties.message 字段中提取,并映射到目标端口号。转换为整数类型。
operationName metadata.product_event_type 直接从原始日志中的 operationName 字段映射。
properties.message metadata.description 使用 Grok 模式从 properties.message 字段中提取。根据消息格式,说明可能包含从 desc2 字段中提取的其他详细信息。
remote_ip principal.ip 使用 Grok 模式从 properties.message 字段中提取,并映射到主 IP 地址。
remote_port principal.port 使用 grok 模式从 properties.message 字段中提取,并映射到主端口号。转换为整数类型。
resourceid target.resource.product_object_id 直接从原始日志中的 resourceid 字段映射。
时间 时间戳,metadata.event_timestamp 使用 RFC 3339 格式从原始日志的 time 字段中解析,并同时映射到事件时间戳和 UDM 时间戳。
metadata.log_type 硬编码为 AZURE_VPN
metadata.vendor_name 硬编码为 AZURE
metadata.product_name 硬编码为 VPN
metadata.event_type 根据是否存在 IP 地址动态设置。如果同时存在 remote_iplocal_ip,则设置为 NETWORK_CONNECTION,否则设置为 USER_RESOURCE_ACCESS
extensions.auth.type 硬编码为 VPN

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