收集 Azure 防火墙日志
支持的语言:
Google SecOps
SIEM
本文档介绍了如何使用 Azure 存储账号将 Azure 防火墙日志导出到 Google Security Operations。解析器首先尝试将输入处理为 JSON,并从 Records 字段中提取数据。如果 Record 字段为空,解析器会使用一系列 Grok 模式和条件语句从消息中提取相关字段,从而处理 Azure 防火墙日志中的不同格式和变化。
准备工作
确保您满足以下前提条件:
- Google SecOps 实例
- 有效的 Azure 租户
- 对 Azure 的特权访问权限
配置 Azure 存储账号
- 在 Azure 控制台中,搜索存储账号。
- 点击 + 创建。
- 为以下输入参数指定值:
- 订阅:选择相应订阅。
- 资源组:选择资源组。
- 地区:选择相应区域。
- 性能:选择性能(建议选择“标准”)。
- 冗余:选择冗余(建议使用 GRS 或 LRS)。
- 存储账号名称:输入新存储账号的名称。
- 点击 Review + create(检查 + 创建)。
- 查看账号概览,然后点击创建。
- 在存储账号概览页面上,选择安全性 + 网络中的访问密钥子菜单。
- 点击 key1 或 key2 旁边的显示。
- 点击复制到剪贴板以复制密钥。
- 将密钥保存在安全的位置,以供日后使用。
- 在存储账号概览页面中,选择设置中的终结点子菜单。
- 点击复制到剪贴板,复制 Blob 服务端点网址;例如,
https://<storageaccountname>.blob.core.windows.net
。 - 将端点网址保存在安全的位置,以供日后使用。
如何为 Azure 防火墙日志配置日志导出
- 使用您的特权账号登录 Azure 门户。
- 前往防火墙,然后选择所需的防火墙。
- 依次选择监控 > 诊断服务。
- 点击 + 添加诊断设置。
- 为诊断设置输入描述性名称。
- 选择 allLogs。
- 选择归档到存储账号复选框作为目标位置。
- 指定订阅和存储账号。
- 点击保存。
设置 Feed
您可以通过两种不同的入口点在 Google SecOps 平台中设置 Feed:
- SIEM 设置 > Feed
- 内容中心 > 内容包
通过“SIEM 设置”>“Feed”设置 Feed
如需为相应产品系列中的不同日志类型配置多个 Feed,请参阅按产品配置 Feed。
如需配置单个 Feed,请按以下步骤操作:
- 依次前往 SIEM 设置> Feed。
- 点击添加新 Feed。
- 在下一页上,点击配置单个 Feed。
- 在 Feed 名称字段中,输入 Feed 的名称,例如 Azure 防火墙日志。
- 选择 Microsoft Azure Blob Storage 作为来源类型。
- 选择 Azure 防火墙作为日志类型。
- 点击下一步。
为以下输入参数指定值:
- 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 中事件的标签。
- Azure URI:Blob 端点网址。
点击下一步。
在最终确定界面中查看新的 Feed 配置,然后点击提交。
设置来自内容中心的 Feed
为以下字段指定值:
- Azure URI:Blob 端点网址。
ENDPOINT_URL/BLOB_NAME
- 替换以下内容:
ENDPOINT_URL
:Blob 端点网址 (https://<storageaccountname>.blob.core.windows.net
)BLOB_NAME
:Blob 的名称(例如insights-logs-<logname>
)
- 替换以下内容:
- URI is a:根据日志流配置选择 URI 类型(Single file [单个文件] | Directory [目录] | Directory which includes subdirectories [包含子目录的目录])。
- 源删除选项:根据您的提取偏好设置选择删除选项。
- 共享密钥:Azure Blob Storage 的访问密钥。
高级选项
- Feed 名称:用于标识 Feed 的预填充值。
- 来源类型:用于将日志收集到 Google SecOps 中的方法。
- 资产命名空间:与 Feed 关联的命名空间。
- 提取标签:应用于相应 Feed 中所有事件的标签。
UDM 映射
日志字段 | UDM 映射 | 逻辑 |
---|---|---|
@timestamp | metadata.event_timestamp | 将原始日志字段 @timestamp 转换为 UDM 格式。 |
类别 | security_result.rule_type | 将原始日志字段 category 映射到 UDM。 |
operationName | metadata.product_event_type | 将原始日志字段 operationName 映射到 UDM。 |
properties.Action | security_result.action | 将原始日志字段 properties.Action 映射到 UDM,将 ALLOW 转换为 ALLOW ,将 DENY 转换为 BLOCK ,并将任何其他值转换为 UNKNOWN_ACTION 。 |
properties.DestinationIp | target.ip | 将原始日志字段 properties.DestinationIp 映射到 UDM。 |
properties.DestinationPort | target.port | 将原始日志字段 properties.DestinationPort 映射到 UDM。 |
properties.DnssecOkBit | additional.fields.value.bool_value | 将原始日志字段 properties.DnssecOkBit 映射到 UDM。 |
properties.EDNS0BufferSize | additional.fields.value.number_value | 将原始日志字段 properties.EDNS0BufferSize 映射到 UDM。 |
properties.ErrorMessage | additional.fields.value.string_value | 将原始日志字段 properties.ErrorMessage 映射到 UDM。 |
properties.ErrorNumber | additional.fields.value.number_value | 将原始日志字段 properties.ErrorNumber 映射到 UDM。 |
properties.Policy | security_result.detection_fields.value | 将原始日志字段 properties.Policy 映射到 UDM。 |
properties.Protocol | network.ip_protocol | 如果原始日志字段 properties.Protocol 不是 HTTPS 或 HTTP ,则将其映射到 UDM。 |
properties.Protocol | network.application_protocol | 如果原始日志字段 properties.Protocol 为 HTTPS 或 HTTP ,则将其映射到 UDM。 |
properties.QueryClass | network.dns.questions.class | 使用用于映射 DNS 查询类的查找表将原始日志字段 properties.QueryClass 映射到 UDM。 |
properties.QueryId | network.dns.id | 将原始日志字段 properties.QueryId 映射到 UDM。 |
properties.QueryName | network.dns.questions.name | 将原始日志字段 properties.QueryName 映射到 UDM。 |
properties.QueryType | network.dns.questions.type | 使用用于映射 DNS 记录类型的查找表将原始日志字段 properties.QueryType 映射到 UDM。 |
properties.RequestSize | network.sent_bytes | 将原始日志字段 properties.RequestSize 映射到 UDM。 |
properties.ResponseCode | network.dns.response_code | 使用用于映射 DNS 响应代码的查找表将原始日志字段 properties.ResponseCode 映射到 UDM。 |
properties.ResponseFlags | additional.fields.value.string_value | 将原始日志字段 properties.ResponseFlags 映射到 UDM。 |
properties.ResponseSize | network.received_bytes | 将原始日志字段 properties.ResponseSize 映射到 UDM。 |
properties.Rule | security_result.rule_name | 将原始日志字段 properties.Rule 映射到 UDM。 |
properties.RuleCollection | security_result.detection_fields.value | 将原始日志字段 properties.RuleCollection 映射到 UDM。 |
properties.RuleCollectionGroup | security_result.detection_fields.value | 将原始日志字段 properties.RuleCollectionGroup 映射到 UDM。 |
properties.SourceIp | principal.ip | 将原始日志字段 properties.SourceIp 映射到 UDM。 |
properties.SourcePort | principal.port | 将原始日志字段 properties.SourcePort 映射到 UDM。 |
properties.msg | security_result.description | 在从原始日志字段 properties.msg 中提取其他字段后,将其映射到 UDM。 |
records.category | security_result.rule_type | 将原始日志字段 records.category 映射到 UDM。 |
records.operationName | metadata.product_event_type | 将原始日志字段 records.operationName 映射到 UDM。 |
records.properties.msg | 此字段用于使用 Grok 模式提取多个字段,并且不直接映射到 UDM。 | |
records.resourceId | metadata.product_log_id | 将原始日志字段 records.resourceId 映射到 UDM。 |
resourceId | metadata.product_log_id | 将原始日志字段 resourceId 映射到 UDM。 |
时间 | metadata.event_timestamp | 将原始日志字段 time 转换为 UDM 格式。 |
metadata.vendor_name | 此字段由解析器填充,值为 Microsoft Inc. 。 |
|
metadata.product_name | 此字段由解析器填充,值为 Azure Firewall Application Rule 。 |
|
metadata.log_type | 此字段由解析器填充,值为 AZURE_FIREWALL 。 |
|
additional.fields.key | 此字段由解析器填充,其中包含附加字段的键。 | |
security_result.detection_fields.key | 此字段由解析器填充,包含检测字段的键。 | |
network.application_protocol | 对于 DNS 日志,解析器会使用值 DNS 填充此字段。 |
|
metadata.event_type | 此字段由解析器根据日志消息填充。可以是 NETWORK_CONNECTION 、GENERIC_EVENT 、STATUS_UPDATE 或 NETWORK_DNS 。 |
需要更多帮助?从社区成员和 Google SecOps 专业人士那里获得解答。