Sherlock
Énumération de pseudonymes sur plus de 400 réseaux sociaux. Étant donné un pseudonyme, trouve toutes les plateformes où ce compte existe. Username enumeration across 400+ social networks. Given a username, finds all platforms where that account exists.
↗ https://github.com/sherlock-project/sherlockOverview
Sherlock hunts for a username across 400+ websites and social networks simultaneously. It identifies active accounts on platforms like Twitter, Instagram, GitHub, Reddit, TikTok, and hundreds more, making it a critical tool for social OSINT on individuals.
Basic Usage
Search for a single username
sherlock username
Search for multiple usernames
sherlock username1 username2 username3
Save results to a file (auto-named by username)
sherlock username --output results.txt
Save as CSV
sherlock username --csv
Save as XLSX
sherlock username --xlsx
Verbose output (show all checks, including 404s)
sherlock username --verbose
Filtering Results
Only show found accounts (no not-found)
sherlock username --print-found
Show all (including not found)
sherlock username --print-all
Specify site list (limit scope)
sherlock username --site github.com --site twitter.com
Skip NSFW sites
sherlock username --nsfw
Exclude sites from results
sherlock username --folderoutput /tmp/results/
Network Options
Use a proxy
sherlock username --proxy http://127.0.0.1:8080
Use Tor (requires Tor service running)
sherlock username --tor
Use a local Tor proxy
sherlock username --tor-proxy socks5://127.0.0.1:9050
Set timeout per request
sherlock username --timeout 10
Skip SSL verification
sherlock username --no-color
Bulk Username Searches
Process multiple usernames from a file
cat usernames.txt | xargs sherlock
Or use a for loop
while read u; do sherlock "$u" --csv -o "$u.csv"; done < usernames.txt
Output Analysis
# Found accounts are saved to: username.txt (by default)
# Format:
[+] GitHub: https://github.com/username
[+] Twitter: https://twitter.com/username
[+] Instagram: https://www.instagram.com/username/
...
Parse only URLs from output
sherlock username | grep "^\[+\]" | awk '{print $NF}'
Tips
- Cross-reference found profiles against each other — same username often means same person
- Check usernames derived from email addresses (e.g.,
john.doefromjohn.doe@company.com) - Common username variations: firstname, lastname, firstlast, f.last, first.last, firstlast123
- Combine with other OSINT tools: found GitHub → check repos for email leaks
Help / Man page
sherlock [options] username [username2 ...]
-v, --verbose Verbose output (show all sites)
--print-found Print only found results
--print-all Print all results
--csv Export results to CSV
--xlsx Export results to XLSX
-o, --output FILE Output file
--folderoutput DIR Output directory (for multiple users)
--site SITE Limit search to specific site
--proxy URL Use proxy
--tor Route through Tor
--timeout SECS Timeout (default: 60)
--no-color Disable colored output
--nsfw Include NSFW sites
Vue d’ensemble
Sherlock recherche un pseudonyme sur plus de 400 sites et réseaux sociaux simultanément. Il identifie les comptes actifs sur des plateformes comme Twitter, Instagram, GitHub, Reddit, TikTok, et des centaines d’autres, ce qui en fait un outil essentiel pour l’OSINT social sur des individus.
Utilisation de base
# Rechercher un seul pseudonyme
sherlock username
# Rechercher plusieurs pseudonymes
sherlock username1 username2 username3
# Sauvegarder les résultats dans un fichier (nommé automatiquement selon le pseudonyme)
sherlock username --output results.txt
# Sauvegarder en CSV
sherlock username --csv
# Sauvegarder en XLSX
sherlock username --xlsx
# Sortie verbeuse (afficher toutes les vérifications, y compris les 404)
sherlock username --verbose
Filtrage des résultats
# N'afficher que les comptes trouvés (pas les non-trouvés)
sherlock username --print-found
# Tout afficher (y compris les non-trouvés)
sherlock username --print-all
# Spécifier une liste de sites (limiter le périmètre)
sherlock username --site github.com --site twitter.com
# Ignorer les sites NSFW
sherlock username --nsfw
# Exclure des sites des résultats
sherlock username --folderoutput /tmp/results/
Options réseau
# Utiliser un proxy
sherlock username --proxy http://127.0.0.1:8080
# Utiliser Tor (nécessite que le service Tor tourne)
sherlock username --tor
# Utiliser un proxy Tor local
sherlock username --tor-proxy socks5://127.0.0.1:9050
# Définir le timeout par requête
sherlock username --timeout 10
# Désactiver la vérification SSL
sherlock username --no-color
Recherches en masse
# Traiter plusieurs pseudonymes depuis un fichier
cat usernames.txt | xargs sherlock
# Ou utiliser une boucle for
while read u; do sherlock "$u" --csv -o "$u.csv"; done < usernames.txt
Analyse de la sortie
# Les comptes trouvés sont sauvegardés dans : username.txt (par défaut)
# Format :
[+] GitHub: https://github.com/username
[+] Twitter: https://twitter.com/username
[+] Instagram: https://www.instagram.com/username/
...
# Extraire uniquement les URL de la sortie
sherlock username | grep "^\[+\]" | awk '{print $NF}'
Conseils
- Recouper les profils trouvés entre eux : un même pseudonyme correspond souvent à la même personne
- Vérifier les pseudonymes dérivés d’adresses e-mail (ex.
john.doedepuisjohn.doe@company.com) - Variantes de pseudonymes courantes : prénom, nom, prénomnom, p.nom, prenom.nom, prenomnom123
- Combiner avec d’autres outils OSINT : un GitHub trouvé → vérifier les dépôts pour des fuites d’e-mail
Aide / Page de manuel
sherlock [options] username [username2 ...]
-v, --verbose Verbose output (show all sites)
--print-found Print only found results
--print-all Print all results
--csv Export results to CSV
--xlsx Export results to XLSX
-o, --output FILE Output file
--folderoutput DIR Output directory (for multiple users)
--site SITE Limit search to specific site
--proxy URL Use proxy
--tor Route through Tor
--timeout SECS Timeout (default: 60)
--no-color Disable colored output
--nsfw Include NSFW sites