WhatsMyName
This repository has the JSON file required to perform user enumeration on various websites.
Top Related Projects
Hunt down social media accounts by username across social networks
🕵️ ♂️ Collect a dossier on a person by username from thousands of sites
Stalk your Friends. Find their Instagram, FB and Twitter Profiles using Image Recognition and Reverse Image Search.
API, CLI, and Web App for analyzing and finding a person's profile in 1000 social media \ websites
Snoop — инструмент разведки на основе открытых данных (OSINT world)
holehe allows you to check if the mail is used on different sites like twitter, instagram and will retrieve information on sites with the forgotten password function.
Quick Overview
WhatsMyName is an open-source intelligence (OSINT) tool designed to help users discover username usage across various online platforms. It provides a comprehensive database of web sites and services, allowing investigators to search for specific usernames and identify where they are being used across the internet.
Pros
- Extensive database of web sites and services for username searches
- Regularly updated with new platforms and services
- Offers both a web interface and command-line tool for flexibility
- Supports integration with other OSINT tools and workflows
Cons
- May produce false positives due to common usernames
- Some platforms may block or rate-limit requests, affecting search results
- Requires careful interpretation of results to avoid privacy violations
- Limited to publicly accessible information, may miss private or restricted accounts
Getting Started
To use WhatsMyName, follow these steps:
-
Clone the repository:
git clone https://github.com/WebBreacher/WhatsMyName.git
-
Install required dependencies:
pip install -r requirements.txt
-
Run the command-line tool:
python3 whats_my_name.py -u <username>
Replace <username>
with the username you want to search for. The tool will then search across various platforms and display the results.
For more advanced usage and options, refer to the project's documentation on GitHub.
Competitor Comparisons
Hunt down social media accounts by username across social networks
Pros of sherlock
- Supports a larger number of sites and platforms (over 300)
- More actively maintained with frequent updates
- Includes a command-line interface for easier usage
Cons of sherlock
- May produce more false positives due to its broader scope
- Requires more dependencies and setup compared to WhatsMyName
- Can be slower when searching across many platforms simultaneously
Code Comparison
WhatsMyName:
def check_site(site, username):
url = site['uri'].format(account=username)
response = requests.get(url, headers=headers)
if response.status_code == 200:
print(f"[+] {site['name']}: {url}")
sherlock:
def sherlock(username, site_data, timeout=60):
results = {}
for site in site_data:
url = site['url'].format(username=username)
response = request(url, timeout=timeout)
if response and response.status_code == 200:
results[site['name']] = url
return results
Both projects aim to find usernames across various online platforms, but sherlock offers a more comprehensive search with a larger database of sites. WhatsMyName is simpler and may be easier to integrate into other projects, while sherlock provides a more feature-rich standalone tool for username searches.
🕵️♂️ Collect a dossier on a person by username from thousands of sites
Pros of maigret
- More comprehensive: Supports over 2000 sites compared to WhatsMyName's ~350
- Advanced features: Includes proxy support, detailed output formats, and recursive search
- Active development: More frequent updates and contributions
Cons of maigret
- Higher complexity: Requires more setup and configuration
- Longer execution time: Due to the larger number of sites checked
- Steeper learning curve: More options and features may be overwhelming for beginners
Code comparison
maigret:
async def main():
queries = [
QueryData(username, site)
for site in sites
for username in usernames
]
results = await run_queries(queries)
WhatsMyName:
def check_site(site, username):
url = site['uri_check'].replace('{account}', username)
response = requests.get(url)
return response.status_code == 200
Both projects aim to find usernames across various websites, but maigret offers a more comprehensive and feature-rich approach, while WhatsMyName provides a simpler, more straightforward implementation. maigret's asynchronous design allows for faster execution when checking multiple sites, whereas WhatsMyName's synchronous approach is easier to understand and modify.
Stalk your Friends. Find their Instagram, FB and Twitter Profiles using Image Recognition and Reverse Image Search.
Pros of EagleEye
- More comprehensive facial recognition capabilities
- Supports multiple social media platforms for image searching
- Provides detailed output with location data and metadata analysis
Cons of EagleEye
- More complex setup and dependencies
- Potentially higher false positive rate due to facial recognition limitations
- May raise more privacy concerns due to its extensive search capabilities
Code Comparison
EagleEye:
def get_social_media_profiles(self):
for website in self.websites:
if website.rstrip() in self.site_data:
self.site_data[website.rstrip()](self.first_name, self.last_name)
WhatsMyName:
def check_site(site, username):
url = site['uri'].format(account=username)
response = requests.get(url, headers=headers, timeout=timeout)
if response.status_code == int(site['e_code']):
return True
return False
The EagleEye code snippet shows a method for searching multiple social media profiles, while the WhatsMyName code focuses on checking a single site for username availability. EagleEye's approach is more comprehensive but potentially slower, while WhatsMyName's is simpler and more focused on username enumeration.
API, CLI, and Web App for analyzing and finding a person's profile in 1000 social media \ websites
Pros of social-analyzer
- More comprehensive analysis with 350+ platforms supported
- Provides detailed profile information and metadata
- Offers both CLI and web interface options
Cons of social-analyzer
- More complex setup and dependencies
- Slower execution due to broader scope
- May produce more false positives
Code Comparison
WhatsMyName:
def check_site(site, username):
url = site['uri'].format(account=username)
response = requests.get(url, headers=headers, timeout=timeout)
if response.status_code == site['e_code']:
return True
return False
social-analyzer:
def find_username_normal(username):
for site in sites:
url = site['url'].format(username=username)
response = requests.get(url, headers=headers, timeout=timeout)
if site['check_type'] == 'status_code':
if response.status_code == site['check_value']:
return True
return False
Both projects aim to find social media profiles for a given username, but social-analyzer offers a more extensive analysis across a wider range of platforms. WhatsMyName is simpler and faster, focusing on quick username checks. The code snippets show similar approaches to checking sites, with social-analyzer having a more flexible checking mechanism. Overall, the choice between the two depends on the depth of analysis required and the user's technical expertise.
Snoop — инструмент разведки на основе открытых данных (OSINT world)
Pros of snoop
- More comprehensive search capabilities across multiple platforms
- Actively maintained with frequent updates
- Includes additional features like data visualization and reporting
Cons of snoop
- More complex setup and usage compared to WhatsMyName
- Requires more system resources due to its extensive functionality
- May have a steeper learning curve for new users
Code Comparison
WhatsMyName:
def check_site(site, username):
url = site['uri'].format(account=username)
response = requests.get(url, headers=headers, timeout=timeout)
if response.status_code == 200:
print(f"[+] {site['name']}: {url}")
snoop:
def req_get(url):
try:
response = requests.get(url, headers=headers, timeout=timeout)
if response.status_code == 200:
return response
except requests.exceptions.RequestException:
pass
return None
Both projects use similar approaches for making HTTP requests, but snoop's implementation includes more robust error handling and flexibility in its request function.
holehe allows you to check if the mail is used on different sites like twitter, instagram and will retrieve information on sites with the forgotten password function.
Pros of holehe
- Focuses specifically on email address checking across multiple sites
- Provides more detailed output, including account creation dates and other metadata
- Faster execution due to asynchronous requests
Cons of holehe
- Limited to email-based searches only
- Smaller number of supported sites compared to WhatsMyName
- Less frequently updated
Code Comparison
holehe:
async def instagram(email):
try:
async with aiohttp.ClientSession() as session:
async with session.get("https://www.instagram.com/accounts/web_create_ajax/attempt/", timeout=10) as response:
if response.status == 200:
return {"exists": True, "email_recovery": None}
except Exception:
return {"exists": False, "email_recovery": None}
WhatsMyName:
def check_username(username):
for site in sites:
url = site['uri_check'].format(username=username)
response = requests.get(url)
if response.status_code == 200:
print(f"[+] {site['name']}: {url}")
else:
print(f"[-] {site['name']}: Not found")
Both projects aim to discover online presence, but holehe focuses on email-based searches with more detailed results, while WhatsMyName offers broader username searches across a larger number of platforms. holehe uses asynchronous requests for faster execution, whereas WhatsMyName employs a simpler synchronous approach. WhatsMyName's broader scope and more frequent updates make it more versatile, but holehe provides deeper insights for email-specific searches.
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
WhatsMyName
What is WhatsMyName? It is a project that Micah "WebBreacher" Hoffman created in 2015 with the goal of discovering if usernames were used on a given website. He was frustrated with the false positives that were present in the username checkers of that time and so he made his own. Fast forward to today and many people have helped this open-source project evolve into what it is today.
If you are an OSINT person that has come here to run the tool, well, you are probably a bit disappointed right now. In May 2023, we decided to remove all checker scripts from the project and just focus on the project's core; its data file (wmn-dat.json
).
So, we will keep finding sites and adding them and you can feel free to try any of the checker sites and scripts below that use our data.
How Does It Work?
WhatsMyName (WMN) consists of a JSON file with detections in it. Submissions from people all over the world are included. When a request is made to one of those sites from a tool like the ones in the next section, the server replies with data that will match one of our detections. It'll tell the checker script whether there is a valid user account with the name we specified on their site or not.
For a site to be included in WMN it has to:
- Be accessible. We cannot check sites behind paywalls or user authentication.
- Put the username in the URL. If the URL to view a user's profile does not have that username in it, this tool won't work.
- Not modify the username in the URL. URLs that have added user ID numbers to the username will not work in WMN. Also, sites that take your username and map it to a user ID number and then put that in the URL will not work.
Tools/Web Sites Using WhatsMyName
- https://whatsmyname.app/ - Chris Poulter created this site which draws the project's JSON file into an easy to use web interface.
- Filters for category and in search results.
- Exports to CSV and other formats.
- Pulls the latest version of the project's JSON file when run.
- Submit a username in the URL using
https://whatsmyname.app/?q=USERNAME
like https://whatsmyname.app/?q=john
- Blackbird uses the Whats My Name list in its search.
- K2OSINT Bookmarklet - Bookmarklet that lets you enter a username in a popup and then opens a new tab with the WMN results.
- LinkScope uses this in the Whats My Name resolution under the Online Identity category.
- Maltego WhatsMyName Transforms - Maltego Local Transforms that leverage the JSON file and check for usernames in real time.
- Reveal My Name is created by @yooper and is the Python checker tool that was bundled with this project.
- sn0int downloads and uses the JSON file in the kpcyrd/whatsmyname module, see https://twitter.com/sn0int/status/1228046880459907073 for details and instructions.
- Spiderfoot uses this in the sfp_account module. There is also this video showing how to use this project using the Spiderfoot Command Line Interface (CLI).
- WhatsMyName-Python Whats My Name simple Python script made by @C3n7ral051nt4g3ncy
- WMN_screenshooter a helper script that uses Selenium to try and grab screenshots of identified profile pages.
- WhatsMyName-Client a simple Python script with 'request headers' and 'POST requests' support made by @grabowskiadrian. The script also allows you to test the configuration of the wmn-data.json file.
Content
- The https://github.com/WebBreacher/WhatsMyName/wiki/Problem-Removed-Sites page has websites that we have had in the project and are currently not working for some reason. We will retest those sites (in the future) and try to find detections.
- If you would like to help with detections, we are happy to accept them via GitHub pull request or you can create an issue with the details of the site.
- Want to suggest a site to be added? Use this form.
Format
See CONTRIBUTING
Social Media
Come follow us for updates. We are on:
- Mastodon at https://infosec.exchange/@whatsmyname
License
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.
Top Related Projects
Hunt down social media accounts by username across social networks
🕵️♂️ Collect a dossier on a person by username from thousands of sites
Stalk your Friends. Find their Instagram, FB and Twitter Profiles using Image Recognition and Reverse Image Search.
API, CLI, and Web App for analyzing and finding a person's profile in 1000 social media \ websites
Snoop — инструмент разведки на основе открытых данных (OSINT world)
holehe allows you to check if the mail is used on different sites like twitter, instagram and will retrieve information on sites with the forgotten password function.
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot