An open API service indexing awesome lists of open source software.

https://github.com/saadasif-nu/deepphish

DeepPhish is a web-based phishing detection system that helps users identify suspicious URLs and emails. It uses Machine Learning and Natural Language Processing (NLP) techniques.
https://github.com/saadasif-nu/deepphish

expressjs flask lemmatization machine-learning-algorithms mongodb multinomial-naive-bayes natural-language-processing nodejs python3 reactjs tf-idf vectorization xgboost

Last synced: 3 months ago
JSON representation

DeepPhish is a web-based phishing detection system that helps users identify suspicious URLs and emails. It uses Machine Learning and Natural Language Processing (NLP) techniques.

Awesome Lists containing this project

README

          

# ๐Ÿ” DeepPhish โ€” AI-Powered Phishing Detection System

DeepPhish is a web-based phishing detection system that helps users identify suspicious URLs and emails. It uses Machine Learning and Natural Language Processing (NLP) techniques to flag phishing threats and offers a simple, secure interface with user login and history tracking.

---

## ๐Ÿš€ Features

- ๐Ÿ”— **URL Phishing Detection** โ€” Analyze and classify URLs as safe or phishing.
- ๐Ÿ“ง **Email Body Analysis** โ€” Check raw email text to detect phishing patterns.
- ๐Ÿ‘ค **User Authentication** โ€” Register and log in to track your own detection history.
- ๐Ÿ•“ **Scan History** โ€” Review previous URL and email scans with results.

---

## ๐Ÿงฐ Tech Stack

### ๐Ÿ’ป Frontend
- React.js
- HTML5 / CSS3

### ๐Ÿ–ฅ Backend
- Node.js (Express)
- Python (Flask)

### ๐Ÿค– Machine Learning
- XGBoost (URL Detection)
- Multinomial Naive Bayes (Email Text Detection)
- CountVectorizer for NLP processing

### ๐Ÿ›ข Database
- MongoDB (Mongoose)

---

## ๐Ÿ“‚ Project Structure

```

DeepPhish -- Phishing Detection Application/
โ”œโ”€โ”€ Backend/ # Node.js API for user management and detection logic
โ”œโ”€โ”€ Backend/data # Pre-labeled phishing and safe URLs
โ”œโ”€โ”€ Python/DeepPhish--Python # Flask server with ML models
โ”œโ”€โ”€ React/front-end/ # React app for UI

````

---

### โš™๏ธ Setup Instructions
### GO into directory DeepPhish -- Phishing Detection Application

### 1. Start Backend (Node.js)
Make sure your MongoDB is running locally.
```bash
cd Backend
npm install #for first time
node app.js
```

Make sure `.env` file is configured correctly:

```env
PORT=####
MONGO_URI=mongodb+srv://:@cluster.mongodb.net/DeepPhish
```
for example i used it as
PORT=5001
MONGO_URI=mongodb://127.0.0.1:27017/phishingdb

### 2. Start Python ML Server (Flask)

```bash
cd ../Python
cd DeepPhish--Python
pip install -r requirements.txt
python app.py
```

### 3. Start Frontend (React)

```bash
cd ../React/front-end
npm install # only if node_modules was deleted
npm start
```

---

## ๐Ÿ”’ Signup / Login Info

### ๐Ÿ” Password Format

* Minimum 8 characters
* Must include one number and one special character
* Example: `Secure@123`

### โœ… Email Format

* Must be in standard format (e.g., `user@example.com`)

---

## ๐Ÿงช How to Use

1. **Signup/Login** to your account.
2. Navigate to:

* **Check URL** โ€” Enter a website link.
* **Check Email** โ€” Paste the email content/body.
3. The system will return:

* `Phishing` or `Safe`
4. Go to **View History** to see all previously scanned results.

---

## ๐Ÿงญ Future Scope

* SMS Phishing Detection
* Admin dashboard
* Chrome extension
* Real-time alert system

---

## ๐Ÿง‘โ€๐Ÿ’ป Author

**Saad Asif**
Final Year CS Student | Cybersecurity, AL, ML & Full Stack Enthusiast
LinkedIn: [https://www.linkedin.com/in/saadasif-nu/](https://www.linkedin.com/in/saadasif-nu/)

**Muhammad Hammad**
Final Year CS Student | Cybersecurity, AL, ML & Full Stack Enthusiast
LinkedIn: [https://www.linkedin.com/in/muhammad-hammad-69aa36248/](https://www.linkedin.com/in/muhammad-hammad-69aa36248/)