McAfee ESM
本文档介绍了如何将 McAfee ESM 与 Google SecOps 集成。
集成应用场景
- 将警报或关联数据注入 Google Security Operations
- 通过此集成,您可以将 McAfee ESM 中的信息注入到 Google SecOps。特别是,注入警报和关联,以便稍后在 SOAR 平台中进行分类。这可以通过用于提取警报的 McAfee ESM 连接器和用于提取相关性的 McAfee ESM 相关性连接器来实现。
- 执行深入分析,获取有关安全事件的更多背景信息
- 该集成支持多项操作,可让您执行自定义查询(获取类似事件、发送高级查询、向 ESM 发送查询、向 ESM 发送实体查询)并提取事件信息。此外,还有获取类似事件操作,用于查询与 Google SecOps 提醒中的 IP 地址、主机名和用户相关的事件。
- 使用监视列表跟踪 IOC
- 此集成支持在观看列表中添加和移除内容。这样,您就可以不断更新包含可疑 IP 地址或哈希的监视列表。
网络
从 Google SecOps 到 McAfee ESM 的 API 访问:允许通过端口 443 (HTTPS)(或根据您的环境配置)传输流量。
会话管理
McAfee ESM 具有一个全局参数,用于限制每个用户的会话数。
Google SecOps 具有完整的会话管理机制,因此集成会在整个集成过程中使用同一会话。会话值以加密形式存储在 McAfee_ESM_Action_Sessions_*.json 和 McAffee_ESM_Connector_Sessions_*.json 数据库条目中。
建议:
- 一个用户用于操作,一个用户用于连接器。
- 每位用户应至少有两次会话。
这些建议对于确保集成稳定性至关重要。
集成兼容性
| 产品名称 | 版本 | 部署 | 备注 |
|---|---|---|---|
| McAfee ESM | 11.1-11.5 | 本地 | 该集成已在 11.1-11.5 产品版本中进行了测试,并且集成中使用的 API 未经修改。 如果 API 在较新版本中未更新,则集成仍可正常运行。 |
在 Google SecOps 中配置 McAfeeESM 集成
有关如何在 Google SecOps 中配置集成的详细说明,请参阅配置集成。
集成配置参数
使用以下参数配置集成:
| 参数名称 | 类型 | 默认值 | 必填 | 说明 |
|---|---|---|---|---|
| API 根 | Sring | https://{ip}/rs/ | 是 | 实例的 API 根。 |
| 用户名 | 字符串 | 不适用 | 是 | 实例的用户名。 |
| 密码 | 密码 | 不适用 | 是 | 实例的密码。 |
| 产品版本 | 字符串 | 11.5 | 是 | 产品版本。可能的值:11.1-11.5 |
| 验证 SSL | 复选框 | 勾选 | 是 | 如果启用,则会验证与 McAfee ESM 服务器连接的 SSL 证书是否有效。 |
操作
将值添加到监控列表
操作说明
在 McAfee ESM 中向监视列表添加值。
操作使用情况
使用此操作可使用新值更新监视列表。例如,如果您有一个恶意哈希监视列表,则可以使用此操作使监视列表保持最新状态。
操作配置参数
使用以下参数配置操作:
| 参数名称 | 类型 | 默认值 | 必填 | 说明 |
|---|---|---|---|---|
| 监控列表名称 | 字符串 | 不适用 | 是 | 指定需要更新的监控列表的名称。 |
| 要添加的值 | CSV | 不适用 | 是 | 指定需要添加到监视列表中的值的逗号分隔列表。 |
操作实体范围
此操作不会对实体执行。
操作结果
脚本结果
| 脚本结果名称 | 值选项 | 示例 |
|---|---|---|
| is_success | True/False | is_success:False |
JSON 结果
N/A
案例墙
| 结果类型 | 值/说明 | 类型 |
|---|---|---|
| 输出消息* | 操作不应失败,也不应停止 playbook 执行: 如果报告了 200 状态代码 (is_success=true):“已成功将值添加到监视列表。” 操作应失败并停止 playbook 执行: 如果报告了严重错误(例如凭据错误或无法连接到服务器),则会显示:“Error executing action "Add Values To Watchlist". Reason: {0}".format(error.Stacktrace) 如果响应中报告了错误:“执行‘向监视列表添加值’操作时出错。原因:{message}。 |
常规 |
获取类似事件
操作说明
获取与 McAfee ESM 中的实体相关的事件。支持的实体:主机名、IP 地址、用户。
操作配置参数
使用以下参数配置操作:
| 参数名称 | 类型 | 默认值 | 必填 | 说明 |
|---|---|---|---|---|
| 小时前 | 字符串 | 1 | 是 | 指定要向前搜索的小时数。 |
| IPS ID | 字符串 | 144115188075855872/8 | 否 | 指定要搜索的 IP SID。 |
| 结果限制 | 字符串 | 50 | 否 | 指定要返回的结果数。 参数值上限:每个实体 200 个。 |
操作实体范围
此操作将在以下实体上运行:
- IP 地址
- 主机名
- 用户
操作结果
脚本结果
| 脚本结果名称 | 值选项 | 示例 |
|---|---|---|
| is_success | True/False | is_success:False |
JSON 结果
[
{
"EntityResult":
[{
"Alert.DstPort": "0",
"Rule.msg": "User Logon",
"Alert.IPSIDAlertID": "144115188075855872|383521",
"Action.Name": "success",
"Alert.SrcIP": "1.1.1.1",
"Alert.LastTime": "05/28/2019 14:18:10",
"Alert.Protocol": "n/a",
"Alert.SrcPort": "0",
"Alert.DstIP": "1.1.1.1"
}, {
"Alert.DstPort": "0",
"Rule.msg": "User Logon",
"Alert.IPSIDAlertID": "144115188075855872|383519",
"Action.Name": "success",
"Alert.SrcIP": "1.1.1.1",
"Alert.LastTime": "05/28/2019 14:16:16",
"Alert.Protocol": "n/a",
"Alert.SrcPort": "0",
"Alert.DstIP": "1.1.1.1"
}],
"Entity": "1.1.1.1"
}
]
实体丰富化
| 扩充项字段名称 | 逻辑 - 适用情形 |
|---|---|
| Alert.DstPort | 如果存在于 JSON 结果中,则返回 |
| Rule.msg | 如果存在于 JSON 结果中,则返回 |
| Alert.IPSIDAlertID | 如果存在于 JSON 结果中,则返回 |
| Alert.SrcIP | 如果存在于 JSON 结果中,则返回 |
| Alert.LastTime | 如果存在于 JSON 结果中,则返回 |
| Alert.Protocol | 如果存在于 JSON 结果中,则返回 |
| Alert.SrcPort | 如果存在于 JSON 结果中,则返回 |
| Alert.DstIP | 如果存在于 JSON 结果中,则返回 |
案例墙
| 结果类型 | 值/说明 | 类型 |
|---|---|---|
| 输出消息* | 操作不应失败,也不应停止 playbook 执行: 如果针对一个实体报告了 200 状态代码 (is_success=true):“已成功检索 McAfee ESM 中以下实体的事件:{entities}” 如果某个实体没有数据 (is_success=true):“操作无法检索 McAfee ESM 中以下实体的事件:{entities}。” 如果所有实体都没有数据 (is_success=false):“在 McAfee ESM 中未找到所提供实体的任何事件。” 异步消息:“正在等待查询完成,以获取{pending entities}。” 操作应失败并停止 playbook 执行: 如果报告了严重错误:“执行‘获取类似事件’操作时出错。Reason: {0}".format(error.Stacktrace) 如果操作超时:“执行操作‘获取类似事件’时出错。原因:操作启动了查询,但在数据检索过程中超时。请在 IDE 中增加超时时间,然后重试。” |
常规 |
| 案例墙表格 | 响应中的所有字段。 | 实体 |
Ping
操作说明
使用 Google SecOps Content Hub 页面中集成配置页面上提供的参数,测试与 McAfee ESM 的连接。
操作配置参数
此操作没有强制性输入参数。
操作实体范围
此操作不会对实体执行。
操作结果
脚本结果
| 脚本结果名称 | 值选项 | 示例 |
|---|---|---|
| is_success | True/False | is_success:False |
JSON 结果
N/A
案例墙
| 结果类型 | 值/说明 | 类型 |
|---|---|---|
| 输出消息* | 操作不应失败,也不应停止 playbook 执行: 如果成功:“已使用提供的连接参数成功连接到 McAfee ESM 服务器!” 操作应失败并停止 playbook 执行: 如果未成功:“Failed to connect to the McAfee ESM server! 错误为 {0}”。format(exception.stacktrace) |
常规 |
从观看列表中移除值
操作说明
从 McAfee ESM 中的监视列表中移除值。
操作使用情况
使用此操作可从监控列表中移除特定值。例如,如果您有一个恶意哈希监控列表,并且发现其中一个哈希是良性的,则可以将其从监控列表中移除。
操作配置参数
使用以下参数配置操作:
| 参数名称 | 类型 | 默认值 | 必填 | 说明 |
|---|---|---|---|---|
| 监控列表名称 | 字符串 | 不适用 | 是 | 指定需要更新的监视列表的名称。 |
| 要移除的值 | CSV | 不适用 | 是 | 指定需要从监控列表中移除的值(以逗号分隔列表形式)。 |
操作实体范围
此操作不会对实体执行。
操作结果
脚本结果
| 脚本结果名称 | 值选项 | 示例 |
|---|---|---|
| is_success | True/False | is_success:False |
JSON 结果
N/A
案例墙
| 结果类型 | 值/说明 | 类型 |
|---|---|---|
| 输出消息* | 操作不应失败,也不应停止 playbook 执行: 如果报告了 200 状态代码 (is_success=true):“已成功将值添加到监视列表。” 操作应失败并停止 playbook 执行: 如果报告了严重错误(例如凭证错误或无法连接到服务器),则会显示以下消息:“执行‘从监视列表中移除值’操作时出错。Reason: {0}".format(error.Stacktrace) 如果响应中报告了错误:“执行‘从监视列表中移除值’操作时出错。原因:{message}。” | 常规 |
向 ESM 发送高级查询
操作说明
向 ESM 发送高级查询。
操作使用情况
这是一项高级操作,可让您在 McAfee ESM 中灵活执行任何查询。此操作会将完整的查询载荷作为输入。无论载荷中提供什么内容,该操作最多返回 200 条记录。
操作配置参数
使用以下参数配置操作:
| 参数名称 | 类型 | 默认值 | 必填 | 说明 |
|---|---|---|---|---|
| 查询载荷 | 字符串 | 不适用 | 是 | 指定需要执行的 JSON 对象。 该操作最多返回 200 个结果。 |
创建查询载荷
如需创建查询载荷,请完成以下步骤:
- 登录 McAfee ESM 界面,然后在浏览器中打开开发者工具。
- 前往网络标签页。
- 点击添加标签页,然后添加新视图。
- 点击添加微件。
在微件配置对话框中,输入微件标题,然后选择要执行的查询。
在开发者工具中,您会看到
runningQueryAPI 请求。前往载荷标签页,然后点击查看源代码。
复制载荷并将其粘贴到查询载荷参数字段中。

操作实体范围
此操作不会对实体执行。
操作结果
脚本结果
| 脚本结果名称 | 值选项 | 示例 |
|---|---|---|
| is_success | True/False | is_success:False |
JSON 结果
[
{
"Rule.msg": "* Latest Kubernetes 1.18 beta is now available for your laptop, NUC, cloud",
"COUNT(*)": "1",
"SUM(Alert.EventCount)": "1",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "Starting Message of the Day...",
"COUNT(*)": "1",
"SUM(Alert.EventCount)": "1",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "Started Message of the Day.",
"COUNT(*)": "1",
"SUM(Alert.EventCount)": "1",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "https://xxxxxxxx.run/",
"COUNT(*)": "1",
"SUM(Alert.EventCount)": "1",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "* Multipass 1.1 adds proxy support for developers behind enterprise",
"COUNT(*)": "1",
"SUM(Alert.EventCount)": "1",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "sudo snap install microk8s --channel=1.18/beta --classic",
"COUNT(*)": "1",
"SUM(Alert.EventCount)": "1",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "Starting Daily apt upgrade and clean activities...",
"COUNT(*)": "1",
"SUM(Alert.EventCount)": "1",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "Started Daily apt upgrade and clean activities.",
"COUNT(*)": "1",
"SUM(Alert.EventCount)": "1",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "firewalls. Rapid prototyping for cloud operations just got easier.",
"COUNT(*)": "1",
"SUM(Alert.EventCount)": "1",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "instance or Raspberry Pi, with automatic updates to the final GA release.",
"COUNT(*)": "1",
"SUM(Alert.EventCount)": "1",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "Data Center : Telmetry Posting",
"COUNT(*)": "1",
"SUM(Alert.EventCount)": "1",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "Send Password Expiry Notification",
"COUNT(*)": "1",
"SUM(Alert.EventCount)": "1",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "Data Center: Telemetry Notifier to Collect Data",
"COUNT(*)": "1",
"SUM(Alert.EventCount)": "1",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "Update successful",
"COUNT(*)": "1",
"SUM(Alert.EventCount)": "1",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "Update successful",
"COUNT(*)": "1",
"SUM(Alert.EventCount)": "1",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "8198-software protection platform service",
"COUNT(*)": "1",
"SUM(Alert.EventCount)": "1",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "1003-software protection platform service",
"COUNT(*)": "1",
"SUM(Alert.EventCount)": "1",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "The Time Provider NtpClient is Currently Receiving Valid Time Data",
"COUNT(*)": "1",
"SUM(Alert.EventCount)": "1",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "Time service now synchronizing system time",
"COUNT(*)": "1",
"SUM(Alert.EventCount)": "1",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "autorefresh.go:397: auto-refresh: all snaps are up-to-date",
"COUNT(*)": "2",
"SUM(Alert.EventCount)": "2",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "storehelpers.go:436: cannot refresh: snap has no updates available: \\\"amazon-ssm-agent\\\", \\\"core\\\"",
"COUNT(*)": "2",
"SUM(Alert.EventCount)": "2",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "The Windows Security Center Service could not start Windows Defender",
"COUNT(*)": "1",
"SUM(Alert.EventCount)": "2",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "A user's local group membership was enumerated",
"COUNT(*)": "2",
"SUM(Alert.EventCount)": "2","Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "The System Time Has Changed",
"COUNT(*)": "1",
"SUM(Alert.EventCount)": "3",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "The system time was changed.",
"COUNT(*)": "1",
"SUM(Alert.EventCount)": "3",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "User Logon",
"COUNT(*)": "4",
"SUM(Alert.EventCount)": "4",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "16384-software protection platform service",
"COUNT(*)": "7",
"SUM(Alert.EventCount)": "7",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "16394-software protection platform service",
"COUNT(*)": "7",
"SUM(Alert.EventCount)": "7",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "Linux crond Session opened",
"COUNT(*)": "10",
"SUM(Alert.EventCount)": "10",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "Linux crond Session closed",
"COUNT(*)": "10",
"SUM(Alert.EventCount)": "10",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "Linux cron Scheduled Command Executed",
"COUNT(*)": "10",
"SUM(Alert.EventCount)": "10",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "DHCPACK of xx.x.x.xxx from xx.x.x.x",
"COUNT(*)": "19",
"SUM(Alert.EventCount)": "19",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "Linux dhclient Renewal",
"COUNT(*)": "19",
"SUM(Alert.EventCount)": "19",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "Linux DHCP Client Request",
"COUNT(*)": "19",
"SUM(Alert.EventCount)": "19",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "Special Privileges Assigned",
"COUNT(*)": "28",
"SUM(Alert.EventCount)": "28",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "Special privileges assigned to new logon.",
"COUNT(*)": "21",
"SUM(Alert.EventCount)": "30",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "An account was successfully logged on",
"COUNT(*)": "21",
"SUM(Alert.EventCount)": "30",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "Endpoint Security Firewall Property Translator",
"COUNT(*)": "40",
"SUM(Alert.EventCount)": "40",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "Retrieve broker health information",
"COUNT(*)": "41",
"SUM(Alert.EventCount)": "41",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "5379-microsoft-windows-security-auditing",
"COUNT(*)": "10",
"SUM(Alert.EventCount)": "90",
"Alert.DSIDSigID": "12345-2223334445"
},{
"Rule.msg": "Returns a list of DXL Registered Services",
"COUNT(*)": "43",
"SUM(Alert.EventCount)": "164",
"Alert.DSIDSigID": "12345-2223334445"
}
]
案例墙
如果操作超时:“执行操作‘向 ESM 发送高级查询’时出错。原因:操作启动了查询,但在数据检索过程中超时。请在 IDE 中增加超时时间,然后重试。”
| 结果类型 | 值/说明 | 文本 |
|---|---|---|
| 输出消息* | 操作不应失败,也不应停止 playbook 执行: 如果状态代码为 200 (is_success=true):“已成功在 McAfee ESM 中检索到所提供查询的数据。” 如果某个实体没有数据 (is_success=true):“在 McAfee ESM 中未找到所提供查询的数据。” 异步消息:“正在等待查询完成…” 操作应失败并停止 playbook 执行: 如果报告了严重错误:“执行操作‘向 ESM 发送高级查询’时出错。Reason: {0}".format(error.Stacktrace) 如果报告了 400 或 500 状态代码:“执行操作‘将高级查询发送到 ESM’时出错。Reason: {0}";.format(response) |
常规 |
| 案例墙表格 | 响应中的所有字段。 | 常规 |
向 ESM 发送查询
操作说明
向 ESM 发送查询。
操作使用情况
使用此操作可对 Google SecOps 提醒执行额外的深入分析。您可以提取事件、资产和流信息。
操作配置参数
使用以下参数配置操作:
| 参数名称 | 类型 | 默认值 | 必填 | 说明 |
|---|---|---|---|---|
| 时间范围 | 下拉列表 | LAST_24_HOURS 可能的值:
|
是 | 指定结果的时间范围。 如果选择 |
| 开始时间 | 字符串 | 不适用 | 否 | 指定结果的开始时间。 如果为时间范围参数选择了 格式:ISO 8601 |
| 结束时间 | 字符串 | 不适用 | 否 | 指定结果的结束时间。 格式:ISO 8601。 如果未提供任何内容,并且为时间范围参数选择了 |
| 过滤条件字段名称 | 字符串 | 不适用 | 是 | 指定将用于过滤的字段名称。 |
| 过滤条件运算符 | 下拉列表 | 等于 可能的值:
| 是 | 指定应在过滤条件中使用的运算符。 |
| 过滤值 | 字符串 | 不适用 | 是 | 指定要在过滤条件中使用的值的逗号分隔列表。 |
| 要提取的字段 | CSV | 不适用 | 否 | 指定应返回的字段的逗号分隔列表。 如果未提供任何内容,则操作会使用预定义字段。 |
| 排序字段 | 字符串 | 不适用 | 否 | 指定应使用哪个参数进行排序。 此参数要求字段采用 {table}.{key name} 格式。如果参数以其他格式提供,操作将跳过该参数。 示例:Alert.LastTime |
| 排列顺序 | 下拉列表 | 升序 可能的值:
|
否 | 指定排序顺序。 |
| 查询类型 | 下拉列表 | 活动 可能的值:
|
是 | 指定需要查询的内容。 |
| 返回的结果数上限 | 整数 | 50 | 是 | 指定要返回的结果数。 默认参数值:50。 参数值上限:200。 |
使用时间范围参数
时间范围参数指定执行查询时要使用的时间范围。该操作支持许多预定义的值,您可以从中进行选择。 您还可以设置自定义时间范围。
如需设置自定义时间范围,您需要将 时间范围 参数设置为 Custom,并为 开始时间 参数提供 ISO 8601 值。默认情况下,结束时间参数指向当前时间。
为“过滤条件字段名称”“要提取的字段”和“排序字段”参数指定字段
如需为过滤条件字段名称、要提取的字段和排序字段参数指定字段,请完成以下步骤:
- 登录 McAfee ESM 界面,然后在浏览器中打开开发者工具。
- 前往网络标签页。
- 点击添加标签页,然后添加新视图。
- 点击添加微件。
在微件配置对话框中:
- 在字段部分,选择您感兴趣的所有字段。
- 输入自定义标题,并将查询来源设置为
Events。对于素材资源,请选择Assets;对于流,请选择Flows。
选择所需的所有字段后,点击创建。
在开发者工具中,您会看到
runningQuery请求。获取有关此请求的详细信息,然后前往请求部分。您会看到一个列表,其中包含您提供的字段的所有 API 名称。
已知问题
- 在将不受支持的类型(FLOAT 键)的键与
GREATER_OR_EQUALS_THAN或LESS_OR_EQUALS_THAN运算符搭配使用的场景中,操作用于发送查询 (qryExecuteDetail) 的 McAfee ESM API 会出现意外行为。验证所用字段的类型。 - 我们发现,即使过滤条件未返回 McAfee API 错误,某些键组合也不会返回任何结果。
操作实体范围
此操作会对所有实体执行。
操作结果
脚本结果
| 脚本结果名称 | 值选项 | 示例 |
|---|---|---|
| is_success | True/False | is_success:False |
JSON 结果
[
{
"Rule.msg": "McAfee EDB database server state change alert",
"Alert.AvgSeverity": "25",
"Alert.SrcIP": "::",
"Alert.EventCount": "1",
"Alert.LastTime": "02/12/2019 20:45:45",
"Alert.Protocol": "n/a",
"Action.Name": "informational",
"Alert.IPSIDAlertID": "144115188075855872|1",
"Alert.DstIP": "10.0.0.10"
}
]
案例墙
如果操作超时:“执行操作‘向 ESM 发送查询’时出错。原因:操作启动了查询,但在数据检索过程中超时。请在 IDE 中增加超时时间,然后重试。”
| 结果类型 | 值/说明 | 文本 |
|---|---|---|
| 输出消息* | 操作不应失败,也不应停止 playbook 执行: 如果状态代码为 200 (is_success=true):“已成功在 McAfee ESM 中检索到所提供查询的数据。” 如果某个实体没有数据 (is_success=true):“在 McAfee ESM 中未找到所提供查询的数据。” 异步消息:“正在等待查询完成…” 操作应失败并停止 playbook 执行: 如果报告了严重错误:“执行操作‘将查询发送到 ESM’时出错。Reason: {0}".format(error.Stacktrace) 如果报告了 400 或 500 状态代码:“执行操作‘向 ESM 发送查询’时出错。原因:{0}”。format(response) |
常规 |
| 案例墙表格 | 响应中的所有字段。 | 常规 |
向 ESM 发送实体查询
操作说明
根据实体向 ESM 发送查询。支持的实体:IP 地址、主机名。
操作使用情况
使用此操作可对实体周围的 Google SecOps 提醒执行额外的深入分析。您可以提取事件、素材资源和流程信息。与将查询发送到 ESM 操作不同,此操作还会将实体过滤条件添加为查询的一部分。
操作配置参数
使用以下参数配置操作:
| 参数名称 | 类型 | 默认值 | 必填 | 说明 | |
|---|---|---|---|---|---|
| IP 地址实体键 | 字符串 | Alert.SrcIP | 是 | 指定在过滤期间将与 IP 地址实体一起使用的键。 如果提供的键无效,该操作仍会返回结果,但结果不符合预期。 |
|
| 主机名实体键 | 字符串 | 不适用 | 是 | 指定在过滤期间与主机名实体搭配使用的键。 如果提供的密钥无效,该操作仍会返回结果,但结果不符合预期。 |
|
| 时间范围 | 下拉列表 | LAST_HOUR 可能的值:
|
是 | 指定结果的时间范围。如果选择 Custom,您还需要提供开始时间参数。 |
|
| 开始时间 | 字符串 | 不适用 | 否 | 指定结果的开始时间。 如果为时间范围参数选择了 格式:ISO 8601 |
|
| 结束时间 | 字符串 | 不适用 | 否 | 指定结果的结束时间。 格式:ISO 8601。 如果未提供任何内容,并且为时间范围参数选择了 |
|
| 过滤条件字段名称 | 字符串 | 不适用 | 是 | 指定将用于过滤的字段名称。 | |
| 过滤条件运算符 | 下拉列表 | 等于 可能的值:
| 是 | 指定应在过滤条件中使用的运算符。 | |
| 过滤值 | 字符串 | 不适用 | 是 | 指定要在过滤条件中使用的值的逗号分隔列表。 | |
| 要提取的字段 | CSV | 不适用 | 否 | 指定应返回的字段的逗号分隔列表。 如果未提供任何内容,则操作会使用预定义字段。 |
|
| 排序字段 | 字符串 | 不适用 | 否 | 指定应使用哪个参数进行排序。 此参数要求字段采用 {table}.{key name} 格式。如果参数以其他格式提供,操作将跳过该参数。 示例:Alert.LastTime |
|
| 排列顺序 | 下拉列表 | 升序 可能的值:
|
否 | 指定排序顺序。 | |
| 返回的结果数上限 | 整数 | 50 | 是 | 指定要返回的结果数。 默认参数值:50。 参数值上限:200。 |
使用时间范围参数
时间范围参数指定执行查询时要使用的时间范围。该操作支持许多预定义的值,您可以从中进行选择。 您还可以设置自定义时间范围。
如需设置自定义时间范围,您需要将 时间范围 参数设置为 Custom,并为 开始时间 参数提供 ISO 8601 值。默认情况下,结束时间参数指向当前时间。
为“过滤条件字段名称”“要提取的字段”和“排序字段”参数指定字段
如需为过滤条件字段名称、要提取的字段和排序字段参数指定字段,请完成以下步骤:
- 登录 McAfee ESM 界面,然后在浏览器中打开开发者工具。
- 前往网络标签页。
- 点击添加标签页,然后添加新视图。
- 点击添加微件。
在微件配置对话框中:
- 在字段部分,选择您感兴趣的所有字段。
- 输入自定义标题,并将查询来源设置为
Events。对于素材资源,请选择Assets;对于流,请选择Flows。
选择所需的所有字段后,点击创建。
在开发者工具中,您会看到
runningQuery请求。获取有关此请求的详细信息,然后前往请求部分。您会看到一个列表,其中包含您提供的字段的所有 API 名称。
使用 IP 地址实体键和主机名实体键参数
IP 地址实体键和主机名实体键参数定义了过滤条件中使用的键。例如,如果 IP 地址实体键参数设置为 Alert.SrcIP,则该操作会使用 Alert.SrcIP 键创建 IP 地址过滤条件。您可以根据应用场景修改所使用的密钥。
已知问题
- 在将不受支持的类型(FLOAT 键)的键与
GREATER_OR_EQUALS_THAN或LESS_OR_EQUALS_THAN运算符搭配使用的场景中,操作用于发送查询 (qryExecuteDetail) 的 McAfee ESM API 会出现意外行为。验证所用字段的类型。 - 我们发现,即使过滤条件未返回 McAfee API 错误,某些键组合也不会返回任何结果。
操作实体范围
此操作将在以下实体上运行:
- IP 地址
- 主机名
操作结果
脚本结果
| 脚本结果名称 | 值选项 | 示例 |
|---|---|---|
| is_success | True/False | is_success:False |
JSON 结果
[
{
"Rule.msg": "McAfee EDB database server state change alert",
"Alert.AvgSeverity": "25",
"Alert.SrcIP": "::",
"Alert.EventCount": "1",
"Alert.LastTime": "02/12/2019 20:45:45",
"Alert.Protocol": "n/a",
"Action.Name": "informational",
"Alert.IPSIDAlertID": "144115188075855872|1",
"Alert.DstIP": "10.0.0.10"
}
]
案例墙
| 结果类型 | 值 / 说明 | 类型 |
|---|---|---|
| 输出消息* | 操作不应失败,也不应停止 playbook 执行: 如果报告了 200 状态代码(is_success=true):“已成功检索 McAfee ESM 中以下实体的数据:{entity.identifier}” 如果所有实体都没有数据:“在 McAfee ESM 中未找到以下实体的数据:{entity.id}。” 如果针对特定实体报告了 400 或 500 状态代码:“未在 McAfee ESM 中针对以下实体执行查询:{entity.id}。请检查配置。” 如果所有实体都没有数据 (is_success=true):“在 McAfee ESM 中未找到所提供实体的数据” 异步消息:“正在等待实体完成处理…”
操作应失败并停止 playbook 执行: 如果报告了严重错误:“执行‘向 ESM 发送实体查询’操作时出错。Reason: {0}''.format(error.Stacktrace)." 如果所有实体都报告了 400 或 500 状态代码:“Error executing action "Send Entity Query To ESM". 原因:{response}” 如果操作超时:“执行操作‘向 ESM 发送实体查询’时出错。原因:操作启动了查询,但在检索以下实体的数据时超时:{entity.identifier}。请在 IDE 中增加超时时间,然后重试。注意:如果您重试,系统会再发送一条消息。” |
常规 |
| 案例墙表格 | 响应中的所有字段。 | 实体 |
连接器
连接器升级 - 集成版本:34.0
连接器已在 34.0 集成版本中进行了改进。它们经过优化,不易出现 bug,并且更易于维护。此外,还添加了新功能。
如果您想将连接器升级到 34.0 版本,建议您先熟悉连接器配置参数。连接器升级不会影响 playbook。
McAfeeESM 连接器
连接器说明
从 McAfee ESM 中提取有关警报的信息。
连接器用法
使用连接器将关联和相关事件注入 Google SecOps。 在此连接器中,一个 Google SecOps 提醒由一个关联事件表示。
Google SecOps 事件是根据以下对象中的数据创建的:
- 警报数据
- 关联事件数据:关联是由关联规则创建的触发事件
- 来源事件数据:导致关联或警报的基础事件
基于警报数据的 Google SecOps 事件示例:

基于关联或来源事件数据的 Google SecOps 事件示例:

每个 Google SecOps 事件都包含来自 API 的原始信息,以及为简化映射而添加的其他键。为了区分不同类型的 Google SecOps 事件,有一个自定义 data_type 键。此键可包含以下值:
- 警报器
- 关联事件
- 来源事件
Google SecOps 事件中的自定义类型字段
McAfee ESM 相关性/来源事件可能包含不适合映射的原始 API 表示法的自定义字段。
自定义类型原始数据示例:
"customTypes": [
{
"fieldId": 1,
"fieldName": "AppID",
"definedFieldNumber": 1,
"unformattedValue": "374385694492",
"formatedValue": "WIN"
},
{
"fieldId": 7,
"fieldName": "UserIDSrc",
"definedFieldNumber": 7,
"unformattedValue": "22018731010750406",
"formatedValue": "NGCP"
},
{
"fieldId": 4259842,
"fieldName": "Message_Text",
"definedFieldNumber": 9,
"unformattedValue": "11049395522927265911",
"formatedValue": "User Log In succeeded"
}
]
在 Google SecOps 事件中,相同的字段以以下方式表示:
{
"{fieldName}": "{formatedValue}",
"AppID": "WIN",
"UserIDSrc": "NGCP",
"Message_Text": "formatedValue",
"customTypeFields": {
"{fieldName}": "{formatedValue}",
"AppID": "WIN",
"UserIDSrc": "NGCP",
"Message_Text": "formatedValue"
}
}
我们建议使用带有 customTypeFields 键的占位符,因为占位值可以正确表示自定义字段。上述级别表示的自定义字段可能包含误导性信息。如果添加自定义字段之前已存在同名键,则系统会使用原始键中的数据,因为 JSON 文件中不能有重复的键。
在 Google SecOps 中配置连接器
如需详细了解如何在 Google SecOps 中配置连接器,请参阅配置连接器。
连接器配置参数
使用以下参数配置连接器:
| 参数名称 | 类型 | 默认值 | 必填 | 说明 |
|---|---|---|---|---|
| 产品字段名称 | 字符串 | data_type | 是 | 用于确定设备产品的字段名称。 |
| 事件字段名称 | 字符串 | alarmName | 是 | 用于确定事件名称(子类型)的字段名称。 |
| API 根 | 字符串 | https://{ipaddress}/rs/ | 是 | McAfee ESM 实例的 API 根。 格式:https://{ip 地址}/rs/ |
| 密码 | Secret | 不适用 | 是 | McAfee ESM 账号的密码。 |
| PythonProccessTimeout | 整数 | 300 | 是 | 运行当前脚本的 Python 进程的超时限制。 |
| 产品版本 | 字符串 | 不适用 | 是 | Mcafee ESM 的版本。 可能的值:11.1、11.2、11.3、11.4、11.5。 |
| 用户名 | 字符串 | 不适用 | 是 | McAfee ESM 账号的用户名。 |
| 停用溢出 | 复选框 | 尚未核查 | 否 | 如果启用,连接器将停用溢出机制。 如需详细了解此参数,请参阅 使用“停用溢出”和“停用溢出(针对闹钟)”参数。 |
| 停用闹钟溢出 | CSV | 不适用 | 否 | 连接器将忽略溢出的警报名称的逗号分隔列表。 此参数要求启用停用溢出参数。 如需详细了解此参数,请参阅 使用“停用溢出”和“停用溢出(针对警报)”参数。 |
| 环境字段名称 | 字符串 | srcZone | 否 | 描述存储环境名称的字段的名称。 如果未找到环境字段,则环境为默认环境。 |
| 环境正则表达式模式 | 字符串 | :* | 否 | 要对“环境字段名称”字段中的值运行的正则表达式模式。 默认值为 .*,用于捕获所有值并返回未更改的值。 用于允许用户通过正则表达式逻辑操作环境字段。 如果正则表达式模式为 null 或空,或者环境值为 null,则最终环境结果为默认环境。 |
| 提取 0 个来源事件警报 | 复选框 | 勾选 | 否 | 如果启用,连接器会提取具有 0 个来源事件的警报。 连接器将等待填充时间参数中提供的时间。 如需详细了解此参数,请参阅 使用“提取 0 源事件警报”参数。 |
| 要提取的最低严重级别 | 整数 | 0 | 否 | 用于提取警报的最低严重级别。 可能的值介于 0 到 100 之间。 如果未指定任何内容,连接器会注入所有严重级别的警报。 |
| 要提取的闹钟数量上限 | 整数 | 100 | 否 | 每次连接器迭代要处理的警报数量。 默认参数值:20。 |
| 回溯的小时数上限 | 整数 | 1 | 否 | 提取警报的小时数。 |
| 缓冲时间 | 整数 | 1 | 否 | 连接器用于填充的小时数。 此参数描述了如果注入 0 个来源事件警报参数处于停用状态,连接器在注入具有 0 个来源事件的警报之前等待的时间。 参数值上限:6 小时。 |
| 代理密码 | 密码 | 不适用 | 否 | 用于进行身份验证的代理密码。 |
| 代理服务器地址 | 字符串 | 不适用 | 否 | 要使用的代理服务器的地址。 |
| 代理用户名 | 字符串 | 不适用 | 否 | 用于进行身份验证的代理用户名。 |
| 规则生成器字段名称 | 字符串 | alarmName | 否 | 规则生成器中使用的字段的名称。 如果该值不可用,连接器会使用 |
| 辅助设备产品字段 | 字符串 | 不适用 | 否 | 后备产品字段名称。 |
| 时间格式 | 字符串 | %m/%d/%Y %H:%M:%S | 否 | 用于读取 McAfee ESM 中提供的时间戳的时间格式。 如果未提供任何内容或提供的时间格式无效,则连接器不会执行转换。 如需详细了解此参数,请参阅 使用时区和时间格式参数。 |
| 时区 | 字符串 | 不适用 | 否 | 来源活动的时区。 需要此参数才能将时间戳转换为反映 UTC+0 时间的格式。 如果在时间格式参数中提供了无效值或未提供任何值,则系统会忽略此参数。 如需详细了解此参数,请参阅 使用时区和时间格式参数。 |
| 将动态列表用作屏蔽名单 | 复选框 | 尚未核查 | 否 | 如果启用,动态列表将用作屏蔽名单。 |
| 验证 SSL | 复选框 | 尚未核查 | 否 | 如果启用,则会验证与 McAfee ESM 服务器连接的 SSL 证书是否有效。 |
使用“提取 0 个来源事件警报”参数
在 McAfee ESM 中,可以存在包含 0 个事件的关联,这意味着 Google SecOps 提醒仅包含一个基于关联信息的 Google SecOps 事件。不建议注入包含 0 个来源事件的相关性,因为上下文会丢失。
如果启用了提取 0 个来源事件警报参数,连接器会将所有关联提取到 Google SecOps 系统中,即使相关事件数量为 0 也是如此。如果此参数处于停用状态,则连接器会等到 McAfee ESM 中至少出现一个来源事件。等待时间由填充期参数定义。
Padding Period 参数指定连接器在每次迭代中提取数据的回溯小时数(最大值为 6)。例如,如果填充期参数设置为 2,则连接器始终会提取 2 小时前的数据,并从该时间点开始处理数据。从逻辑上讲,填充时间表示连接器等待事件发生以便注入该事件的小时数。
以下两种闹钟类型除外:
- 设备运行状况
- 超出 EPS 速率
这些警报来自默认的 McAfee ESM 配置,并且永远不会有任何与其相关的事件。无论提取 0 个来源事件警报配置参数设置如何,连接器始终会提取这些警报。
使用“时区”和“时间格式”参数
有时,可以使用不同的格式配置 McAfee ESM 服务器级别的时间和时区。这可能会带来一些挑战,例如,McAfee ESM API 不会返回时区信息。默认情况下,连接器会将来自 API 的时间戳视为世界协调时间 (UTC)。这可能会导致 Google SecOps 提醒和事件中的时间出现混乱,因为系统会应用本地化设置。
例如,原始 API 返回的时间戳采用 UTC+8 时区。连接器提取了警报,然后本地化也设置为 UTC+8。在这种情况下,Google SecOps 提醒时间戳来自未来。
为克服这一挑战,请使用时区参数。此参数定义了获取世界协调时间 (UTC) 格式的时间戳的要求。如果 Mcafee ESM 返回 UTC+8 格式的时间戳,您需要将时区连接器参数设置为 -8。
在 Google SecOps 事件中,新增了 3 个键:
- 事件的
utc_firstTime和utc_lastTime键,基于关联/来源事件数据。 - 基于闹钟数据的事件的
utc_triggeredDate键。

使用“停用溢出”和“停用溢出(针对警报名称)”参数
有时,McAfee ESM 可能会产生大量噪声并创建大量关联事件。 Google SecOps 中有一个溢出机制,可防止在短时间内创建过多 Google SecOps 提醒。
如果您认为所有警报都有意义且需要进行分类,则此机制可能会有害。我们不建议停用溢出机制。 不过,如有需要,您可以使用停用溢出和停用警报名称溢出参数来实现此目的。
首选解决方案是使用 Disable Overflow For Alarm Names 参数,因为这样您就可以提供应忽略溢出规则的特定警报名称,而不是为所有警报停用溢出。
McAfeeESM Correlations Connector
连接器说明
从 McAfee ESM 中提取关联信息。
连接器用法
使用连接器将关联和相关事件注入 Google SecOps。 在此连接器中,一个 Google SecOps 提醒由一个关联事件表示。
Google SecOps 事件是根据以下对象中的数据创建的:
- 关联事件数据:关联是由关联规则创建的触发事件
- 来源事件数据:导致关联的基础事件
基于关联或来源事件数据的 Google SecOps 事件示例:

每个 Google SecOps 事件都包含来自 API 的原始信息,以及为简化映射而添加的其他键。为了区分不同类型的 Google SecOps 事件,有一个自定义 data_type 键。此键可包含以下值:
- 关联事件
- 来源事件
Google SecOps 事件中的自定义类型字段
McAfee ESM 相关性/来源事件可能包含不适合映射的原始 API 表示法的自定义字段。
自定义类型原始数据示例:
"customTypes": [
{
"fieldId": 1,
"fieldName": "AppID",
"definedFieldNumber": 1,
"unformattedValue": "374385694492",
"formatedValue": "WIN"
},
{
"fieldId": 7,
"fieldName": "UserIDSrc",
"definedFieldNumber": 7,
"unformattedValue": "22018731010750406",
"formatedValue": "NGCP"
},
{
"fieldId": 4259842,
"fieldName": "Message_Text",
"definedFieldNumber": 9,
"unformattedValue": "11049395522927265911",
"formatedValue": "User Log In succeeded"
}
]
在 Google SecOps 事件中,相同的字段以以下方式表示:
{
"{fieldName}": "{formatedValue}",
"AppID": "WIN",
"UserIDSrc": "NGCP",
"Message_Text": "formatedValue",
"customTypeFields": {
"{fieldName}": "{formatedValue}",
"AppID": "WIN",
"UserIDSrc": "NGCP",
"Message_Text": "formatedValue"
}
}
我们建议使用带有 customTypeFields 键的占位符,因为占位值可以正确表示自定义字段。上述级别表示的自定义字段可能包含误导性信息。如果添加自定义字段之前已存在同名键,则系统会使用原始键中的数据,因为 JSON 文件中不能有重复的键。
在 Google SecOps 中配置连接器
如需详细了解如何在 Google SecOps 中配置连接器,请参阅配置连接器。
连接器参数
使用以下参数配置连接器:
| 参数名称 | 类型 | 默认值 | 必填 | 说明 |
|---|---|---|---|---|
| 产品字段名称 | 字符串 | data_type | 是 | 输入源字段名称,以便检索产品字段名称。 |
| 事件字段名称 | 字符串 | sigId | 是 | 输入源字段名称,以检索事件字段名称。 |
| 环境字段名称 | 字符串 | srcZone | 否 | 描述存储环境名称的字段的名称。 如果未找到环境字段,则环境为默认环境。 |
| 环境正则表达式模式 | 字符串 | :* | 否 | 要对“环境字段名称”字段中的值运行的正则表达式模式。 默认值为 .*,用于捕获所有值并返回未更改的值。 用于允许用户通过正则表达式逻辑操作环境字段。 如果正则表达式模式为 null 或空,或者环境值为 null,则最终环境结果为默认环境。 |
| PythonProcessTimeout | 字符串 | 300 | 是 | 运行当前脚本的 Python 进程的超时限制。 |
| API 根 | 字符串 | https://{ipaddress}/rs/ | 是 | McAfee ESM 实例的 API 根。 格式:https://{ip 地址}/rs/ |
| 用户名 | 字符串 | 不适用 | 否 | McAfee ESM 账号的用户名。 |
| 密码 | Secret | 不适用 | 否 | McAfee ESM 账号的密码。 |
| 产品版本 | 字符串 | 不适用 | 是 | McAfee ESM 的版本。 可能的值:11.1、11.2、11.3、11.4、11.5。 |
| 要提取的最低平均严重级别 | 整数 | 0 | 否 | 用于提取关联的最低平均严重级别。可能的值介于 0 到 100 之间。 如果未指定任何内容,连接器会注入所有严重级别的关联。 |
| 注入 0 个来源事件关联 | 复选框 | 尚未核查 | 否 | 如果启用,连接器会提取具有 0 个来源事件的相关性。 此参数可能会影响来自产品字段名称、事件字段名称和规则生成器字段名称参数的值。 如果停用,连接器会等待 Padding Time 参数中指定的时间。 如需详细了解此参数,请参阅 使用“提取 0 个来源事件关联”参数。 |
| 缓冲时间 | 整数 | 1 | 否 | 连接器用于填充的小时数。 此参数描述了如果“注入 0 个来源事件关联”参数处于停用状态,连接器在注入具有 0 个来源事件的关联之前将等待多长时间。 参数值上限:6 小时。 |
| 回溯的小时数上限 | 整数 | 1 | 否 | 提取警报的小时数。 |
| 要提取的相关性数量上限 | 整数 | 20 | 否 | 每次连接器迭代要处理的警报数量。 默认参数值:20。 |
| IPSID 过滤条件 | 不适用 | 否 | 用于提取数据的 IPSID 逗号分隔列表。 如果未提供任何内容,连接器将使用默认 IPSID。 |
|
| SIGID 过滤条件 | CSV | 不适用 | 否 | 提取期间使用的签名 ID 的逗号分隔列表。 如果未提供任何内容,连接器会注入所有规则中的关联。 |
| 将动态列表用作屏蔽名单 | 复选框 | 尚未核查 | 否 | 如果启用,动态列表将用作屏蔽名单。 |
| 时间格式 | 字符串 | %m/%d/%Y %H:%M:%S | 否 | 用于读取 McAfee ESM 中提供的时间戳的时间格式。 如果未提供任何内容或提供的时间格式无效,则连接器不会执行转换。 如需详细了解此参数,请参阅 使用时区和时间格式参数。 |
| 时区 | 字符串 | 不适用 | 否 | 来源活动的时区。需要此参数才能将时间戳转换为反映 UTC+0 时间的格式。 如果 Time Format 参数中提供了无效值或未提供任何值,则系统会忽略此参数。 如需详细了解此参数,请参阅 使用时区和时间格式参数。 |
| 规则生成器字段名称 | 字符串 | 应用 | 否 | 规则生成器中使用的字段的名称。 如果提供的值无效,则操作会使用 |
| 辅助设备产品字段 | 字符串 | 不适用 | 否 | 后备产品字段名称。 |
| 停用溢出 | 复选框 | 尚未核查 | 否 | 如果启用,连接器会停用溢出机制。 如需详细了解此参数,请参阅 使用“停用溢出”和“针对 SigID 停用溢出”参数。 |
| 停用 SigID 的溢出功能 | CSV | 不适用 | 否 | 连接器忽略溢出的签名 ID 的逗号分隔列表。 此参数要求启用停用溢出参数。 如需详细了解此参数,请参阅 使用“停用溢出”和“针对 SigID 停用溢出”参数。 |
| 验证 SSL | 复选框 | 尚未核查 | 是 | 如果启用,则会验证与 McAfee ESM 服务器连接的 SSL 证书是否有效。 |
| 代理服务器地址 | 字符串 | 不适用 | 否 | 要使用的代理服务器的地址。 |
| 代理用户名 | 字符串 | 不适用 | 否 | 用于进行身份验证的代理用户名。 |
| 代理密码 | 密码 | 不适用 | 否 | 用于进行身份验证的代理密码。 |
使用“提取 0 个来源事件相关性”参数
在 McAfee ESM 中,可以存在包含 0 个事件的关联,这意味着 Google SecOps 提醒仅包含一个基于关联信息的 Google SecOps 事件。不建议注入包含 0 个来源事件的相关性,因为上下文会丢失。
如果启用了提取 0 个来源事件关联参数,连接器会将所有关联提取到 Google SecOps 系统中,即使有 0 个相关事件也是如此。如果此参数处于停用状态,则连接器会一直等待,直到 McAfee ESM 中至少出现一个来源事件。等待时间由填充期参数定义。
Padding Period(填充期)参数指定连接器在每次迭代中提取数据的回溯小时数(最大值为 6)。例如,如果填充期参数设置为 2,则连接器始终会提取 2 小时前的数据,并从该时间点开始处理数据。从逻辑上讲,填充时间表示连接器等待事件发生以便注入事件的小时数。
使用“时区”和“时间格式”参数
有时,可以使用不同的格式配置 McAfee ESM 服务器级别的时间和时区。这可能会带来一些挑战,例如,McAfee ESM API 不会返回时区信息。默认情况下,连接器会将来自 API 的时间戳视为世界协调时间 (UTC)。这可能会导致 Google SecOps 提醒和事件中的时间出现混乱,因为系统会应用本地化设置。
例如,原始 API 返回的时间戳采用 UTC+8 时区。连接器提取了警报,然后本地化也设置为 UTC+8。在这种情况下,Google SecOps 提醒时间戳来自未来。
为克服这一挑战,请使用时区参数。此参数定义了获取世界协调时间 (UTC) 格式的时间戳的要求。如果 Mcafee ESM 返回 UTC+8 格式的时间戳,您需要将时区连接器参数设置为 -8。
在 Google SecOps 事件中,添加了 2 个新键:基于关联/来源事件数据的事件的 utc_firstTime 和 utc_lastTime 键。
使用“停用溢出”和“停用溢出(针对 SigID)”参数
有时,McAfee ESM 可能会产生大量噪声并创建大量关联事件。 Google SecOps 中有一个溢出机制,可防止在短时间内创建过多 Google SecOps 提醒。
如果您认为所有警报都有意义且需要进行分类,则此机制可能会有害。我们不建议停用溢出机制。 不过,如有需要,您可以使用停用溢出和为 SigID 停用溢出参数来实现此目的。
首选解决方案是使用 Disable Overflow For SigIDs 参数,因为这样您就可以提供应忽略溢出规则的特定签名 ID,而不是为所有关联停用溢出。
需要更多帮助?获得社区成员和 Google SecOps 专业人士的解答。