
Una plataforma moderna para investigaciones visuales, flexibles y extensibles basadas en grafos. Para analistas e investigadores de ciberseguridad.
Flowsint es una herramienta de exploración de grafos OSINT de código abierto diseñada para la investigación ética, la transparencia y la verificación.
Ética: Por favor, lee ETHICS.md para conocer las pautas de uso responsable.
https://github.com/user-attachments/assets/eaabfa81-d7b3-414d-8cf7-f69b4e37bab6
https://github.com/user-attachments/assets/7457d94a-cf1d-4a97-949f-f9b1d8d92644
https://github.com/user-attachments/assets/65c3f26e-7132-4853-be45-21b8933688bd
Flowsint aún está en desarrollo temprano y definitivamente necesita la ayuda de la comunidad. No dudes en reportar problemas, proponer funciones, etc.
¿No quieres leer? Entendido. Aquí tienes tus instrucciones de instalación:
git clone https://github.com/reconurge/flowsint.git
cd flowsint
make prod
No se necesita Make. Funciona tanto en Command Prompt (cmd) como en PowerShell.
git clone https://github.com/reconurge/flowsint.git
cd flowsint
copy .env.example .env
copy .env.example flowsint-api\.env
copy .env.example flowsint-core\.env
copy .env.example flowsint-app\.env
docker compose -f docker-compose.prod.yml up -d
Esto descarga las imágenes precompiladas del GitHub Container Registry — no se necesita compilación local.
Luego ve a http://localhost:5173/register y crea una cuenta. No hay credenciales ni cuentas por defecto.
✅ Las investigaciones OSINT requieren un alto nivel de privacidad. Todo se almacena en tu máquina.
La misma configuración funciona directamente en un servidor: el frontend sirve la interfaz y actúa como proxy de todas las llamadas a la API internamente, por lo que no se necesita configuración adicional para los clientes.
git clone https://github.com/reconurge/flowsint.git
cd flowsint
cp .env.example .env
# Edita .env — consulta "Antes de exponer a una red" más abajo
docker compose -f docker-compose.prod.yml up -d
Cualquier persona en la red puede acceder a Flowsint en http://<ip-del-servidor>:5173.
Antes de exponer a una red, cambia los secretos por defecto en .env:
AUTH_SECRET — firma los tokens de autenticación. Genera uno: openssl rand -hex 32MASTER_VAULT_KEY_V1 — cifra las claves API almacenadas. Genera una: python3 -c "import os, base64; print('base64:' + base64.b64encode(os.urandom(32)).decode())"NEO4J_PASSWORD — contraseña de la base de datos Neo4j.También añade el nombre de host/IP de tu servidor a la lista blanca de encabezados Host en flowsint-app/nginx.conf (busca map $http_host $is_flowsint_host). La lista blanca por defecto solo acepta localhost / 127.0.0.1 / [::1], lo que protege las instalaciones de un solo usuario contra el rebinding de DNS; los despliegues en LAN y públicos deben incluir su propio nombre de host. Dos líneas de plantilla comentadas en el mismo bloque del mapa muestran el formato.
Solo el puerto 5173 está expuesto a la red. PostgreSQL, Redis, Neo4j y la API están vinculados a 127.0.0.1 en el servidor y solo son accesibles a través del proxy del frontend.
Para fijar una versión específica en lugar de latest, establece FLOWSINT_VERSION en .env (por ejemplo, FLOWSINT_VERSION=1.2.10).
HTTPS (recomendado más allá de una LAN de confianza): coloca cualquier proxy inverso delante del puerto 5173. Ejemplo con Caddy:
flowsint.example.com {
reverse_proxy 127.0.0.1:5173
}
Al usar un proxy inverso, también vincula el puerto de la aplicación a localhost en docker-compose.prod.yml ("127.0.0.1:5173:8080") para que los clientes solo puedan acceder a través de HTTPS.
Flowsint es una herramienta de investigación basada en grafos centrada en el reconocimiento y OSINT (Inteligencia de Fuentes Abiertas). Permite explorar relaciones entre entidades mediante una interfaz visual de grafos y enriquecedores automatizados.
Enriquecedores de Dominio
Enriquecedores de IP
Enriquecedores de ASN
Enriquecedores de CIDR
Enriquecedores de Redes Sociales
Enriquecedores de Organización
Enriquecedores de Criptomonedas
Enriquecedores de Sitios Web
Enriquecedores de Correo Electrónico
Enriquecedores de Teléfono
Enriquecedores de Individuos
Enriquecedores de Integración
El proyecto está organizado en módulos autónomos:
flowsint-app (frontend)
↓
flowsint-api (servidor API)
↓
flowsint-core (orquestador, tareas, bóveda)
↓
flowsint-enrichers (enriquecedores y herramientas)
↓
flowsint-types (tipos)
Linux / macOS (requiere Make):
make dev
Windows (cmd o PowerShell, sin Make — crea primero los archivos .env, consulta Primeros pasos):
docker compose -f docker-compose.dev.yml up -d --build
docker compose -f docker-compose.dev.yml logs -f
La aplicación es accesible en http://localhost:5173.
Utilidades principales y clases base utilizadas por todos los demás módulos:
Modelos Pydantic para todos los tipos de datos:
Módulos de enriquecedores que procesan datos:
Servidor FastAPI que proporciona:
Aplicación frontend.
flowsint-typesflowsint-enrichersflowsint-apiflowsint-coreCada módulo tiene su propio conjunto de pruebas (incompleto):
# Probar el módulo core
cd flowsint-core
uv run pytest
# Probar el módulo de tipos
cd ../flowsint-types
uv run pytest
# Probar el módulo de enriquecedores
cd ../flowsint-enrichers
uv run pytest
# Probar el módulo de API
cd ../flowsint-api
uv run pytest
Ética: Por favor, lee ETHICS.md para conocer las pautas de uso responsable.
Flowsint está diseñado estrictamente para fines de investigación y análisis legales y éticos.
Fue creado para ayudar a:
Flowsint no debe utilizarse para:
Cualquier uso indebido de este software está estrictamente prohibido y va en contra de los principios éticos definidos en ETHICS.md.