Un outil d’investigation moderne et open-source basé sur les graphes pour les analystes en cybersécurité, les chercheurs OSINT et les enquêteurs. Visualisez les relations entre entités (domaines, IPs, emails, portefeuilles) avec enrichissement automatisé et stockage de données local.
Utilisation Éthique Uniquement : Flowsint ne doit être utilisé que pour des recherches et investigations légales et éthiques. Consultez le fichier ETHICS.md du projet avant le déploiement.
Installation
Configuration Rapide (Docker)
# Cloner le dépôt
git clone https://github.com/reconurge/flowsint.git
cd flowsint
# Déploiement en production
make prod
# Déploiement en développement
make dev
Prérequis : Docker et Make
Accès
| Mode | URL |
|---|
| Développement | http://localhost:5173 |
| Production | http://localhost:5173/register (créer un compte d’abord) |
Vue d’Ensemble de l’Architecture
Flowsint est une plateforme modulaire avec cinq composants principaux :
| Module | Objectif |
|---|
flowsint-app | Interface frontend (visualisation de graphes) |
flowsint-api | Backend FastAPI avec authentification |
flowsint-core | Base de données, utilitaires, orchestration de tâches |
flowsint-enrichers | Modules d’enrichissement de données |
flowsint-types | Modèles de données Pydantic |
Types d’Entités
Flowsint travaille avec diverses entités d’investigation que vous pouvez ajouter à votre graphe :
| Entité | Description |
|---|
| Domaine | Noms de domaine de sites web |
| Adresse IP | Adresses IPv4/IPv6 |
| Email | Adresses email |
| Numéro de Téléphone | Numéros de téléphone |
| Nom d’Utilisateur | Noms d’utilisateur réseaux sociaux / services |
| Organisation | Entreprises et organisations |
| ASN | Numéros de Système Autonome |
| CIDR | Plages d’adresses IP |
| Portefeuille Cryptomonnaie | Adresses Bitcoin, Ethereum, etc. |
| URL | Pages web spécifiques |
Enrichisseurs Disponibles
Renseignement Réseau
| Enrichisseur | Ce qu’il Fait |
|---|
| Résolution DNS | Résoudre le domaine en adresses IP |
| DNS Inverse | Trouver les domaines pointant vers une IP |
| Énumération de Sous-Domaines | Découvrir les sous-domaines d’un domaine |
| Recherche WHOIS | Informations d’enregistrement de domaine |
| Géolocalisation IP | Localisation physique des adresses IP |
| Mappage ASN | Identifier la propriété du réseau |
| Expansion CIDR | Étendre les plages IP en adresses individuelles |
Identité Numérique
| Enrichisseur | Ce qu’il Fait |
|---|
| Vérification de Fuites Email | Vérifier si l’email apparaît dans des fuites connues |
| Découverte Gravatar | Trouver les profils Gravatar liés aux emails |
| Vérification de Fuites Téléphone | Vérifier les numéros de téléphone dans les bases de fuites |
| Recherche de Nom d’Utilisateur (Maigret) | Rechercher le nom d’utilisateur sur les plateformes sociales |
Recherche d’Organisation
| Enrichisseur | Ce qu’il Fait |
|---|
| Propriété ASN | Identifier les organisations derrière les ASN |
| Portefeuille de Domaines | Trouver d’autres domaines possédés par la même entité |
| Détails d’Entreprise | Récupérer les informations d’enregistrement d’entreprise |
Analyse Web
| Enrichisseur | Ce qu’il Fait |
|---|
| Crawling de Site Web | Mapper la structure du site et découvrir les pages |
| Extraction de Liens | Extraire tous les liens d’une page web |
| Scripts de Tracking | Identifier les codes d’analyse et de tracking |
| Récolte de Texte | Extraire le contenu texte des pages |
Cryptomonnaie
| Enrichisseur | Ce qu’il Fait |
|---|
| Transactions de Portefeuille | Voir l’historique des transactions pour les adresses |
| Propriété NFT | Suivre les avoirs NFT des adresses de portefeuille |
Intégrations
| Intégration | Ce qu’elle Fait |
|---|
| Workflows N8n | Se connecter aux workflows d’automatisation N8n |
Flux de Travail d’Investigation
1. Créer une Investigation
Démarrer une nouvelle investigation depuis le tableau de bord. Donnez-lui un nom descriptif et des tags optionnels.
2. Ajouter des Entités de Départ
Ajoutez vos entités de départ (domaines connus, emails, IPs, etc.) au canvas du graphe.
3. Exécuter les Enrichisseurs
Cliquez droit sur une entité ou sélectionnez-la et exécutez les enrichisseurs pertinents. Les nouvelles entités et connexions sont automatiquement ajoutées au graphe.
4. Analyser les Relations
Utilisez le graphe visuel pour tracer les connexions :
- Domaine → IP : Relations d’hébergement
- Email → Fuites : Comptes compromis
- Domaine → Sous-Domaines : Cartographie de la surface d’attaque
- Nom d’Utilisateur → Plateformes : Empreinte numérique
5. Étendre et Pivoter
Sélectionnez les entités nouvellement découvertes et exécutez des enrichisseurs supplémentaires pour étendre le graphe d’investigation.
Fonctionnalités Clés
| Fonctionnalité | Description |
|---|
| Visualisation de Graphes | Diagrammes de liens de nœuds interactifs montrant les relations entre entités |
| Enrichissement Automatisé | Collecte de données en un clic depuis plusieurs sources OSINT |
| Stockage Local | Toutes les données restent sur votre machine — confidentialité par conception |
| Multi-Utilisateur | Système d’authentification pour investigations en équipe |
| Architecture Modulaire | Ajouter des enrichisseurs personnalisés via le système de plugins |
| Exportation | Exporter les données d’investigation pour rapports |
Exécution des Tests
# Tester les modules individuels
cd flowsint-core
poetry run pytest
cd flowsint-api
poetry run pytest
cd flowsint-enrichers
poetry run pytest
Scénarios d’Investigation Courants
Investigation de Domaine
- Ajouter le domaine cible comme entité
- Exécuter Résolution DNS → découvrir les IPs
- Exécuter Énumération de Sous-Domaines → mapper la surface d’attaque
- Exécuter WHOIS → trouver les informations du registrant
- Exécuter Crawling de Site Web → mapper la structure du site
- Pivoter vers les IPs découvertes → exécuter DNS Inverse
Investigation d’Email
- Ajouter l’email cible comme entité
- Exécuter Vérification de Fuites → trouver les bases de données compromises
- Exécuter Découverte Gravatar → trouver le profil lié
- Extraire le nom d’utilisateur → exécuter Recherche de Nom d’Utilisateur sur les plateformes
Cartographie d’Infrastructure
- Ajouter l’IP ou ASN connu
- Exécuter Propriété ASN → identifier l’organisation
- Exécuter Expansion CIDR → mapper les plages IP
- Exécuter DNS Inverse sur les IPs → découvrir les domaines
- Visualiser l’infrastructure complète sur le graphe
Dépannage
| Problème | Solution |
|---|
| Échec de build Docker | Assurez-vous que Docker et Make sont installés et en cours d’exécution |
| Conflit de port sur 5173 | Changer le mapping de port dans docker-compose.yml |
| Timeout d’enrichisseur | Vérifier la connectivité réseau ; certains enrichisseurs nécessitent internet |
| Résultats vides | Vérifier que le format d’entité est correct (domaine valide, IP, etc.) |
| Erreurs d’authentification | S’inscrire pour un nouveau compte à /register |
Ressources