Blog

Username search tools: what sherlock, maigret, naminter and socialscan each find

· OTInstaller

Four free username search tools side by side, from their manifests. What each takes, what it finds, what it needs, and when to pick it.

Four open-source username search tools on the registry look alike but answer different questions. sherlock checks 400+ sites and lists the accounts that exist. maigret can check 3,000+ sites and also collects the details those profiles expose. naminter works through the WhatsMyName site list with browser-like requests. socialscan asks a handful of major platforms and also takes an email address. None needs an API key, and each is a single ot run away.

What follows comes from each package’s manifest: what it declares it takes, finds and needs. There are no ratings or scores here. Each tool’s page shows whether it passed its nightly health check.

At a glance

  • sherlock takes a username, checks 400+ sites, and finds accounts and their URLs.
  • maigret takes a username, checks 3,000+ sites (the 500 most popular by default), and finds accounts, URLs and details about the person.
  • naminter takes a username, checks the sites on the WhatsMyName list, and finds accounts and their URLs.
  • socialscan takes a username or an email address, checks a handful of major platforms, and finds accounts.

sherlock, maigret and socialscan are Python packages from PyPI, which ot builds into a container of their own; naminter is a Docker image. The packages stop a run after 15 minutes (sherlock and naminter), 20 minutes (maigret) or 5 minutes (socialscan).

All four go online, and all four declare the same ethics flags: they don’t contact the person, don’t log in to any account, and return personal data, so handle the results under your legal basis.

sherlock: where the username exists

ot run osintverse-community/sherlock u:johndoe

Sherlock asks each of 400+ sites whether a profile with that name exists, giving each 20 seconds, and the package prints only the ones that do. Its output is a line per account, [+] GitHub: https://www.github.com/github, which ot turns into URL and domain entities. Pick it for a first sweep of where a handle is in use. --site GitHub checks one site. Installing it by hand goes wrong in a few familiar ways; the post on installing Sherlock covers them, and what its saved result looks like.

maigret: the accounts and what they say

ot run osintverse-community/maigret u:johndoe

Maigret knows 3,000+ sites and checks the 500 most popular by default; the top_sites input changes the number, and --site checks one. Besides accounts and URLs, its manifest declares a person output: it reads the profiles it finds for the details they expose. Pick it when you want more than a list of links, and allow for a longer run: the package gives it up to 20 minutes.

naminter: the WhatsMyName list

ot run osintverse-community/naminter u:johndoe --category coding

Naminter works through the WhatsMyName list of sites, sending requests that look like a browser’s. --category limits it to one WhatsMyName category, such as coding or social. It is the one Docker image of the four: its package installs the upstream release from PyPI together with the Pango libraries its PDF export needs, system libraries that pip can’t install for you. Pick it when you want WhatsMyName’s coverage of a username.

socialscan: a few platforms, an email too

ot run osintverse-community/socialscan --query johndoe
ot run osintverse-community/socialscan --query someone@example.com

Socialscan covers far fewer platforms than the others but uses their own availability checks, and its single query input takes a username or an email address. In our test run with an email address it answered eight platforms in under three seconds, two of them with a rate-limit error: an error means “ask again later”, not “no account”. Pick it to settle the question for the big platforms quickly, or when what you have is an email address.

Running more than one

You rarely need just one. These commands run several against the same username and save every result in the same shape:

ot playbook username-investigation u:johndoe
ot run --all u:johndoe
ot auto johndoe

The bundled username-investigation playbook runs sherlock and maigret, and offers to install them first. ot run --all runs every installed tool that takes a username, and ot auto guesses that johndoe is a username and does the same. Then ot extract sherlock collects what every saved sherlock run found, and ot diff sherlock johndoe shows what changed between the last two runs, which is useful when you check the same handle again a month later.

Other username tools on the registry

  • user-scanner checks 2,700+ sites for a username or an email address, and skips the checks that could send the account owner an email or alert.
  • social-analyzer finds profiles across 1,000+ websites and gives each one a confidence level of its own.
  • investigo checks which of hundreds of websites have an account with the username.
  • osgint looks up one GitHub user: profile, SSH and GPG keys, and the email addresses in their commits.
  • username-permutations works the other way round: it turns a person’s full name into likely usernames to search with the tools above, offline.

Every tool that takes a username is listed on one page, with what each finds and whether it needs a key. The username investigation guide walks through a whole case, from the first search to writing it up.

More posts · Changelog · This post as Markdown

Esc

Try

↑ ↓ to move↵ to open