收集 Infoblox 日志
支持的语言:
Google SecOps
SIEM
本文档介绍了如何使用 Google Security Operations 转发器收集 Infoblox 日志。
如需了解详情,请参阅将数据注入 Google Security Operations。
注入标签用于标识将原始日志数据标准化为结构化 UDM 格式的解析器。本文档中的信息适用于具有 INFOBLOX_DNS
注入标签的解析器。
配置 Infoblox
- 登录 Infoblox 网页界面。
- 在 Infoblox Web 界面中,依次选择系统 > 系统属性编辑器 > 监控。
- 选中记录到外部 syslog 服务器复选框。
- 在外部 Syslog 服务器部分,点击加号 (+),为 Google Security Operations 转发器添加新的 Syslog 服务器。
- 在地址字段中,输入 Google Security Operations 转发器服务器 IP 地址。
- 在传输列表中,选择 TCP 或 UDP。
- 在端口字段中,输入端口号。
- 在节点 ID 列表中,选择 LAN 以将 Infoblox IP 地址包含在 syslog 标头中。
- 从可用列表中,选择以下内容并将其移至已选择列表:
- DNS 查询
- DNS 响应
- DHCP 进程
Infoblox 服务器使用 syslog 将查询和响应日志转发到 Google Security Operations 转发器。
配置 Google Security Operations 转发器和 syslog 以注入 Infoblox 日志
- 依次选择 SIEM 设置 > 转发器。
- 点击添加新转发器。
- 在转发器名称字段中输入唯一名称。
- 点击提交,然后点击确认。转发器已添加,系统会显示添加收集器配置窗口。
- 在收集器名称字段中,输入收集器的唯一名称。
- 选择 Infoblox 作为日志类型。
- 选择 Syslog 作为收集器类型。
- 配置以下输入参数:
- 协议:指定收集器将用于监听 syslog 数据的连接协议。
- 地址:指定收集器所在的并监听 syslog 数据的目标 IP 地址或主机名。
- 端口:指定收集器所在的并监听 syslog 数据的目标端口。
- 点击提交。
如需详细了解 Google Security Operations 转发器,请参阅 Google Security Operations 转发器文档。如需了解每种转发器类型的要求,请参阅按类型划分的转发器配置。
如果您在创建转发器时遇到问题,请与 Google 安全运营支持团队联系。
字段映射参考
此解析器会提取 SYSLOG 或 CEF 格式的 Infoblox DNS 日志,并将其标准化为 UDM。它使用 grok 模式处理各种日志格式,提取源 IP 或目标 IP、DNS 查询详细信息和安全信息等关键字段,并将它们映射到相应的 UDM 字段。
UDM 映射表
日志字段 | UDM 映射 | 逻辑 |
---|---|---|
agent.hostname |
principal.hostname |
对于 CEF 格式的日志,如果存在 agent.hostname ,则将其映射到 principal.hostname 。 |
client_ip |
principal.ip |
对于 CEF 格式的日志,如果存在 client_ip ,则将其映射到 principal.ip 。 |
client_port |
principal.port |
对于 CEF 格式的日志,如果存在 client_port ,则将其映射到 principal.port 。 |
data |
answers.data |
从原始日志中 answers 部分的 data 字段提取。多个匹配项会映射为单独的 answers 对象。 |
description |
metadata.description |
直接从原始日志的 description 字段映射,或使用 grok 模式从 message 和 msg2 等其他字段提取。 |
dest_ip1 |
target.ip |
从原始日志中提取并映射到 target.ip 。 |
destinationDnsDomain |
dns_question.name |
对于 CEF 格式的日志,如果存在 destinationDnsDomain ,则将其映射到 dns_question.name 。 |
dns_class |
dns_question.class |
使用 dns_query_class_mapping.include 查找表进行映射。 |
dns_domain |
dns_question.name |
使用 Grok 模式从原始日志的 message 字段中提取,并映射到 dns_question.name 。 |
dns_name |
dns_question.name |
使用 grok 模式从 dns_domain 字段中提取,并映射到 dns_question.name 。 |
dns_records |
answers.data |
对于 CEF 格式的日志,如果存在 dns_records ,则将其映射到 answers.data 。多个匹配项会映射为单独的 answers 对象。 |
dst_ip |
target.ip 或 target.hostname |
使用 Grok 模式从原始日志的 message 字段中提取。如果它是有效的 IP 地址,则会映射到 target.ip ;否则,会映射到 target.hostname 。 |
dst_ip1 |
target.ip 或 target.hostname |
使用 Grok 模式从原始日志的 message 或 msg2 字段中提取。如果它是有效的 IP 地址,则会映射到 target.ip ;否则,会映射到 target.hostname 。仅当与 dst_ip 不同时才进行映射。 |
evt_type |
metadata.product_event_type |
直接从原始日志的 evt_type 字段映射,该字段使用 grok 模式从 message 字段中提取。 |
InfobloxB1OPHIPAddress |
principal.ip |
对于 CEF 格式的日志,如果存在 InfobloxB1OPHIPAddress ,则将其映射到 principal.ip 。 |
InfobloxB1Region |
principal.location.country_or_region |
对于 CEF 格式的日志,如果存在 InfobloxB1Region ,则将其映射到 principal.location.country_or_region 。 |
InfobloxDNSQType |
dns_question.type |
对于 CEF 格式的日志,如果存在 InfobloxDNSQType ,则将其映射到 dns_question.type 。 |
intermediary |
intermediary.ip 或 intermediary.hostname |
使用 Grok 模式从原始日志的 message 字段中提取。如果它是有效的 IP 地址,则会映射到 intermediary.ip ;否则,会映射到 intermediary.hostname 。 |
msg2 |
metadata.description 、dns.response_code 、dns_question.name 、target.ip 、target.hostname 、answers.name 、answers.ttl 、answers.data 、answers.class 、answers.type 、security_result.severity |
使用 Grok 模式从原始日志的 message 字段中提取。用于提取各种字段,但不会直接映射到 UDM。 |
name1 |
answers.name |
使用 Grok 模式从原始日志的 msg2 字段中提取,并映射到 answers.name 。 |
name2 |
answers.name |
使用 Grok 模式从原始日志的 msg2 字段中提取,并映射到 answers.name 。 |
protocol |
network.ip_protocol |
如果与已知协议匹配,则直接从原始日志的 protocol 字段映射。 |
qclass |
dns_question.class |
用于将 dns_class 映射到 UDM 的中间字段。 |
qclass1 |
answers.class |
用于将 dns_class1 映射到 UDM 的中间字段。 |
qclass2 |
answers.class |
用于将 dns_class2 映射到 UDM 的中间字段。 |
query_type |
dns_question.type |
使用 dns_record_type.include 查找表进行映射。 |
query_type1 |
answers.type |
使用 dns_record_type.include 查找表进行映射。 |
query_type2 |
answers.type |
使用 dns_record_type.include 查找表进行映射。 |
recursion_flag |
network.dns.recursion_desired |
如果 recursion_flag 包含“+”,则映射到 network.dns.recursion_desired 为 true。 |
record_type |
dns_question.type |
用于将 query_type 映射到 UDM 的中间字段。 |
record_type1 |
answers.type |
用于将 query_type1 映射到 UDM 的中间字段。 |
record_type2 |
answers.type |
用于将 query_type2 映射到 UDM 的中间字段。 |
res_code |
network.dns.response_code |
使用 dns_response_code.include 查找表进行映射。 |
response_code |
network.dns.response_code |
对于 CEF 格式的日志,如果存在 response_code ,则使用 dns_response_code.include 查找表将其映射到 network.dns.response_code 。 |
security_action |
security_result.action |
派生自 status 字段。如果 status 为“denied”,则将 security_action 设置为“BLOCK”;否则,将其设置为“ALLOW”。 |
severity |
security_result.severity |
对于 CEF 格式的日志,如果 severity 存在且为“informational”,则会将其映射到 security_result.severity ,并将其值设为“INFORMATIONAL”。 |
src_host |
principal.hostname |
使用 Grok 模式从原始日志的 description 或 message 字段中提取,并映射到 principal.hostname 。 |
src_ip |
principal.ip 或 principal.hostname |
使用 Grok 模式从原始日志的 message 字段中提取。如果它是有效的 IP 地址,则会映射到 principal.ip ;否则,会映射到 principal.hostname 。 |
src_port |
principal.port |
使用 Grok 模式从原始日志的 message 字段中提取,并映射到 principal.port 。 |
ttl1 |
answers.ttl |
使用 Grok 模式从原始日志的 msg2 字段中提取,并映射到 answers.ttl 。 |
ttl2 |
answers.ttl |
使用 Grok 模式从原始日志的 msg2 字段中提取,并映射到 answers.ttl 。 |
metadata.event_type |
metadata.event_type |
派生自各种字段和解析器逻辑。如果未识别出其他事件类型,则默认为 GENERIC_EVENT 。可能的值包括 NETWORK_DNS 、NETWORK_CONNECTION 和 STATUS_UPDATE 。 |
metadata.log_type |
metadata.log_type |
由解析器设置为“INFOBLOX_DNS”。 |
metadata.product_name |
metadata.product_name |
由解析器设置为“Infoblox DNS”。 |
metadata.vendor_name |
metadata.vendor_name |
由解析器设置为“INFOBLOX”。 |
metadata.product_version |
metadata.product_version |
从 CEF 消息中提取。 |
metadata.event_timestamp |
metadata.event_timestamp |
从 timestamp 字段复制。 |
network.application_protocol |
network.application_protocol |
如果 event_type 不是“GENERIC_EVENT”或“STATUS_UPDATE”,则设置为“DNS”。 |
需要更多帮助?从社区成员和 Google SecOps 专业人士那里获得解答。