收集 CrowdStrike IOC 日志

支持的平台:

概览

此解析器会从 JSON 格式的邮件中提取 CrowdStrike Falcon Intelligence 数据。它会将各种 IOC 字段转换为 UDM 格式,处理不同的指标类型(网域、IP 地址、网址、哈希等)及其关联的元数据,包括关系、标签和威胁信息。解析器还会执行数据验证和错误处理。它会优先解析 JSON,在必要时回退到 Grok 匹配,并丢弃格式错误的消息。

准备工作

  • 确保您拥有 Google SecOps 实例。
  • 确保您拥有访问 CrowdStrike Falcon Intelligence 平台的适当权限。

在 Google SecOps 中配置 Feed 以注入 CrowdStrike IOC 日志

  1. 依次前往 SIEM 设置 > Feed
  2. 点击新增
  3. Feed 名称字段中,输入 Feed 的名称(例如 CrowdStrike IOC 日志)。
  4. 选择Webhook 作为来源类型
  5. 选择 Crowdstrike IOC 作为日志类型
  6. 点击下一步
  7. 可选:为以下输入参数指定值:
    • 分隔符:用于分隔日志行(例如 \n)的分隔符。
    • 资源命名空间资源命名空间
    • 提取标签:应用于此 Feed 中的事件的标签。
  8. 点击下一步
  9. 最终确定界面中查看 Feed 配置,然后点击提交
  10. 点击生成 Secret 密钥,生成用于对此 Feed 进行身份验证的 Secret 密钥。
  11. 复制并存储密钥。您将无法再查看此密钥。如有必要,您可以重新生成新的 Secret 密钥,但此操作会使之前的 Secret 密钥过时。
  12. 详情标签页中,从端点信息字段复制 Feed 端点网址。您需要在客户端应用中指定此端点网址。
  13. 点击完成

为该网站钩子 Feed 创建 API 密钥

  1. 依次前往 Google Cloud 控制台 > 凭据

    转到“凭据”页面

  2. 点击创建凭据,然后选择 API 密钥

  3. 限制 API 密钥对 Google Security Operations API 的访问权限。

指定端点网址

  1. 在客户端应用中,指定 webhook Feed 中提供的 HTTPS 端点网址。
  2. 通过在自定义标头中指定 API 密钥和密钥(格式如下)来启用身份验证:

    X-goog-api-key = API_KEY
    X-Webhook-Access-Key = SECRET
    

    建议:请以标头的形式指定 API 密钥,而不是在网址中指定。

  3. 如果您的 webhook 客户端不支持自定义标头,您可以使用以下格式的查询参数指定 API 密钥和密钥:

    ENDPOINT_URL?key=API_KEY&secret=SECRET
    

替换以下内容:

  • ENDPOINT_URL:Feed 端点网址。
  • API_KEY:用于对 Google SecOps 进行身份验证的 API 密钥。
  • SECRET:您为对 Feed 进行身份验证而生成的密钥。

创建 CrowdStrike 网络钩子

  1. 登录 CrowdStrike Falcon Intelligence 控制台。
  2. 前往 CrowdStrike 商店
  3. 找到Webhook
  4. 启用 Webhook 集成。
  5. 点击配置
  6. 选择添加配置
  7. 确保仅向 webhook 发送 IOC。
  8. 端点网址粘贴到配置网络钩子界面中的网络钩子网址字段中。
  9. 点击保存
  10. CrowdStrike 现在会将生成的事件发送到指定的 Google SecOps Feed。

UDM 映射表

日志字段 UDM 映射 逻辑
_marker event.idm.entity.entity.labels.value _marker 字段的值会直接映射。
actors event.idm.entity.entity.group.group_display_name 如果 actors 中的第一个值包含“panda”“bear”“kitten”“chollima”“jackal”或“Spider”,系统会进行映射并派生 event.idm.entity.entity.location.country_or_region(分别为中国、俄罗斯、伊朗、朝鲜、活动家团体、犯罪团伙)。actors 中的其他值会作为标签添加到 event.idm.entity.entity.group.attribute.labels 中,键为“actor”。
actors event.idm.entity.entity.location.country_or_region 根据 actors 中的第一个值派生(见上文)。
deleted event.idm.entity.metadata.threat.action 如果 deleted 为“false”,则操作为“BLOCK”。如果 deleted 为“true”,则操作为“允许”。
deleted event.idm.entity.metadata.threat.action_details deleted 的值会直接映射。
domain_types event.idm.entity.metadata.threat.detection_fields.value domain_types 中的所有值均会用英文逗号串联,并与键“domain_types”进行映射。
id event.idm.entity.metadata.product_entity_id id 的值会直接映射。
indicator event.idm.entity.entity.hostname 如果 type 为“domain”,则已映射。
indicator event.idm.entity.entity.file.md5 如果 type 为“hash_md5”且值为有效的 MD5 哈希,则会进行映射。
indicator event.idm.entity.entity.file.sha1 如果 type 为“hash_sha1”且值为有效的 SHA1 哈希,则会进行映射。
indicator event.idm.entity.entity.file.sha256 如果 type 为“hash_sha256”且值为有效的 SHA256 哈希,则会进行映射。
indicator event.idm.entity.entity.ip 如果 type 为“ip_address”,且值为有效的 IP 地址,则已映射。
indicator event.ioc.ip_and_ports.ip_address 如果 type 为“ip_address”,且值为有效的 IP 地址,则已映射。
indicator event.idm.entity.entity.url 如果 type 为“网址”,则已映射。
indicator event.idm.entity.entity.resource.name 如果 type 为“device_name”或“mutex_name”,则已映射。
indicator event.idm.entity.entity.user.email_addresses 如果 type 为“email_address”,且值为有效的电子邮件地址,则会进行映射。
indicator event.idm.entity.metadata.threat.detection_fields.value 基于 type 字段(例如 “campaign_id”“binary_string”等)。如果未专门处理此类型,系统会将其映射为键为 type 的类型。
indicator event.ioc.domain_and_ports.domain 如果 type 不是“ip_address”或“port”,则会进行映射。
ip_address_types event.idm.entity.metadata.threat.detection_fields.value ip_address_types 中的所有值均用英文逗号连接,并与键“ip_address_types”进行映射。
kill_chains event.idm.entity.metadata.threat.category 此类别是根据 kill_chains 中的值派生的。“reconnaissance”“weaponization”或“actionOnObjectives”会导致“NETWORK_MALICIOUS”。“传送”或“利用”会导致“EXPLOIT”。“installation”或“c3”会导致“SOFTWARE_MALICIOUS”。“c2”会生成“NETWORK_COMMAND_AND_CONTROL”。其他值会导致“UNKNOWN_CATEGORY”。您可以分配多个类别。
kill_chains event.idm.entity.metadata.threat.category_details kill_chains 中的原始值会直接映射。可以提供多个值。
labels event.idm.entity.metadata.threat.detection_fields 每个标签中的“name”字段会被“/”分隔为 label_keylabel_value。如果 label_key 为“恶意软件”或“威胁类型”,则 label_value 会映射到 threat_name。否则,label_keylabel_value 会作为键值对进行映射。每个标签中的“created_on”和“last_valid_on”也会映射为键值对。
labels event.idm.entity.metadata.threat.threat_name 派生自 labels 字段(见上文)。
last_updated event.idm.entity.metadata.threat.detection_fields.value last_updated 的值与键“last_updated”对应。
malicious_confidence event.idm.entity.metadata.threat.confidence 如果 malicious_confidence 为“high”,则置信度为“HIGH_CONFIDENCE”。如果为“低”,置信度为“LOW_CONFIDENCE”。如果为“中等”,置信度为“MEDIUM_CONFIDENCE”。否则,为“UNKNOWN_CONFIDENCE”。
malicious_confidence event.idm.entity.metadata.threat.confidence_details malicious_confidence 的值会直接映射。
malicious_confidence event.ioc.confidence_score malicious_confidence 的值会直接映射。
malware_families event.idm.entity.metadata.threat.threat_name malware_families 中的所有值都会用英文逗号串联并映射。
published_date event.idm.entity.metadata.creation_timestamp published_date 的值会转换为时间戳。
published_date event.idm.entity.metadata.interval.start_time published_date 的值会转换为时间戳。
published_date event.ioc.active_timerange.start published_date 的值会转换为时间戳。
relations event.idm.entity.metadata.threat.about 每个关系中的字段都会根据其 type 映射到 about 对象。“created_date”“last_valid_date”和“id”会添加为标签。
reports event.idm.entity.metadata.threat.about.labels.value reports 中的所有值均会用英文逗号串联,并与键“report_ids”进行映射。
threat_types event.idm.entity.metadata.threat.threat_name threat_types 中的所有值都会与从 malware_families 派生的现有 threat_name 通过英文逗号串联。
type event.ioc.categorization type 的值会直接映射。
(Parser Logic) event.idm.entity.metadata.collected_timestamp 使用原始日志中的 create_time 值。
(Parser Logic) event.idm.entity.metadata.interval.end_time 已硬编码为遥远未来的时间戳 (253402300799)。
(Parser Logic) event.idm.entity.metadata.product_name 已硬编码为“Falcon”。
(Parser Logic) event.idm.entity.metadata.vendor_name 已硬编码为“CrowdStrike”。
(Parser Logic) event.idm.entity.metadata.entity_type 根据 type 字段和其他字段的存在情况派生而来。如需了解具体逻辑,请参阅解析器代码。
(Parser Logic) event.ioc.feed_name 已硬编码为“CrowdStrike Falcon Intelligence”。
(Parser Logic) event.timestamp 使用原始日志中的 create_time 值。

变化

2023-08-23

  • 更改了 malicious_confidence 字段的映射。

2023-05-04

  • crowdstrike_ioc 解析器提升为默认解析器。