Odysafe/ODYSAFE-CTI

GitHub: Odysafe/ODYSAFE-CTI

一个开源的本地部署网络威胁情报平台,用于自动提取、管理IOC并可视化威胁关系,支持离线运行和多种安全工具集成。

Stars: 4 | Forks: 1

# ODYSAFE CTI 平台 **开源的、本地部署的网络威胁情报平台。** 提取 IOC,管理指标,进行调查,使用 STIX 2.1 可视化威胁,并导出到您的安全工具。安装后可完全离线运行。运行无需管理员权限。无授权费用。 ## 功能概述 ## 截图 ![IOC 管理](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/913bad644d221113.png) ![STIX 图表分析器](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/8eefa8f1c3221114.png) ![MITRE ATT&CK 浏览器](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/02fbd7d86a221115.png) ## 安装与启动 **唯一需要 `sudo` 权限的步骤是初始系统软件包安装。** 之后的所有操作均以普通用户身份运行,无需 root 或管理员权限。 **步骤 1 - 安装系统软件包(一次性操作,需要 sudo)** ``` sudo apt update sudo apt install -y python3 python3-venv python3-pip git openssl ``` **步骤 2 - 克隆并安装** ``` git clone https://github.com/Odysafe/ODYSAFE-CTI.git cd ODYSAFE-CTI ./install.sh ``` `./install.sh` 将设置 Python 虚拟环境,安装所有依赖项,在本地生成 SSL 证书,并可选择性地下载 DeepDarkCTI 存储库。无需 `sudo`。 **步骤 3 - 启动应用程序** ``` ./start.sh ``` 然后在浏览器中打开 **https://localhost:5001**。 SSL 证书在首次启动时自动生成于本地。不会连接到外部证书颁发机构。 **卸载**(将移除虚拟环境、数据库、上传文件和缓存): ``` ./uninstall.sh ``` **手动设置 DeepDarkCTI**(如果在安装过程中跳过了此步骤): ``` git clone https://github.com/fastfire/deepdarkCTI.git ODYSAFE-CTI/cti-platform/modules/deepdarkCTI-main ``` ## 数据存储位置 所有数据都保存在安装目录内。 | 类型 | 位置 | | ------------ | ---------------------------- | | 上传的文件 | `cti-platform/uploads/` | | IOC 导出 | `cti-platform/outputs/iocs/` | | 报告 | `cti-platform/outputs/reports/` | | SQLite 数据库 | `cti-platform/database/` | | 缓存 | `cti-platform/modules/cache/` | | SSL 证书 | `cti-platform/ssl/` | ## 功能特性 ### IOC 提取 通过四种输入方式收集 IOC: - **文件上传** - 拖放或选择文件:`.txt`、`.html`、`.htm`、`.docx`、`.doc`、`.csv`、`.json`、`.log`、`.xml`、`.md`(最大 100 MB) - **粘贴文本** - 直接粘贴任何内容,IOC 会被即时提取 - **URL 导入** - 提供 URL,平台将抓取页面并提取 IOC - **手动输入** - 添加单个 IOC,需指定类型、值、来源名称和上下文 被防护的指标如 `hxxp://example[DOT]com` 会被自动检测和标准化。 每次导入都会创建一个命名来源,可配置来源名称和可选上下文。 由 [iocsearcher](https://github.com/malicialab/iocsearcher) 提供支持。 **自动检测 50+ 种 IOC 类型:** | 类别 | 类型 | | ---------- | ------------------------------------------------------------ | | 网络指标 | URL、FQDN (域名)、IPv4、IPv6、IPv4 子网、Tor v3 地址 | | 文件哈希 | MD5、SHA1、SHA256 | | 通信 | 电子邮件地址、电话号码 | | 区块链 | Bitcoin、Bitcoin Cash、Cardano、Dashcoin、Dogecoin、Ethereum、Litecoin、Monero、Ripple、Solana、Stellar、Tezos、Tron、Zcash | | 社交媒体 | Facebook、GitHub、Instagram、LinkedIn、Pinterest、Telegram、Twitter、WhatsApp、YouTube、YouTube 频道 | | 标识符 | CVE、MITRE ATT&CK TTP、UUID、Android 包名、Amazon ARN | | 金融 | IBAN、WebMoney | | 法律与合规 | 版权、商标、中国 ICP 备案号、西班牙 NIF | | 其他 | TOX 标识符 | ### IOC 管理 从一个视图中浏览和管理所有提取的指标。 所有 IOC 都会自动标记其类型、来源和提取日期。 **过滤与搜索:** - 跨所有 IOC 值的全文搜索 - 按类型、来源、组、日期范围或重复项过滤 - 按类型、来源、日期和组进行交互式标签过滤 - 针对大型列表的智能分页 **每个 IOC:** - 标记为真实威胁或误报 - 分配 TLP 级别(公开、绿色、琥珀色、红色) - 设置置信度 - 查看首次和最近出现日期 - 添加到某个组 **批量操作:** - 选择多个 IOC 并进行批量删除或组分配 **手动添加:** - 直接从 IOC 列表添加单个 IOC,包含类型、值和上下文 **一键 IOC 富化链接:** - [BGP.he.net](https://bgp.he.net) - [AbuseIPDB](https://www.abuseipdb.com) - [VirusTotal](https://www.virustotal.com) - [AlienVault OTX](https://otx.alienvault.com) - [Pulsedive](https://pulsedive.com) - [Shodan](https://www.shodan.io) - [Shodan InternetDB](https://internetdb.shodan.io) - [ThreatFox](https://threatfox.abuse.ch) ### 来源 每次导入都会创建一个来源。来源是与您的 IOC 关联的起源记录。 - 将来源组织到可自定义的拖放组中 - 查看每个来源的详细统计信息:IOC 数量、检测到的类型、创建日期 - 批量选择和删除 - 带有可逆删除和可配置自动清理的回收站系统 - 按名称、日期或 IOC 数量过滤和排序来源 - 查看每个来源的上下文和元数据 **Data-Shield IPv4 封锁列表** 可直接从来源页面访问。一键刷新封锁列表或将其导出为防火墙规则。 ### 导出 以多种格式导出您的 IOC 数据。所有导出都遵循活动过滤器,并且可以按 IOC 类型、来源、标签、组或日期范围进行范围限定。 | 格式 | 用途 | | ------------ | ---------------------------------------------------------- | | TXT(带类型) | 通用,带有 IOC 类型标签 | | TXT 简单 | 防火墙、EDR、代理、封锁列表 - 每行一个值 | | CSV | Excel、报告、数据分析 | | CSV 防火墙 | Palo Alto、Cisco、Fortinet、Check Point | | JSON | API、自动化、自定义集成 | | JSON 简单 | 轻量级脚本,按 IOC 类型分组 | | XLSX | 格式化的 Excel 报告,用于文档记录 | | 防火墙规则 | 可直接使用的阻止规则 | 范围选项:所有 IOC、按来源、按标签或按组。 最近的 5 次导出会列出,并带有直接下载链接。 ### STIX 图表分析器 导入并可视化任何 STIX 2.x 包中的交互式图表。 **导入选项:** - 上传 STIX JSON 文件 - 粘贴原始 JSON - 从现有导出加载 - 加载之前保存的模型 **图表特性:** - 带有缩放、平移和点击检查的交互式网络图表 - 按 STIX 对象类型过滤可见节点(指标、恶意软件、威胁行为者、活动、攻击模式等) - 跨节点和关系的全文搜索 - 带滑块的时间过滤,用于探索威胁随时间的变化 - 节点点击时显示完整对象属性和连接的侧面板 - 保存模型以供后续分析 - 将图表和数据导出为多种格式 **100% 客户端处理。** 所有 STIX 数据都在您的浏览器中本地处理。不会将任何数据发送到任何服务器。 基于 OASIS TC 开放仓库的 [cti-stix-visualization](https://github.com/oasis-open/cti-stix-visualization)。所有资源包括 vis-network 都在本地打包,无 CDN 调用。 ### CTI 资源 访问直接集成到平台中的外部威胁情报资源。 **DeepDarkCTI** 2518 个 CTI 来源,分布在 19 个类别中: | 类别 | 来源数 | | ------------------ | ------ | | Telegram 威胁行为者 | 964 | | 勒索软件团伙 | 624 | | 论坛 | 316 | | Telegram 信息窃取器 | 125 | | 市场 | 159 | | 搜索引擎 | 63 | | 其他 | 54 | | 漏洞利用 | 24 | | Twitter 威胁行为者 | 39 | | Twitter | 22 | | 钓鱼 | 19 | | MaaS | 10 | | Discord | 7 | | 假冒商品 | 8 | | 最常被利用的 CVE | 74 | | 恶意软件样本 | 3 | | 方法 | 3 | | 篡改 | 3 | | 远程访问木马 | 1 | 按名称或类别搜索和过滤来源。通过 URL、名称和描述手动添加来源。将来源标记为收藏。按需刷新存储库。 **MITRE ATT&CK 企业版** 本地提供完整的 ATT&CK 企业矩阵: | 统计项 | 值 | | ---------- | ------ | | 战术 | 15 | | 技术 | 365 | | 子技术 | 493 | | 组织 | 189 | | 软件 | 824 | | 缓解措施 | 268 | 按战术列浏览完整的 ATT&CK 矩阵。按组织、平台过滤,或按技术名称或 ID 搜索(例如 `T1059`、`PowerShell`)。点击任何技术以展开子技术并查看详情。浏览 189 个威胁组织。将 IOC 链接到特定技术。随时从 MITRE 更新本地 ATT&CK 数据文件。 **勒索软件工具矩阵** 关于勒索软件团伙的工具、组织和社区报告。按工具或组织名称搜索和过滤。按需下载存储库。 **Data-Shield IPv4 封锁列表** 社区维护的恶意 IPv4 列表,用于防火墙和 WAF 防护。一键导入到平台,按需刷新,或直接导出为防火墙规则。 ### 闪报 (FLINT) 生成结构化的 CTI 报告并以 Excel 格式导出。 报告遵循 13 步结构: 1. 标题和元数据:参考编号 (FLINT-YYYY-XXX)、TLP (红色 / 琥珀色 / 绿色 / 公开)、PAP (红色 / 琥珀色 / 绿色 / 白色)、优先级 (严重 / 高 / 中 / 低)、状态 (草稿 / 审阅 / 最终)、作者、创建和更新日期 2. 主题 3. 摘要 4. 关键要点 5. 时间线 6. 分析 7. IOC 8. 检测规则 9. 措施 10. 差距 11. 评估 12. 来源 13. 分发 将报告保存为草稿,浏览已保存的报告历史记录,并可随时导出为 `.xlsx` 文件。 ### 日志分析器 上传安全日志并自动将事件映射到 MITRE ATT&CK 技术。 **支持的日志格式:** - CSV:SIEM 导出、Windows 事件导出、带有标题的电子表格日志 - JSON:AWS CloudTrail、Azure 活动日志、API 日志、结构化 SIEM 事件 - TXT / LOG:Syslog (RFC 3164/5424)、Windows 应用程序日志、Apache/Nginx/IIS 访问日志、防火墙日志、纯文本 - XML:Windows 事件日志导出 **工作原理:** 每个日志事件都会与 200 多个正则表达式模式进行匹配,覆盖所有 14 种 MITRE ATT&CK 战术。覆盖范围包括端点活动 (Windows, Linux)、网络事件 (防火墙、代理、DNS)、Web 应用程序日志 (Apache, Nginx, IIS)、Active Directory 事件和云日志 (AWS CloudTrail, Azure Activity)。关键词包括 `powershell`、`mimikatz`、`lsass`、`registry run key`、`lateral movement`、`dns tunneling`、`vssadmin`、`wbadmin`。 系统从每条日志行中提取: - `timestamp` - 从行本身解析(ISO 8601、Syslog、Windows 事件格式),否则使用上传时间 - `source` - 来源系统或日志类型(防火墙、sysmon、webserver、AD、云等) - `description` - 用于模式匹配的完整原始日志消息 - `host` - 涉及的主机名或 IP(如果存在) **每个匹配的信号强度:** - 🔴 高 (>= 80%) - 在高严重性战术上有多关键词强匹配 - 🟠 中 (50-79%) - 部分匹配或较低严重性战术 - 🟡 低 (< 50%) - 弱单关键词匹配 信号强度仅反映模式置信度,并非事件的实际严重性。 **输出:** - 网络杀伤链可视化,显示哪些阶段检测到了事件,哪些是盲区 - 检测到的技术卡片,包含技术 ID、名称、战术和事件计数 - 按 MITRE 战术在杀伤链顺序中分组的按时间顺序排列的攻击时间线:初始访问、执行、持久化、权限提升、防御规避、凭证访问、发现、横向移动、收集、外传、命令与控制、影响 - 带有时间戳、来源、描述、匹配技术和信号强度的所有事件表 - 将结果导出为 JSON 或 CSV - 过去的分析已保存,可从“过往事件”选项卡访问 没有检测到事件的战术被标记为 **盲区**。它们的缺失并不能确认攻击跳过了该阶段。 ### 设置 **身份验证** 启用或禁用登录。启用后,用户必须进行身份验证才能访问平台。默认凭据在安装期间配置。 **自动标记** 根据 IOC 的类型、来源、日期和其他元数据自动为提取的 IOC 添加标签。无论此设置如何,手动标签仍然可用。 **来源管理** - 启用自动来源轮换:当达到最大来源数量时,最旧的来源会被自动删除 - 设置要保留的最大来源数量(默认值:20) - 设置仪表盘上显示的最近来源数量(默认值:20) - 以天为单位配置回收站自动清理延迟(默认值:5) - 随时手动触发回收站清理 **存储监控** - 查看总磁盘使用量和可用空间,实时刷新 - 分别查看上传文件、数据库和输出占用的空间 - 手动清理控制: - 清理上传(文件、粘贴、URL) - 清理输出(TXT、JSON、CSV、STIX 导出) - 删除所有来源及其关联的 IOC - 从数据库中删除所有 IOC - 删除所有 STIX 上传文件 - 完全重置:删除所有上传、输出、IOC、来源、组、STIX 文件、事件和缓存 **备份与恢复** - 创建完整的 ZIP 备份,包含所有带标签和组的 IOC、所有来源和元数据、自定义组和设置以及 CTI 收藏夹 - 从 ZIP 备份文件恢复:现有数据被保留,备份数据被合并,重复的 IOC 被跳过 设置会立即保存并应用。 ## 仪表盘概览 主页显示您的 CTI 工作区的实时摘要: - 总来源数和活动 IOC 数量 - 真实威胁 / 误报 / 未验证计数 - 时间趋势:最近 24 小时 / 7 天 / 30 天添加的 IOC 和来源 - 前 5 种 IOC 类型和按类别的分布 - 质量和验证比率 - TLP 分类细分 - 运营指标:带有注释的 IOC、带有查询 URL 的 IOC - 警报:严重 IOC (TLP:红色 + 真实威胁)、最近未验证的、出错的来源 - 最高产的来源 - 最近来源列表 - CTI 资源状态(DeepDarkCTI 最后更新时间、MITRE ATT&CK 导入状态、勒索软件矩阵状态、Data-Shield 封锁列表最后更新时间和 IP 数量) ## 隐私与离线操作 安装后,平台默认不进行任何网络连接。 | 操作 | 连接 | 目的地 | | ------------------------ | ------ | -------------------------------------------- | | 正常使用 | 无 | 一切均为本地 | | URL 导入 | 按需 | 您提供的 URL | | DeepDarkCTI 下载或刷新 | 按需 | github.com/fastfire/deepdarkCTI | | 勒索软件矩阵下载 | 按需 | github.com/BushidoUK/Ransomware-Tool-Matrix | | Data-Shield 封锁列表刷新 | 按需 | github.com/duggytuxy/Data-Shield_IPv4_Blocklist | | MITRE ATT&CK 更新 | 按需 | raw.githubusercontent.com/mitre-attack/attack-stix-data | 所有前端资源包括 vis.js、CSS 和 JavaScript 都在本地打包。运行时无 CDN 调用。 **要完全断网运行:** - 安装期间跳过 CTI 资源下载 - 不要使用 URL 导入,改用文件上传或粘贴文本 - 不要在 CTI 资源中点击“下载”或“刷新” **数据隐私:** - 所有 IOC 数据、来源、标签和导出都保存在您的服务器上 - 无遥测或分析 - 无自动更新或后台连接 - IOC 提取通过 iocsearcher 本地运行 - SQLite 数据库和所有文件都留在您的基础设施内 ## 合规性 | 标准 | 控制项 | ODYSAFE-CTI 如何帮助 | | --------------- | ---------------------------------- | ---------------------------------------------------------- | | ISO 27001:2022 | 控制 5.7 - 威胁情报 | 集中 IOC 管理,STIX 2.1 导出用于标准化共享 | | NIS2 | 第 21 条 - 风险管理 | 集中 IOC 视图用于威胁评估,STIX 可视化 | | NIS2 | 第 23 条 - 事件管理 | IOC 生命周期跟踪,标签系统,完整审计历史 | | NIS2 | 第 23 条 - 信息共享 | STIX 2.1 包可与 CERT/CSIRT 和其他工具共享 | | ISO 27001:2022 | A.8.16 - 监控 | 应用程序日志输出到 stdout,SQLite 中有完整审计跟踪 | ## 架构 ``` Browser (Jinja2 templates, vanilla JS, vis-network bundled locally) | HTTPS localhost:5001 | Flask backend (Python) runs as normal user, no root needed | SQLite database (single local file) | IOCs / Sources / Investigations / Exports | Security tools (Firewalls, SIEM, EDR, CERT/CSIRT, MISP, OpenCTI) ``` 关键组件: - **Flask** - 轻量级 Python Web 框架,以普通用户身份运行 - **SQLite** - 单文件数据库,无需数据库服务器 - **iocsearcher** - 开源 IOC 提取库 - **vis.js** - 交互式图表可视化,本地打包 ## 使用的开源工具 - [iocsearcher](https://github.com/malicialab/iocsearcher) - 从文件和文本中提取 IOC - [deepdarkCTI](https://github.com/fastfire/deepdarkCTI) - 来自深网和暗网的 CTI 来源 - [勒索软件工具矩阵](https://github.com/BushidoUK/Ransomware-Tool-Matrix) - 勒索软件情报 - [Data-Shield IPv4 封锁列表](https://github.com/duggytuxy/Data-Shield_IPv4_Blocklist) - 用于防火墙/WAF 的恶意 IP 列表 - [vis.js](https://visjs.org/) - 交互式图表可视化 - [cti-stix-visualization](https://github.com/oasis-open/cti-stix-visualization) - STIX 2.x 图表引擎基础 ODYSAFE CTI 平台感谢所有这些开源项目的开发者和维护者。 ## 贡献 1. Fork 该仓库 2. 创建分支:`git checkout -b feature/your-feature` 3. 进行更改并彻底测试 4. 提交时写明清晰的信息:`git commit -m 'Add your feature'` 5. 推送并开启一个 Pull Request 对于错误:开启一个问题并附上重现步骤。 对于安全漏洞:请私下报告,不要在公开问题中报告。 代码风格:Python 遵循 PEP 8,复杂逻辑需添加注释,面向用户的更改需更新文档。 ## 许可证 **GNU Affero 通用公共许可证 v3.0 (AGPL-3.0)** 可在 AGPL-3.0 条款下免费使用、修改和分发。详见 `LICENSE` 文件。 由 [Odysafe](https://github.com/Odysafe) 开发
标签:IOC管理, MITRE ATT&CK框架, Python技术栈, SQLite数据库, STIX集成, 内核监控, 后端开发, 威胁分析, 威胁可视化, 威胁情报, 威胁情报源集成, 威胁调查, 安全Web界面, 安全指标管理, 安全运营, 开发者工具, 开源安全工具, 扫描框架, 数据可视化, 数据导出, 本地部署, 离线运行, 网络安全, 自动化侦查工具, 自动威胁提取, 逆向工具, 逆向工程平台, 隐私保护