CrowdStrike/MISP-tools

GitHub: CrowdStrike/MISP-tools

这是一个用于将 CrowdStrike Falcon 威胁情报数据(包括对手、指标和报告)自动同步导入到 MISP 平台的 Python 工具集。

Stars: 52 | Forks: 13

![CrowdStrike Falcon](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/db45971bf0141801.png) [![CrowdStrike 子版块](https://img.shields.io/badge/-r%2Fcrowdstrike-white?logo=reddit&labelColor=gray&link=https%3A%2F%2Freddit.com%2Fr%2Fcrowdstrike)](https://reddit.com/r/crowdstrike) # MISP 工具 本仓库专注于将 CrowdStrike 威胁情报数据导入到 [MISP](https://github.com/MISP/MISP) 实例的解决方案。 - [手动导入](#manual-import) - 将 CrowdStrike Falcon 威胁情报中的对手、指示器或报告手动导入到您的 MISP 实例中。 - [MISP 模块](#misp-modules) - 利用 CrowdStrike 的 MISP 模块。 ## 手动导入 ![CrowdStrike 对手阵容](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/daee6da489141810.png)
该解决方案将从指定的时间范围(回溯天数)开始,将 CrowdStrike Falcon 威胁情报中的对手、指示器或报告导入到您的 MISP 实例中。 该解决方案支持独立执行以及容器部署。 - [配置](#configuration) - [容器部署](#running-the-solution-as-a-container) - [独立执行](#standalone-execution) ### 配置 #### 需求 此应用程序需要 Python **3.6+**。 必须安装以下 Python 包才能使此应用程序正常运行。 - [`crowdstrike-falconpy`](https://github.com/CrowdStrike/falconpy) (v0.9.0+) - [`pymisp`](https://github.com/MISP/MISP) #### CrowdStrike API 凭证范围 您的 API 凭证需要具有以下权限的 **READ**(读取)访问权限: - Adversaries (Falcon 威胁情报) - Indicators (Falcon 威胁情报) - Reports (Falcon 威胁情报) #### MISP 服务器要求 您需要生成一个授权密钥(以及可能的用户)以便访问 MISP 实例。您还需要创建一个名为 "CrowdStrike" 的组织,并在配置文件中提供该组织的 UUID,如下所述。 #### misp_import.ini `misp_import.ini` 配置文件中有两个部分,[`CrowdStrike`](#crowdstrike) 和 [`MISP`](#misp-1)。 ##### CrowdStrike CrowdStrike 部分包含与您的 CrowdStrike 租户进行通信的配置详情。 | | | | :-- | :-- | | `client_id` | 您的 CrowdStrike API 客户端标识符。 | | `client_secret` | 您的 CrowdStrike API 客户端密钥。 | | `crowdstrike_url` | 用于向 CrowdStrike 发起请求的基础 URL。您可以传递完整的 URL、URL 字符串或短名称(US1, US2, EU1, USGOV1)。 | | `api_request_max` | 向 CrowdStrike API 发起请求的限制。US-1 CrowdStrike 区域支持的限制为 5000。其他区域支持 2500。 | | `api_enable_ssl` | 用于指定是否禁用 SSL 验证的布尔值。 | | `reports_timestamp_filename` | 用于存储上次导入报告时间戳的文件名。 | | `indicators_timestamp_filename` | 用于存储上次导入指示器时间戳的文件名。 | | `actors_timestamp_filename` | 用于存储上次导入对手时间戳的文件名。 | | `init_reports_days_before` | 要导入的报告的最大“年龄”。 | | `init_indicators_minutes_before` | 要导入的指示器的最大“年龄”。 | | `init_actors_days_before` | 要导入的对手的最大“年龄”。 | | `reports_unique_tag` | 来自 CrowdStrike 的唯一报告标签。 | | `indicators_unique_tag` | 来自 CrowdStrike 的唯一指示器标签。 | | `actors_unique_tag` | 来自 CrowdStrike 的唯一对手标签。 | | `reports_tags` | 应用于导入报告的标签。 | | `indicators_tags` | 应用于导入指示器的标签。 | | `actors_tags` | 应用于导入对手的标签。 | | `unknown_mapping` | 用于标记未知恶意软件家族的标签名称。 | | `unattributed_title` | 用于未归因指示器事件的标题。 | | `indicator_type_title` | 用于指示器类型事件的标题。 | | `malware_family_title` | 用于指示器恶意软件家族事件的标题。 | ##### MISP MISP 部分包含与您的 MISP 实例进行通信的详情。 | | | | :-- | :-- | | `misp_url` | 用于 MISP 实例的 URL。 | | `misp_auth_key` | 用于导入数据的 MISP 授权密钥。 | | `crowdstrike_org_uuid` | 您的 MISP 实例中 CrowdStrike 组织的 UUID。它被用作所有导入的组织。 | | `misp_enable_ssl` | 用于指定是否使用 SSL 与 MISP 实例通信的布尔值。 | | `max_threads` | 用于处理的处理器线程数。 | | `miss_track_file` | 用于跟踪没有 Galaxy 映射的恶意软件家族的文件名。 | `galaxies_map_file` | Galaxy 映射文件名(默认:`galaxy.ini`) | | `ind_attribute_batch_size` | 在更新 MISP 事件记录之前要处理的最大指示器数量。会影响性能。 | | `event_save_memory_refresh_interval` | 事件保存必须花费的时间量(以秒为单位),随后才会在内存中刷新该事件。 | #### galaxy.ini Galaxy 映射文件 `galaxy.ini` 包含一个部分,即 `Galaxy`。此部分包含指示器恶意软件家族的 Galaxy 映射。 这些映射使用以下格式: MalwareFamily = Misp_Galaxy_Mapping **示例** ``` njRAT = misp-galaxy:malpedia="NjRAT" ``` #### 命令行参数 此解决方案接受以下命令行参数。 | 参数 | 用途 | | :--- | :--- | | `-h` 或 `--help` | 显示命令行帮助并退出。 | | `-cr`,
`--clean_reports` | 从 MISP 实例中删除所有带有 CrowdStrike 标签的报告。 | | `-ci`,
`--clean_indicators` | 从 MISP 实例中删除所有带有 CrowdStrike 标签的指示器。 | | `-ca`,
`--clean_adversaries` | 从 MISP 实例中删除所有带有 CrowdStrike 标签的对手。 | | `-ct`, `--clean_tags` | 删除所有 CrowdStrike 本地标签。(警告:请在删除报告、指示器和对手之后运行。) | | `-d`, `--debug` | 启用调试输出。 | | `-m`, `--max_age` | 删除所有超过指定最大“年龄”(以天为单位)的事件。 | | `-i`, `--indicators` | 导入所有指示器。 | | `-f`, `--force` | 忽略时间戳文件,并根据“minutes before”配置设置导入指示器。 | | `-r`, `--reports` | 导入报告。 | | `-a`,
`--adversaries`,
`--actors` | 导入对手。 | | `-p`, `--publish` | 创建后立即发布事件。 | | `-t`, `--type`
`--indicator_type`,
`--report_type`,
`--adversary_type` | 导入或删除特定类型的事件。 | | `-c`, `--config` | 本地配置文件的路径,默认为 `misp_import.ini`。 | | `-v`,
`--verbose_tagging` | 禁用详细标签。 | | `-nd`,
`--no_dupe_check` | 禁用指示器导入时的重复检查。 | | `-nb`, `--no_banner` | 禁用终端输出中的横幅。 | | `-l`, `--logfile` | 日志文件。__*目前尚未实现*__ | | `--all`, `--fullmonty` | 在一个周期内导入对手、报告和指示器。 | | `--obliterate` | 从 MISP 实例中删除__所有__ CrowdStrike 数据。 | ### 作为容器运行解决方案 该解决方案也可以使用提供的 Dockerfile 作为容器运行。 #### 构建容器 要构建容器,请执行以下命令。根据您环境中的权限,您可能需要使用提升的权限来执行此操作。 ``` docker build . -t misp ``` #### 运行容器 构建容器后,您可以使用以下命令启动一个容器(您可能还需要在此处提升权限): ``` docker run -it --rm \ -v $(pwd)/misp_import.init:/misp/misp_import.init \ misp --help ``` ``` docker run -it --rm \ -v $(pwd)/misp_import.init:/misp/misp_import.init \ misp --clean_indicators ``` ### 手动运行解决方案 只要满足所有 Python 要求并且配置文件已更新以反映您的环境,该解决方案即可手动运行。 #### 示例 以下示例演示了在本地执行解决方案的不同变体。 **导入所有数据(对手、指示器和报告)** ``` python3 misp_import.py --all ``` **仅导入 `bear` 分支对手和 CrowdStrike 情报提示** ``` python3 misp_import.py -a -r -t bear,csit ``` **禁用详细标签** ``` python3 misp_import.py -a -r -v ``` **仅删除指示器** ``` python3 misp_import.py --clean_indicators ``` **仅删除 `panda` 分支对手** ``` python3 misp_import.py -ca -t panda ``` **仅导入报告和相关指示器** ``` python3 misp_import.py --reports ``` **删除所有 CrowdStrike 数据** ``` python3 misp_import.py --obliterate ``` ## MISP 模块 MISP 项目支持可用于扩展整体功能的自主模块。这些模块分为三类:_expansion_(扩展)、_import_(导入)和 _export_(导出)。 以下 MISP 模块目前利用了 CrowdStrike: - [CrowdStrike Falcon 扩展模块](https://github.com/MISP/misp-modules/blob/main/misp_modules/modules/expansion/crowdstrike_falcon.py) ## 支持 `misp-tools` 是一个开源项目,而非 CrowdStrike 产品。因此,它不提供任何明示或暗示的正式支持。


WE STOP BREACHES

标签:API集成, CrowdStrike, DAST, ESC4, Falcon, FalconPy, IOC, OSINT, Python, 可观测性, 威胁情报, 威胁指标, 安全运营, 开发者工具, 恶意软件分析, 情报共享, 扫描框架, 攻击报告, 攻击者画像, 数据导入, 无后门, 网络安全, 网络调试, 自动化, 请求拦截, 逆向工具, 隐私保护