/social-analyzer

API, CLI & Web App for analyzing & finding a person profile across 300+ social media websites (Detections are updated regularly)

Primary LanguageJavaScriptGNU Affero General Public License v3.0AGPL-3.0

Generic badge Generic badge Generic badge Generic badge Generic badge Generic badge Generic badge Generic badge Generic badge Generic badge Generic badge Generic badge Generic badge Generic badge

API, CLI & Web App for analyzing & finding a person profile across +300 social media websites. It includes different string analysis and detection modules, you can choose which combination of 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 project is currently used by some law enforcement agencies in countries where resources are limited.

The results from the analysis could help in investigating profiles related to suspicious or malicious activities such as cyberbullying, cybergrooming, cyberstalking, and spreading misinformation

Make sure to download this tool from GitHub - (ONLY) ⚠️
All Pull Requests are welcomed!

Updates

  • API, CLIs & Web App produce:
    • [Detected] -> 0 to 100 (No-Maybe-Yes)
    • [Unknown] -> Detection did not meet the requirement
    • [Failed] -> Profile website did not respond

Security Testing

-------------------------------------              ---------------------------------
|        Security Testing           |              |        Social-Analyzer        |
-------------------------------------              ---------------------------------
|   Passive Information Gathering   |     <-->     |   Find Social Media Profiles  |
|                                   |              |                               |
|    Active Information Gathering   |     <-->     |    Post Analysis Activities   |
-------------------------------------              ---------------------------------

Find Profile WEB APP (Fast)

Find Profile WEB APP (Slow)

Profile images will not be blurred. If you want them to be blurred, turn that option on

(New) Find Profile CLI (Fast)

Features

  • String & name analysis
  • Find profile using multiple techniques (HTTPS library & Webdriver)
  • Multi layers detections (OCR, normal, advanced & special)
  • 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
  • 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
  • Wiki

Special Detections

Install and run as web app (Linux + NodeJS + NPM + Firefox)

sudo add-apt-repository ppa:mozillateam/ppa
sudo apt-get update
sudo apt-get install -y firefox-esr tesseract-ocr git
git clone https://github.com/qeeqbox/social-analyzer.git
cd social-analyzer
npm install lodash
npm install
npm start

Install and run as web app (Windows + NodeJS + NPM + Firefox)

Download & Install firfox esr (Extended Support Release) from https://www.mozilla.org/en-US/firefox/enterprise/#download
Download & Install https://nodejs.org/en/download/
Download & Extract https://github.com/qeeqbox/social-analyzer/archive/main.zip
cd social-analyzer
npm install lodash
npm install
npm start

Install and run as CLI (Linux + NodeJS + NPM + Firefox)

sudo add-apt-repository ppa:mozillateam/ppa
sudo apt-get update
sudo apt-get install -y firefox-esr tesseract-ocr git
git clone https://github.com/qeeqbox/social-analyzer.git
cd social-analyzer
npm install lodash
npm install
# If you want to list all websites use node app.js --cli --list
# Remember the following runs as FindUserProfilesFast
# You can also scan all websites using --websites "all"
node app.js --cli --mode "fast" --username "johndoe" --websites "youtube pinterest tumblr" --output "pretty"

Install and run as CLI (Linux + Python3 + NPM + Firefox)

sudo add-apt-repository ppa:mozillateam/ppa
sudo apt-get update
sudo apt-get install -y firefox-esr tesseract-ocr git
git clone https://github.com/qeeqbox/social-analyzer.git
cd social-analyzer
pip3 install lxml BeautifulSoup4 tld pygments langdetect
# If you want to list all websites use python3 app.py --cli --list
# Remember the following runs as FindUserProfilesFast
# You can also scan all websites using --websites "all"
python3 app.py --cli --mode "fast" --username "johndoe" --websites "youtube pinterest tumblr" --output "pretty"

Install and run as web app with a grid (docker-compose)

git clone https://github.com/qeeqbox/social-analyzer.git
cd social-analyzer
docker-compose -f docker-compose.yml up --build

Install and run as web app (docker)

git clone https://github.com/qeeqbox/social-analyzer.git
cd social-analyzer
docker build -t social-analyzer . && docker run -p 9005:9005 -it social-analyzer

Running Issues

Make sure to update to the latest nodejs and npm

Closing the app by port number

sudo kill -9 $(sudo lsof -t -i:9005)

Goals

  • Adding the generic websites detections (These need some reviewing, but I will try to add them in 2021)

Resources

  • 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!

Disclaimer\Notes

  • This tool meant to be used locally (It does not have any type of Access Control)
  • If you want your website to be excluded from this project, please reach out

Contact

Generic badge