ExtraHop/threat-intelligence-toolkit
GitHub: ExtraHop/threat-intelligence-toolkit
通过 REST API 自动从 TAXII 服务器或平面文件生成 STIX 威胁情报文件并批量上传到 ExtraHop 设备的自动化工具。
Stars: 8 | Forks: 2
# ⚠️ 已弃用
自 26.2 固件版本起,Threat Intelligence Toolkit 已正式**弃用**,因为不再支持 STIX 1.0 文件上传。有关更多信息,请参阅 https://docs.extrahop.com/current/threat-upload/。
# Threat Intelligence 工具包
## 描述
自动化从平面文件或 TAXII 服务器生成或提取威胁情报结构化威胁信息表达式 (STIX) 文件,并通过 REST API 将威胁集上传到一个 ECA 和多个 EDA。通过上传 STIX 文件,您可以将威胁集添加到您的 ExtraHop Discover 和 Command 设备。威胁集使您能够识别网络上的可疑主机、IP 地址和 URI。
## 用法
通过命令行指定输出目录、威胁集名称、ECA/EDA 详细信息以及其他可选配置,然后该脚本将生成一个 STIX 文件或轮询 TAXII 服务器(默认为 [EclecticIQ OpenTAXII](https://open.taxiistand.com) 情报源),将 stix 文件保存在一个 gzip 压缩的 tar 文件 (tgz) 中,并将威胁集上传到指定的 Reveal(x) ECA/EDA。
**此脚本仅作为示例代码提供,不附带任何支持或保证。**
## 要求
- python 3.6+
- [pip](https://pip.pypa.io/en/stable/installing/)
## 安装
- pip install -r requirements.txt
## 示例运行命令
您需要更新下面的示例输出路径、威胁集名称、IP 地址、主机名和 API 密钥,以匹配您的环境。
- 查看用法和所有可能的命令行参数
- `python3 threat_intelligence_toolkit.py -h`
- 从默认的 EclecticIQ OpenTAXII 服务器下载、打包为 tgz 并上传所有集合到 EDA
- `python3 threat_intelligence_toolkit.py -o ~/output_folder -tc example_collection --eda 172.16.1.2 3Hb7EpHRqb2EpnS7iweHgR5F3sf False`
- 从默认的 EclecticIQ OpenTAXII 服务器下载、打包为 tgz 并上传所有集合到 ECA 和多个 EDA
- `python3 threat_intelligence_toolkit.py -o ~/output_folder -tc example_collection --eca 172.16.1.1 3Hb7EpHRqb2EpnS7iweHgR5F3sg True --eda 172.16.1.2 3Hb7EpHRqb2EpnS7iweHgR5F3sf False --eda 172.16.1.3 3Hb7EpHRqb2EpnS7iweHgR5F3sf False`
- 从默认的 EclecticIQ OpenTAXII 服务器下载并打包所有集合为 tgz 以供手动上传
- `python3 threat_intelligence_toolkit.py -o ~/output_folder -tc example_collection`
- 从默认的 EclecticIQ OpenTAXII 服务器下载并打包特定集合列表为 tgz 以供手动上传
- `python3 threat_intelligence_toolkit.py -o ~/output_folder -tc example_collection --taxii-collections vxvault hailataxii.guest.dataForLast_7daysOnly`
- 从特定 TAXII 服务器下载、打包为 tgz 并上传所有集合到 EDA
- `python3 threat_intelligence_toolkit.py -o ~/output_folder -tc example_collection --taxii-server otx.alienvault.com /taxii/discovery True --basic-user --basic-pw password --days 1 --eda 172.16.1.2 3Hb7EpHRqb2EpnS7iweHgR5F3sf False`
- 从平面文件生成 STIX 文件、打包为 tgz 并上传到 EDA
- `python3 threat_intelligence_toolkit.py -o ~/output_folder -tc example_collection --generate-stix --input-file https://gitlab.com/ZeroDot1/CoinBlockerLists/raw/master/list_browser.txt --list-type domain --eda 172.16.1.2 3Hb7EpHRqb2EpnS7iweHgR5F3sf False`
## 注意事项
- 可以提供一个 ECA 和多个 EDA。如果需要更新多个 ECA,则必须多次运行该脚本
- 该脚本使用 ExtraHop REST API 的 threatcollections PUT 端点在威胁集不存在时创建它,或者在威胁集已存在时覆盖它,因此请确保正确设置 -tc
- 将在指定的输出目录中创建一个带有时间戳的 tgz 文件(例如 mycollection_2018-06-25_12-32-57.tgz)
- 在详细模式 (-v) 下运行,将在日志中输出 TAXII 服务器上所有可用集合的名称
## 日志
该脚本将日志写入名为 threat_intel_toolkit.log 的文件中,该文件在指定的输出目录中创建
标签:API集成, deprecated, ECA, EDA, ExtraHop, IP 地址批量处理, Python, REST API, Reveal(x), STIX, TAXII, TAXII服务器, 可观测性, 威胁情报, 开发者工具, 情报共享, 无后门, 网络信息收集, 网络安全, 网络流量分析, 网络调试, 脚本工具, 自动化, 逆向工具, 隐私保护, 高级威胁防御