Skip to content

PHISHr - A Cyber security utility for detecting malicious phishing URLs & Discovering Typosquatted Domains.

License

Notifications You must be signed in to change notification settings

deepeshdm/phishr

Repository files navigation

PHISHr 🎣🕵️

A Cybersecurity utility for detecting malicious phishing URLs using Machine Learning.

  • 🔒 URL Scanning : Instantly analyze URLs for potential threats and stay one step ahead of phishing attacks.
  • 🚨 Suspicious URL Reporting : Contribute to a safer online community by reporting suspicious URLs and helping others stay protected.
  • 🔍 Typosquatting Detection : Uncover those sneaky imposters with our clever feature that identifies similar-looking domains.

How does it work? 🤷‍♂️

This web app takes a URL as an input and detects potentially malicious URLs by performing thorough checks such as blacklist verification, SSL certificate presence, HTTPS usage, and AI prediction. It provides a score and flags for various checks conducted. The detection process involves several steps:

  • It checks if the URL is present in the top 1 million valid sites database.
  • It verifies if the URL is blacklisted in any of the 40 sources checked.
  • The app checks for the presence of an SSL certificate, ensuring secure communication.
  • The app validates against Google Safe Browsing and Norton Web Safe databases.
  • It checks if the URL is blacklisted in McAfee and Sucuri blacklists.
  • The app identifies temporary domains registered from unsecure sources.
  • It verifies if the URL is older than 3 months.
  • The app checks if the URL is blacklisted in local blacklists and IP sets.
  • It utilizes an AI model to predict the maliciousness of the URL.
  • The app checks if the URL is present in the URL reporting database.

To Run (Locally)

  1. Git clone the project repository on your local system
git clone https://github.com/deepeshdm/phishr.git
  1. Install dependencies in package.json
npm install
  1. Create a new Firebase project with Firestore and Google Authentication enabled. Replace the config in "src/db/firebase-config.js" with your own.
// ADD YOUR OWN FIREBASE CONFIG HERE
const firebaseConfig = {
  apiKey: "xxxxxxxxxxxxxxxxxxxxx",
  authDomain: "xxxxxxxxxxxxxxxxxxxxx",
  projectId: "xxxxxxxxxxxxxxxxxxxxxxx",
  storageBucket: "xxxxxxxxxxxxxxxxxxxxx",
  messagingSenderId: "xxxxxxxxxxxxxxxxxxxxx",
  appId: "xxxxxxxxxxxxxxxxxxxxxx"
};
  1. Deploy project on the local server
npm start
  • Checkout the REST API - here
  • Model Training Notebooks - here

Releases

No releases published

Packages

No packages published

Languages