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/sherlock

Overview

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.doe from john.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.doe depuis john.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