
Une plateforme moderne pour des enquêtes visuelles, flexibles et extensibles basées sur des graphiques. Pour les analystes et enquêteurs en cybersécurité.
Flowsint est un outil d'exploration OSINT open source conçu pour les enquêtes éthiques, la transparence et la vérification.
Éthique : Veuillez consulter ETHICS.md pour les directives d'utilisation 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 est encore en début de développement et a définitivement besoin de l'aide de la communauté ! N'hésitez pas à soumettre des problèmes, proposer des fonctionnalités, etc.
Vous ne voulez pas lire ? Compris. Voici vos instructions d'installation :
git clone https://github.com/reconurge/flowsint.git
cd flowsint
make prod
Pas besoin de Make. Fonctionne aussi bien dans l'Invite de commandes (cmd) que dans 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
Cela récupère les images pré-construites depuis GitHub Container Registry — aucune construction locale n'est nécessaire.
Ensuite, allez sur http://localhost:5173/register et créez un compte. Il n'y a pas d'identifiants ou de compte par défaut.
✅ Les enquêtes OSINT nécessitent un niveau élevé de confidentialité. Tout est stocké sur votre machine.
La même configuration fonctionne directement sur un serveur : le frontend sert l'interface utilisateur et proxye tous les appels API en interne, donc aucune configuration supplémentaire n'est nécessaire pour les clients.
git clone https://github.com/reconurge/flowsint.git
cd flowsint
cp .env.example .env
# Modifier .env — voir "Avant d'exposer sur un réseau" ci-dessous
docker compose -f docker-compose.prod.yml up -d
Toute personne sur le réseau peut alors accéder à Flowsint à l'adresse http://<ip-du-serveur>:5173.
Avant d'exposer sur un réseau, modifiez les secrets par défaut dans .env :
AUTH_SECRET — signe les jetons d'authentification. Générez-en un : openssl rand -hex 32MASTER_VAULT_KEY_V1 — chiffre les clés API stockées. Générez-en un : python3 -c "import os, base64; print('base64:' + base64.b64encode(os.urandom(32)).decode())"NEO4J_PASSWORD — mot de passe de la base de données Neo4j.Ajoutez également le nom d'hôte/IP de votre serveur à la liste blanche des en-têtes Host dans flowsint-app/nginx.conf (cherchez map $http_host $is_flowsint_host). La liste blanche par défaut n'accepte que localhost / 127.0.0.1 / [::1], ce qui protège les installations mono-utilisateur contre les attaques par rebinding DNS ; les déploiements LAN et publics doivent ajouter explicitement leur propre nom d'hôte. Deux lignes modèles commentées dans le même bloc map montrent le format.
Seul le port 5173 est exposé au réseau. PostgreSQL, Redis, Neo4j et l'API sont liés à 127.0.0.1 sur le serveur et ne sont accessibles que via le proxy du frontend.
Pour épingler une version spécifique au lieu de latest, définissez FLOWSINT_VERSION dans .env (par ex. FLOWSINT_VERSION=1.2.10).
HTTPS (recommandé au-delà d'un LAN de confiance) : placez un reverse proxy devant le port 5173. Exemple avec Caddy :
flowsint.example.com {
reverse_proxy 127.0.0.1:5173
}
Lorsque vous utilisez un reverse proxy, liez également le port de l'application à localhost dans docker-compose.prod.yml ("127.0.0.1:5173:8080") afin que les clients ne puissent passer que par HTTPS.
Flowsint est un outil d'investigation basé sur des graphes, axé sur la reconnaissance et l'OSINT (Open Source Intelligence). Il vous permet d'explorer les relations entre entités via une interface graphique visuelle et des enrichisseurs automatisés.
Enrichisseurs de domaine
Enrichisseurs IP
Enrichisseurs ASN
Enrichisseurs CIDR
Enrichisseurs réseaux sociaux
Enrichisseurs d'organisation
Enrichisseurs de cryptomonnaie
Enrichisseurs de site web
Enrichisseurs d'email
Enrichisseurs de téléphone
Enrichisseurs d'individu
Enrichisseurs d'intégration
Le projet est organisé en modules autonomes :
flowsint-app (frontend)
↓
flowsint-api (serveur API)
↓
flowsint-core (orchestrateur, tâches, vault)
↓
flowsint-enrichers (enrichisseurs & outils)
↓
flowsint-types (types)
Linux / macOS (nécessite Make) :
make dev
Windows (cmd ou PowerShell, sans Make — créez d'abord les fichiers .env, voir Pour commencer) :
docker compose -f docker-compose.dev.yml up -d --build
docker compose -f docker-compose.dev.yml logs -f
L'application est accessible à l'adresse http://localhost:5173.
Utilitaires principaux et classes de base utilisés par tous les autres modules :
Modèles Pydantic pour tous les types de données :
Modules d'enrichissement qui traitent les données :
Serveur FastAPI fournissant :
Application frontend.
flowsint-typesflowsint-enrichersflowsint-apiflowsint-coreChaque module dispose de sa propre suite de tests (incomplète) :
# Tester le module core
cd flowsint-core
uv run pytest
# Tester le module types
cd ../flowsint-types
uv run pytest
# Tester le module enrichers
cd ../flowsint-enrichers
uv run pytest
# Tester le module API
cd ../flowsint-api
uv run pytest
Éthique : Veuillez consulter ETHICS.md pour les directives d'utilisation responsable.
Flowsint est conçu strictement pour des fins d'enquête et de recherche légales et éthiques.
Il a été créé pour aider :
Flowsint ne doit pas être utilisé pour :
Toute utilisation abusive de ce logiciel est strictement interdite et va à l'encontre des principes éthiques définis dans ETHICS.md.