Social Analyzer - API, CLI & Web App for analyzing & finding a person's profile across +1000 social media \ websites. It includes different analysis and detection modules, and you can choose which modules to use during the investigation process.
The detection modules utilize a rating mechanism based on different detection techniques, which produces a rate value that starts from 0 to 100 (No-Maybe-Yes). This module intended to have fewer false positives, and it's documented in this Wiki link.
The analysis and public extracted information from this OSINT tool could help in investigating profiles related to suspicious or malicious activities such as cyberbullying, cybergrooming, cyberstalking, and spreading misinformation.
Social Analyzer is in a league of its own and is a very impressive tool that I thoroughly recommend for Digital Investigators and OSINT practitioners - by Joseph Jones, Founder of Strategy Nord, Unita Insight and OS2INT
This project is "currently used by some law enforcement agencies in countries where resources are limited".
Websites and applications that enable users to create and share content or to participate in social networking - Oxford Dictionary
Standard localhost WEB APP URL: http://0.0.0.0:9005/app.html
- String & name analysis (Permutations and Combinations)
- Find a profile using multiple techniques (HTTPS library & Webdriver)
- Multi profile search (Used for correlation - any combination separated with,)
- Multilayers detections (OCR, normal, advanced & special)
- Visualized profile information using Ixora (Metadata & Patterns)
- Metadata & Patterns extraction (Added from Qeeqbox OSINT project)
- Force-directed Graph for Metadata (Needs ExtractPatterns)
- Search by top-ranking or by country (Alexa Ranking)
- Search by type (adult, music etc.. - automated websites stats)
- Profiles stats and static info (Category country)
- Cross Metadata stats (Added from Qeeqbox OSINT project)
- Search engine lookup (Google API - optional)
- Custom search queries (Google API & DuckDuckGo API - optional)
- Profile screenshot, title, info, and website description
- Find name origins, name similarity & common words by language
- Find possible profile\person age (Limited analysis)
- Custom user-agent, proxy, timeout & implicit wait
- Python CLI & NodeJS CLI (limited to FindUserProfilesFast option)
- Grid option for faster checking (limited to docker-compose)
- Dump logs to folder or terminal (prettified)
- Adjust finding\getting profile workers (default 15)
- Re-checking option for failed profiles
- Filter profiles by good, maybe, and bad
- Save the analysis as JSON file
- Simplified web interface and CLI
- And, more!!
- Facebook (Phone number, name, or profile name)
- Gmail ([email protected])
- Google ([email protected])
Install & Run
Linux (As Node WebApp)
sudo apt-get update #Depedning on your Linux distro, you may or may not need these 2 lines sudo DEBIAN_FRONTEND=noninteractive apt-get install -y software-properties-common sudo add-apt-repository ppa:mozillateam/ppa -y sudo apt-get install -y firefox-esr tesseract-ocr git nodejs npm git clone https://github.com/qeeqbox/social-analyzer.git cd social-analyzer npm ci npm start
Linux (As Node CLI)
sudo apt-get update #Depedning on your Linux distro, you may or may not need these 2 lines sudo DEBIAN_FRONTEND=noninteractive apt-get install -y software-properties-common sudo add-apt-repository ppa:mozillateam/ppa -y sudo apt-get install -y firefox-esr tesseract-ocr git nodejs npm git clone https://github.com/qeeqbox/social-analyzer.git cd social-analyzer nodejs app.js --username "johndoe" #or nodejs app.js --username "johndoe,janedoe" --metadata --top 100 #or nodejs app.js --username "johndoe" --type "adult"
Linux (As python package)
sudo apt-get update sudo apt-get install python3 python3-pip pip3 install social-analyzer python3 -m social-analyzer --username "johndoe" #or python3 -m social-analyzer --username "johndoe" --metadata --top 100 #or python3 -m social-analyzer --username "johndoe" --type "adult"
Linux (As python script)
sudo apt-get update sudo apt-get install git python3 python3-pip git clone https://github.com/qeeqbox/social-analyzer cd social-analyzer pip3 install –r requirements.txt python3 app.py --username "janedoe" #or python3 app.py --username "johndoe" --metadata --top 100 #or python3 app.py --username "johndoe" --type "adult"
Importing as an object (python)
#E.g. #1 from importlib import import_module SocialAnalyzer = import_module("social-analyzer").SocialAnalyzer(silent=True) results = SocialAnalyzer.run_as_object(username="johndoe",silent=True) print(results) #E.g. #2 from importlib import import_module SocialAnalyzer = import_module("social-analyzer").SocialAnalyzer(silent=True) results = SocialAnalyzer.run_as_object(username="johndoe,janedoe",silent=True,output="json",filter="good",metadata=False,timeout=10, profiles="detected") print(results)
Linux, Windows, MacOS, Raspberry pi.
- check this wiki for all possible installation methods
- check this wiki for integrating social-analyzer with your OSINT tools, feeds, etc...
Required Arguments: --username E.g. johndoe, john_doe or johndoe9999 Optional Arguments: --websites A website or websites separated by space E.g. youtube, tiktokor tumblr --mode Analysis mode E.g.fast -> FindUserProfilesFast, slow -> FindUserProfilesSlow or special -> FindUserProfilesSpecial --output Show the output in the following format: json -> json outputfor integration or pretty -> prettify the output --options Show the following when a profile is found: link, rate, titleor text --method find -> show detected profiles, get -> show all profiles regardless detected or not, all -> combine find & get --filter Filter detected profiles by good, maybe or bad, you can do combine them with comma (good,bad) or use all --profiles Filter profiles by detected, unknown or failed, you can do combine them with comma (detected,failed) or use all --countries select websites by country or countries separated by space as: us br ru --type Select websites by type (Adult, Music etc) --top select top websites as 10, 50 etc...[--websites is not needed] --extract Extract profiles, urls & patterns if possible --metadata Extract metadata if possible (pypi QeeqBox OSINT) --trim Trim long strings --gui Reserved for a gui (Not implemented) --cli Reserved for a cli (Not needed) Listing websites & detections: --list List all available websites Setting: --headers Headers as dict --logs_dir Change logs directory --timeout Change timeout between each request --silent Disable output to screen
- DuckDuckGo API, Google API, NodeJS, bootstrap, selectize, jQuery, Wikipedia, font-awesome, selenium-webdriver & tesseract.js
- Let me know if I missed a reference or resource!
- INVESTIGATING USERNAMES WITH SOCIAL ANALYZER
- 5 Advance Open-Source Intelligence (OSINT) Tools
- 5 Open-Source Intelligence (OSINT) GitHub Repositories For Every Security Analyst (Cyber Security)
- You can use social-analyzer in the BlackArch penetration testing distribution by installing blackarch-social
- Download this project from GitHub and treat it as a security project
- If you want your website to be excluded from this project list, please reach out to me
- This tool is meant to be used locally, not as a service (It does not have any Access Control)
- For issues related to modules that end with -private or under the private group , reach out directly to me (do not open an issue on GitHub)
- Hakin9 is a monthly magazine dedicated to hacking and cybersecurity. In every edition, we try to focus on different approaches to show various techniques - defensive and offensive. This knowledge will help you understand how most popular attacks are performed and how to protect your data from them. Our tutorials, case studies and online courses will prepare you for the upcoming, potential threats in the cyber security world. We collaborate with many individuals and universities and public institutions, but also with companies such as Xento Systems, CATO Networks, EY, CIPHER Intelligence LAB, redBorder, TSG, and others.
- Blog2022.12.13What are the Common Security Weaknesses of Cloud Based Networks?
- Blog2022.10.12Vulnerability management with Wazuh open source XDR
- Blog2022.08.29Deception Technologies: Improving Incident Detection and Response by Alex Vakulov
- Blog2022.08.25Exploring the Heightened Importance of Cybersecurity in Mobile App Development by Jeff Kalwerisky