Socialscan offers accurate and fast checks for email address and username usage on online platforms. Given an email address or username, socialscan returns whether it is available, taken or invalid on online platforms.
Features that differentiate socialscan from similar tools (e.g. knowem.com, Namechk, and Sherlock):
Also Read – HerShell : Multiplatform Reverse Shell Generator
The following platforms are currently supported:
Username | ||
---|---|---|
Supported | Supported | |
Supported | Supported | |
GitHub | Supported | Supported |
Tumblr | Supported | Supported |
Lastfm | Supported | Supported |
Snapchat | Supported | Not Supported |
GitLab | Supported | Not Supported |
Supported | Not Supported | |
Yahoo | Supported | Not Supported |
Not Supported | Supported | |
Spotify | Not Supported | Supported |
Background
Other similar tools check username availability by requesting the profile page of the username in question and based on information like the HTTP status code or error text on the requested page, determine whether a username is already taken.
This is a naive approach that fails in the following cases:
Therefore, these tools tend to come up with false positives and negatives.
This method of checking is also dependent on platforms having web-based profile pages and cannot be extended to email addresses.
Socialscan aims to plug these gaps by directly querying the registration servers of the platforms instead, retrieving the appropriate CSRF tokens, headers, and cookies.
> pip install socialscan
> git clone https://github.com/iojw/socialscan.git
> cd socialscan
> pip install.
Usage
usage: socialscan [list of usernames/email addresses to check]
optional arguments:
-h, --help show this help message and exit
--platforms [platform [platform ...]], -p [platform [platform ...]]
list of platforms to query (default: all platforms)
--view-by {platform,query}
view results sorted by platform or by query (default:
query)
--available-only, -a only print usernames/email addresses that are
available and not in use
--cache-tokens, -c cache tokens for platforms requiring more than one
HTTP request (Snapchat, GitHub, Instagram. Lastfm &
Tumblr), reducing total number of requests sent
--input input.txt, -i input.txt
file containg list of queries to execute
--proxy-list proxy_list.txt
file containing list of HTTP proxy servers to execute
queries with
--verbose, -v show query responses as they are received
--version show program's version number and exit
As a library
Socialscan can also be imported into existing code and used as a library.
v1.0.0 introduces the async method execute_queries
and the corresponding synchronous wrapper sync_execute_queries
that takes a list of queries and optional list of platforms and proxies, executing all queries concurrently. The method then returns a list of results in the same order.
from socialscan.util import Platforms, sync_execute_queries
queries = [“username1”, “email2@gmail.com”, “mail42@me.com”]
platforms = [Platforms.GITHUB, Platforms.LASTFM]
results = sync_execute_queries(queries, platforms)
for result in results:
print(f”{result.query} on {result.platform}: {result.message} (Success: {result.success}, Valid: {result.valid}, Available: {result.available})”)
Output:
username1 on GitHub: Username is already taken (Success: True, Valid: True, Available: False)
username1 on Lastfm: Sorry, this username isn’t available. (Success: True, Valid: True, Available: False)
email2@gmail.com on GitHub: Available (Success: True, Valid: True, Available: True)
email2@gmail.com on Lastfm: Sorry, that email address is already registered to another account. (Success: True, Valid: True, Available: False)
mail42@me.com on GitHub: Available (Success: True, Valid: True, Available: True)
mail42@me.com on Lastfm: Looking good! (Success: True, Valid: True, Available: True)
Text file input
For bulk queries with the –input option, place one username/email on each line in the .txt file:
username1
email2@mail.com
username3
shadow-rs is a Windows kernel rootkit written in Rust, demonstrating advanced techniques for kernel manipulation…
Extract and execute a PE embedded within a PNG file using an LNK file. The…
Embark on the journey of becoming a certified Red Team professional with our definitive guide.…
This repository contains proof of concept exploits for CVE-2024-5836 and CVE-2024-6778, which are vulnerabilities within…
This took me like 4 days (+2 days for an update), but I got it…
MaLDAPtive is a framework for LDAP SearchFilter parsing, obfuscation, deobfuscation and detection. Its foundation is…