Analyseur de motifs OSINT
Outil d'automatisation des investigations OSINT à travers plusieurs vecteurs d'identité (numéros de téléphone, noms d'utilisateur et prise en charge future des e-mails), conçu pour extraire des données structurées et permettre la détection de motifs et l'analyse de corrélation.
Fonctionnalités
OSINT par numéro de téléphone
- Recherche de numéros de téléphone sur plusieurs plateformes
- Prise en charge de plusieurs formats de numéro (+34, 0034, variantes avec espaces)
- Requêtes de recherche personnalisées (liées aux escortes, spécifiques à un domaine)
- Détection du type d'annonce :
- Validation de présence du numéro (
phone_match)
- Système de classification de confiance :
high → correspondance confirmée avec signaux forts
medium → correspondance partielle ou pertinence contextuelle
low → probable bruit ou annonces génériques
OSINT par nom d'utilisateur
- Recherche de noms d'utilisateur sur plusieurs plateformes :
- réseaux sociaux
- plateformes de messagerie
- plateformes d'escortes
- forums
- plateformes de contenu adulte
- Classification des plateformes :
telegram
social
dating
sugar
adult_creator
escort_sites
forums
- Réduction du bruit (filtrage des pages génériques)
- Détection de liens ressemblant à des profils
- Résumé de présence par plateforme (✔ / ✘)
Général
- Utilise
ddgs pour des résultats de recherche plus fiables
- Export des résultats en JSON
- Déduplication des résultats
- Génération de multiples requêtes pour une meilleure couverture
- Système de score pour prioriser les résultats pertinents
- Conçu pour des flux de travail de corrélation et de détection de motifs
Utilisation
Recherche par numéro de téléphone
python search_phone.py --phone 660XXXXXXX
Recherche par nom d'utilisateur
python search_username.py --username exampleuser
Exemple de sortie (téléphone)
[
{
"query": "\"660XXXXXX\"",
"title": "Example listing",
"link": "https://example.com/ad.html",
"domain": "example.com",
"type": "individual",
"score": 4,
"phone_match": true,
"confidence": "high"
}
]
Exemple de sortie (nom d'utilisateur)
{
"username": "exampleuser",
"platforms_detected": {
"telegram": false,
"social": true,
"dating": false,
"sugar": false,
"adult_creator": true,
"escort_sites": true,
"forums": true
},
"results": [
{
"title": "Example profile",
"link": "https://example.com/profile",
"categories": ["social"],
"score": 3
}
]
}
1. Génère plusieurs variantes de l'entrée
-
Téléphone :
- Numéro brut
- Format +34
- Format 0034
- Format avec espaces
-
Nom d'utilisateur :
- Requêtes directes
- Requêtes spécifiques à une plateforme
2. Construit les requêtes de recherche :
- Requêtes génériques
- Requêtes enrichies de mots-clés (escort, contactos, masajes…)
- Requêtes spécifiques à des domaines
3. Récupère les résultats via DuckDuckGo (ddgs)
4. Applique un filtrage :
- Supprime les pages génériques/de catégorie
- Conserve les domaines pertinents et les liens ressemblant à des profils
- Réduit le bruit SEO
5. Traite chaque résultat :
- Module téléphone :
- Détecte le type d'annonce (individual / group / duo)
- Vérifie la présence du numéro dans le titre/lien
- Module nom d'utilisateur :
- Détecte la catégorie de la plateforme
- Attribue un score basé sur les signaux de pertinence
6. Classifie les résultats :
- High → correspondance forte + bonne structure
- Medium → pertinence partielle
- Low → résultat faible ou bruyant
7. Génère une sortie JSON structurée prête pour l'analyse
Limitations actuelles
- Les résultats dépendent du comportement du moteur de recherche
- Certaines plateformes génèrent un bruit SEO important
- La détection repose uniquement sur le titre/lien (pas d'analyse complète de page)
- La détection de nom d'utilisateur est indirecte (pas de validation via API)
- Pas encore de corrélation ou de clustering automatique
Feuille de route
- Module OSINT par e-mail
- Moteur de corrélation (croisement téléphone / nom d'utilisateur / e-mail)
- Détection d'identités réutilisées entre profils
- Détection de motifs (agence / comportement multi-profil)
- Export vers CSV / Excel
- Récupération facultative de pages complètes pour une validation plus approfondie
- Interface en ligne de commande (utilisation en mode outil)
Remarques
Ce projet fait partie d'un flux de travail OSINT plus vaste axé sur la corrélation des données plutôt que sur la simple collecte.
L'objectif est de transformer les résultats de recherche bruts en renseignements structurés et exploitables, permettant la détection de motifs sur plusieurs plateformes.