
Una piattaforma moderna per indagini visive, flessibili ed estensibili basate su grafi. Per analisti e investigatori di cybersecurity.
Flowsint è uno strumento open-source di esplorazione grafica OSINT progettato per indagini etiche, trasparenza e verifica.
Etica: Si prega di leggere ETHICS.md per le linee guida sull'uso responsabile.
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 è ancora in fase di sviluppo iniziale e ha sicuramente bisogno dell'aiuto della community! Sentiti libero di segnalare problemi, proporre funzionalità, ecc.
Non vuoi leggere? Capito. Ecco le istruzioni di installazione:
git clone https://github.com/reconurge/flowsint.git
cd flowsint
make prod
Non serve Make. Funziona sia in Command Prompt (cmd) che in 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
Questo scarica le immagini precompilate dal GitHub Container Registry — nessuna build locale necessaria.
Poi vai su http://localhost:5173/register e crea un account. Non ci sono credenziali o account predefiniti.
✅ Le indagini OSINT richiedono un alto livello di privacy. Tutto è archiviato sulla tua macchina.
La stessa configurazione funziona immediatamente su un server: il frontend serve l'interfaccia e inoltra internamente tutte le chiamate API, quindi non è necessaria alcuna configurazione aggiuntiva per i client.
git clone https://github.com/reconurge/flowsint.git
cd flowsint
cp .env.example .env
# Modifica .env — vedi "Prima di esporre su una rete" qui sotto
docker compose -f docker-compose.prod.yml up -d
Chiunque sulla rete può quindi accedere a Flowsint all'indirizzo http://<server-ip>:5173.
Prima di esporre su una rete, modifica i segreti predefiniti in .env:
AUTH_SECRET — firma i token di autenticazione. Generane uno: openssl rand -hex 32MASTER_VAULT_KEY_V1 — crittografa le chiavi API archiviate. Generane una: python3 -c "import os, base64; print('base64:' + base64.b64encode(os.urandom(32)).decode())"NEO4J_PASSWORD — password del database Neo4j.Aggiungi anche il nome host/IP del tuo server alla lista consentita dell'header Host in flowsint-app/nginx.conf (cerca map $http_host $is_flowsint_host). La lista consentita predefinita accetta solo localhost / 127.0.0.1 / [::1], che protegge le installazioni a utente singolo dal DNS rebinding; le distribuzioni LAN e pubbliche devono includere il proprio nome host. Due righe modello commentate nello stesso blocco map mostrano il formato.
Solo la porta 5173 è esposta alla rete. PostgreSQL, Redis, Neo4j e l'API sono vincolati a 127.0.0.1 sul server e raggiungibili solo tramite il proxy del frontend.
Per fissare una versione specifica invece di latest, imposta FLOWSINT_VERSION in .env (es. FLOWSINT_VERSION=1.2.10).
HTTPS (consigliato oltre una LAN affidabile): posiziona un reverse proxy davanti alla porta 5173. Esempio con Caddy:
flowsint.example.com {
reverse_proxy 127.0.0.1:5173
}
Quando si utilizza un reverse proxy, vincola anche la porta dell'app a localhost in docker-compose.prod.yml ("127.0.0.1:5173:8080") così i client possono passare solo tramite HTTPS.
Flowsint è uno strumento di indagine basato su grafi, focalizzato su ricognizione e OSINT (Open Source Intelligence). Permette di esplorare le relazioni tra entità tramite un'interfaccia grafica visuale e arricchitori automatizzati.
Arricchitori di dominio
Arricchitori IP
Arricchitori ASN
Arricchitori CIDR
Arricchitori social media
Arricchitori organizzazione
Arricchitori criptovaluta
Arricchitori sito web
Arricchitori email
Arricchitori telefono
Arricchitori individuo
Arricchitori integrazione
Il progetto è organizzato in moduli autonomi:
flowsint-app (frontend)
↓
flowsint-api (server API)
↓
flowsint-core (orchestratore, task, vault)
↓
flowsint-enrichers (arricchitori e strumenti)
↓
flowsint-types (tipi)
Linux / macOS (richiede Make):
make dev
Windows (cmd o PowerShell, senza Make — crea prima i file .env, vedi Per iniziare):
docker compose -f docker-compose.dev.yml up -d --build
docker compose -f docker-compose.dev.yml logs -f
L'app è accessibile all'indirizzo http://localhost:5173.
Utilità principali e classi base utilizzate da tutti gli altri moduli:
Modelli Pydantic per tutti i tipi di dati:
Moduli arricchitori che elaborano i dati:
Server FastAPI che fornisce:
Applicazione frontend.
flowsint-typesflowsint-enrichersflowsint-apiflowsint-coreOgni modulo ha la propria suite di test (incompleta):
# Test del modulo core
cd flowsint-core
uv run pytest
# Test del modulo types
cd ../flowsint-types
uv run pytest
# Test del modulo enrichers
cd ../flowsint-enrichers
uv run pytest
# Test del modulo API
cd ../flowsint-api
uv run pytest
Etica: Si prega di leggere ETHICS.md per le linee guida sull'uso responsabile.
Flowsint è progettato strettamente per scopi di indagine e ricerca legali ed etici.
È stato creato per assistere:
Flowsint non deve essere utilizzato per:
Qualsiasi uso improprio di questo software è severamente vietato e va contro i principi etici definiti in ETHICS.md.