22/12/2024

Cybersécurité

Recherchez tous les comptes correspondants à un pseudo avec Sherlock

I. Présentation

Si je vous dis "Sherlock", vous allez me répondre "Holmes". Et bien, on pourrait dire que l'outil "Sherlock" aurait pu servir au célèbre détective privé Sherlock Holmes si ses histoires avaient eu lieu à l'époque d'Internet et des réseaux sociaux.

Sherlock est un outil développé en Python qui va analyser de nombreux sites Internet à la recherche d'un pseudonyme spécifique. Autrement dit, vous précisez un pseudonyme et il va trouver tous les comptes correspondants à ce pseudo sur un ensemble de sites (323 sites à l'heure actuelle) : GitHub, Spotify, Twitter, Pinterest, Gravatar, Facebook, Reddit, Mastodon, WordPress.org, JeuxVideo.com, Bitwarden Forum, Flickr, Nextcloud Forum, TikTok, VirusTotal, Wikipédia, Steam, etc.

C'est un outil à classer directement dans la catégorie "OSINT" (Open Source Intelligence) puisqu'il s'appuie uniquement sur des informations accessibles publiquement.

Pourquoi utiliser Sherlock ou un outil similaire ? Je vois deux raisons pour lesquelles on peut souhaiter utiliser cet outil :

  • Surveiller l'utilisation d'une marque, de son nom, de son pseudo

En recherchant le nom de votre site Web, de votre marque, votre pseudo ou encore votre nom, vous pouvez identifier les faux comptes éventuels qui utilisent vos informations. On parlera alors de cybersquattage. Même si vous n'êtes peut-être pas le seul à utiliser votre pseudonyme et qu'il y a peut-être d'autres personnes qui ont le même nom et le même prénom que vous, cette recherche automatisée avec Sherlock est intéressante.

  • Préparer une attaque informatique ciblée

Afin de préparer une cyberattaque, un attaquant peut avoir besoin de Sherlock dans sa trousse d'outils notamment pour se renseigner sur sa cible. Cela peut également donner des indications sur les solutions utilisées au sein de l'entreprise de la cible : si l'on sait que l'utilisateur avec le pseudo "hello123" est l'administrateur système de l'entreprise XYZ et que l'on voit qu'il a un compte sur le forum de NextCloud, cela peut vouloir dire qu'il utilise NextCloud dans son entreprise (ou sur son NAS à la maison). Une information qui peut avoir de l'importance.

Avec Sherlock, on se rend compte assez rapidement que pour rester furtif sur Internet et essayer de respecter au maximum sa vie privée, il vaut mieux diversifier les pseudos utilisés sur les différents sites. Sinon, on peut réussir à collecter des informations au sujet d'un individu à partir de différentes sources.

Le projet Sherlock est sous licence MIT et il est disponible sur GitHub à cette adresse : GitHub - Sherlock

Note : pour la suite de ce tutoriel, je vais utiliser Kali Linux 2021.4 mais vous pouvez utiliser une autre distribution.

II. Installation de Sherlock

Afin d'utiliser Sherlock sur notre machine, nous allons cloner le projet avec Git. Si besoin, vous pouvez installer Git avec la commande suivante :

sudo apt-get update
sudo apt-get install -y git

Une fois que c'est fait, je vous invite à cloner Sherlock :

git clone https://github.com/sherlock-project/sherlock.git
Cloner le projet Sherlock depuis Git
Cloner le projet Sherlock depuis Git

Vous allez obtenir un répertoire nommé "sherlock" au sein de votre dossier actuel. Nous allons nous déplacer dans ce dossier :

cd sherlock/

À l'aide de Python et du gestionnaire de paquets Pip, nous allons installer Sherlock (et ses prérequis). Avant cela, vous devez installer Python 3 et Pip sur votre machine, si ce n'est pas déjà fait. Voici les commandes à exécuter :

sudo apt-get install -y python3 pip

Une fois que c'est fait, on va déclencher l'installation avec cette commande :

python3 -m pip install -r requirements.txt
Installation de Sherlock
Installation de Sherlock

Voilà, nous pouvons passer à l'utilisation de Sherlock.

III. Utilisation de Sherlock

Commençons par afficher l'aide de Sherlock. Pour cela, il suffit d'exécuter la commande suivante :

python3 sherlock --help
Afficher l'aide de l'outil Sherlock
Afficher l'aide de l'outil Sherlock

Pour utiliser Sherlock de façon simple, il n'y a pas trop à chercher puisqu'il suffit de préciser le pseudo à rechercher. Par exemple, si l'on imagine que l'on souhaite rechercher le pseudo "florian", on exécute :

python3 sherlock florian

Le script va travailler pour nous et l'analyse va durer plusieurs minutes. Soyez patient si vous désirez un résultat complet. Voici un exemple pour le pseudo "florian" qui est bien trop générique pour être précis mais c'est un exemple (ce n'est pas mon pseudo, je tiens à le préciser, ahah).

Note : l'option --tor vous permet d'effectuer la recherche en utilisant le réseau Tor mais cela nécessite que Tor soit installé sur votre machine.

Au final, on obtient une liste des sites pour lesquels Sherlock a trouvé une correspondance et à chaque fois il y a le lien vers le profil.

Recherche d'un pseudo avec Sherlock
Recherche d'un pseudo avec Sherlock

Si vous souhaitez rechercher plusieurs pseudos, vous pouvez les ajouter les uns à la suite des autres, par exemple :

python3 sherlock florian1 florian2

Sachez qu'en plus de la sortie dans la console, un fichier TXT par pseudo sera créé dans le dossier de "Sherlock", ce qui vous permet de consulter les résultats ultérieurement.

Pour finir, nous allons voir quelques options de l'outil Sherlock. Pour réaliser un export CSV plutôt qu'au format TXT, il faut ajouter cette option :

python3 sherlock florian --csv

Vous allez obtenir un fichier CSV avec le format suivant :

username,name,url_main,url_user,exists,http_status,response_time_s
florian,WordPress,https://wordpress.com,https://florian.wordpress.com/,Claimed,200,0.363991595000698

Si vous souhaitez afficher toute la liste des sites sur lesquels Sherlock a effectué la recherche, y compris les sites où il n'a rien trouvé, vous devez ajouter l'option suivante :

python3 sherlock florian --print-all

Enfin, pour effectuer une recherche uniquement sur un site, vous pouvez utiliser l'option "--site" de cette façon :

python3 sherlock florian --site WordPress

Le résultat retourné correspondra uniquement à ce site, de quoi faire une requête ciblée rapidement. La liste des sites est accessible dans le fichier "sites.md" situé dans le répertoire de Sherlock.

Alors, dites-moi tout, qui va effectuer une recherche sur son pseudo ou son nom ?

author avatar
Florian BURNEL Co-founder of IT-Connect
Ingénieur système et réseau, cofondateur d'IT-Connect et Microsoft MVP "Cloud and Datacenter Management". Je souhaite partager mon expérience et mes découvertes au travers de mes articles. Généraliste avec une attirance particulière pour les solutions Microsoft et le scripting. Bonne lecture.
Partagez cet article Partager sur Twitter Partager sur Facebook Partager sur Linkedin Envoyer par mail

4 commentaires sur “Recherchez tous les comptes correspondants à un pseudo avec Sherlock

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.