跳到主要内容
项目档案应用项目

reconurge/flowsint 是什么?用途、安装与使用指南

Flowsint 是面向网络安全分析师的开源 OSINT 图形调查工具,提供可视化实体关系探索、自动化数据丰富器(Enrichers)支持域名、IP、组织等多类实体,所有数据本地存储保障隐私。本文介绍项目定位、解决的问题、适用场景、安装部署步骤及使用方式,并包含模块架构、技术栈和常见问题解答。

8,814TypeScriptStar 于 2026年3月29日2026年9月19日 更新

AI 总结

Flowsint 是一个开源的 OSINT 图形调查平台,专为网络安全分析师设计,通过可视化图形界面和自动化数据丰富器,帮助用户高效探索实体间复杂关系,所有数据本地存储确保隐私。

中文项目介绍

Flowsint 是一个开源的 OSINT(开源情报)图形调查平台,专注于为网络安全分析师提供可视化、灵活且可扩展的基于图的调查工具。 它解决传统 OSINT 调查中数据来源分散、关系梳理困难的问题,通过交互式图形界面和自动化 Enrichers,将分散的数据点连接成可探索的关系网络,显著提升调查效率和准确性。 适用场景包括网络安全威胁分析、数字取证调查、品牌监控与保护、欺诈检测研究以及各类开源情报收集工作。 技术实现上,Flowsint 采用微服务架构,模块包括核心逻辑(flowsint-core)、类型定义(flowsint-types)、数据丰富器(flowsint-enrichers)、API 服务(flowsint-api)和前端应用(flowsint-app)。数据存储使用 Neo4j 图数据库管理实体关系,PostgreSQL 存储结构化数据,Redis 用于缓存和任务队列。Enrichers 系统基于 YAML 模板,支持多步骤 HTTP 请求、响应映射、重试策略和密钥管理。前端使用 Vite 和 React,通过 TanStack Query 与后端交互。部署依赖 Docker 和 Makefile,所有数据本地存储以保障隐私。

详细信息与使用说明

1. 项目定位与用途

Flowsint 是一个开源的 OSINT 图形调查平台,专为网络安全分析师、调查人员和情报分析人员设计。它提供可视化的图形界面,允许用户以节点和边的形式探索域名、IP 地址、组织、个人等实体之间的复杂关系。通过自动化 Enrichers,用户可以快速丰富实体信息,如 DNS 记录、WHOIS 数据、社交媒体资料、加密货币交易等。平台强调道德使用和透明度,所有数据均存储在用户本地机器,确保调查的隐私和安全。

2. 解决的问题

传统 OSINT 调查往往面临数据来源分散、信息孤岛严重、关系梳理手动化等挑战。调查人员需要在多个工具和网站间切换,难以形成全局视图。Flowsint 通过图形化交互将分散的数据点整合为可探索的关系网络,并利用自动化 Enrichers 从各种公开源获取和丰富数据,减少人工操作,提高调查的效率和准确性。同时,本地存储设计解决了云服务可能带来的隐私泄露风险。

3. 适用场景

Flowsint 适用于多种安全与情报场景:网络安全威胁分析中追踪攻击者基础设施;数字取证调查中还原事件关联;品牌监控与保护中发现仿冒网站和商标侵权;欺诈检测研究中识别可疑交易网络;以及各类开源情报收集工作,如人员背景调查、组织架构映射等。其图形化探索方式特别适合需要理清复杂实体关系的任务。

4. 安装方式

根据 README,安装 Flowsint 需要先安装 Docker 和 Make。然后克隆仓库:`git clone https://github.com/reconurge/flowsint.git`,进入目录,运行 `make prod` 启动服务。但环境变量配置需参考根目录的 `.env.example` 文件,设置如 Neo4j、PostgreSQL、Redis 的连接字符串、API URL 及认证密钥等。README 未明确给出配置步骤,仅说明运行 `make prod` 后访问 `http://localhost:5173/register` 创建账户。此外,需确保 Neo4j、PostgreSQL、Redis 服务已运行(从 .env.example 推断)。开发环境可使用 `docker-compose.dev.yml`。

5. 使用方式

用户通过 Web 界面注册登录后,可创建调查并添加实体(如域名、IP、组织等)。针对每个实体,可选择运行可用的 Enrichers 自动丰富数据,例如域名 Enrichers 可进行反向 DNS、子域名枚举、WHOIS 查询等。丰富后的数据以图形方式展示,用户可交互式探索实体间关系。前端使用 TanStack Query 管理服务器状态,从 API 获取调查列表、分析详情、草图数据等。API 层面,flowsint-api 提供 REST 接口,支持 CRUD 操作和 enricher 触发。

6. 补充说明与实现特点

Flowsint 采用微服务架构,各模块通过 Poetry 工作空间管理:flowsint-core 提供核心业务逻辑和 enricher 模板解析引擎;flowsint-types 定义 Pydantic 模型;flowsint-enrichers 实现基于 YAML 模板的声明式数据丰富器,支持多步骤 HTTP 请求、响应映射、重试和密钥管理;flowsint-api 为 FastAPI 后端,集成数据库和任务队列,使用 Alembic 进行迁移;flowsint-app 为前端 Vite 应用。数据存储方面,Neo4j 用于图关系,PostgreSQL 存储用户、调查等结构化数据,Redis 用于缓存和 Celery 消息队列。部署支持 Docker 容器化,使用 Makefile 简化命令。项目强调伦理使用,提供 ETHICS.md 指南。

思维导图

Flowsint
核心模块
flowsint-core: 业务逻辑与编排
flowsint-types: Pydantic 类型定义
flowsint-enrichers: YAML 模板引擎
API 服务
flowsint-api: FastAPI 后端
数据库: PostgreSQL, Neo4j, Redis
任务队列: Celery
前端应用
flowsint-app: Vite+React
状态管理: TanStack Query
可视化图形界面
部署与运维
Docker 容器化
Makefile 命令
环境变量配置
关键特性
自动化 Enrichers
本地数据隐私
多数据源支持

常见问题

Flowsint 是什么?

Flowsint 是一个开源的 OSINT 图形调查平台,专为网络安全分析师设计,提供可视化图形界面和自动化数据丰富器(Enrichers),用于探索域名、IP、组织等实体间的复杂关系,所有数据本地存储确保隐私。

如何安装和运行 Flowsint?

安装需先准备 Docker 和 Make。克隆仓库后,在项目根目录运行 `make prod` 启动服务。同时需根据 `.env.example` 文件配置环境变量,包括数据库连接和密钥。服务启动后访问 `http://localhost:5173/register` 创建账户。注意需确保 Neo4j、PostgreSQL、Redis 服务可用(从 .env.example 推断)。

Flowsint 的数据存储在哪里?

所有数据均存储在用户本地机器。图关系数据使用 Neo4j 图数据库,结构化数据(如用户、调查)存储在 PostgreSQL,Redis 用于缓存和消息队列。这种设计确保调查隐私,避免数据上传至第三方。

Flowsint 支持哪些 Enrichers?

Flowsint 提供丰富的 Enrichers 库,包括:域名相关(反向 DNS、子域名发现、WHOIS 等)、IP 信息、ASN 查询、社交媒体用户名搜索(Maigret)、组织信息、加密货币钱包交易、网站爬取、邮箱 breach 检查、电话 breach 检查、个人关联分析等。完整列表见 README。

如何自定义或添加新的 Enrichers?

从代码证据看,Enrichers 基于 YAML 模板实现,模板文件位于 `flowsint-core/tests/templates/`,支持定义 HTTP 请求、响应映射、多步骤和密钥。但仓库中未明确给出用户自定义 Enrichers 的界面或文档,可能需要修改源码或配置模板文件,具体方式需参考模板示例和核心模块代码。